From 2bc4a82ff35193aefec56eeb7634d1e9542cb61e Mon Sep 17 00:00:00 2001 From: Naor Biton Date: Wed, 10 Apr 2019 13:52:14 +0800 Subject: [PATCH] feat: removed "ready" sub handle usage to prevent retries on failure (#754) --- imports/api/base/rest-resource-factory.js | 2 -- imports/api/base/rest-resource-factory.test.js | 4 ++-- imports/api/case-field-values.js | 2 -- imports/api/case-notifications.js | 1 - imports/api/custom-users.js | 1 - imports/api/pending-invitations.js | 1 - 6 files changed, 2 insertions(+), 9 deletions(-) diff --git a/imports/api/base/rest-resource-factory.js b/imports/api/base/rest-resource-factory.js index cbd8360a..8f3df2ee 100644 --- a/imports/api/base/rest-resource-factory.js +++ b/imports/api/base/rest-resource-factory.js @@ -52,7 +52,6 @@ export default ({ collectionName, dataResolver, idResolver = defaultIdResolver } // Checking if the user is authenticated if (!subHandle.userId) { - subHandle.ready() subHandle.error(new Meteor.Error({ message: 'Authentication required' })) return false } @@ -101,7 +100,6 @@ export default ({ collectionName, dataResolver, idResolver = defaultIdResolver } in an error:`, err ) - subHandle.ready() subHandle.error(new Meteor.Error({ message: 'REST API error', origError: err })) }) subHandle.onStop(() => { diff --git a/imports/api/base/rest-resource-factory.test.js b/imports/api/base/rest-resource-factory.test.js index 0e5803ab..b74f2ccd 100644 --- a/imports/api/base/rest-resource-factory.test.js +++ b/imports/api/base/rest-resource-factory.test.js @@ -112,7 +112,7 @@ if (Meteor.isServer) { expect(context.added).to.have.been.calledThrice() expect(context.ready).to.have.been.calledOnce() }) - it('should use the "ready" and "error" triggers if an API error has occurred', (done) => { + it('should use the "error" trigger if an API error has occurred', (done) => { const context = { userId: 2132, error: sinon.spy(), @@ -125,7 +125,7 @@ if (Meteor.isServer) { publishFunc.call(context, 444) process.nextTick(() => { - expect(context.ready).to.have.been.calledOnce() + // expect(context.ready).to.have.been.calledOnce() expect(context.error).to.have.been.calledOnce() done() }) diff --git a/imports/api/case-field-values.js b/imports/api/case-field-values.js index 5729b3c7..f4547390 100644 --- a/imports/api/case-field-values.js +++ b/imports/api/case-field-values.js @@ -14,7 +14,6 @@ const clientLocalFieldMapping = Object.assign({}, caseClientFieldMapping, { bug_ if (Meteor.isServer) { Meteor.publish(`${collectionName}.fetchByName`, function (name) { if (!this.userId) { - this.ready() this.error(new Meteor.Error({ message: 'Authentication required' })) return false } @@ -28,7 +27,6 @@ if (Meteor.isServer) { this.ready() } catch (e) { logger.error('API error encountered', e, `${collectionName}.fetchByName`, this.userId) - this.ready() this.error(new Meteor.Error({ message: 'API Error' })) } }) diff --git a/imports/api/case-notifications.js b/imports/api/case-notifications.js index 735dca65..4c97965c 100644 --- a/imports/api/case-notifications.js +++ b/imports/api/case-notifications.js @@ -31,7 +31,6 @@ Meteor.methods({ if (Meteor.isServer) { Meteor.publish(`${collectionName}.myUpdates`, function () { if (!this.userId) { - this.ready() this.error(new Meteor.Error('Must be logged in first')) } return CaseNotifications.find({ diff --git a/imports/api/custom-users.js b/imports/api/custom-users.js index 7796ac3d..8e5b1fba 100644 --- a/imports/api/custom-users.js +++ b/imports/api/custom-users.js @@ -28,7 +28,6 @@ export const findOrCreateUser = email => { const verifyUserLogin = handle => { if (!handle.userId) { - handle.ready() handle.error(new Meteor.Error({ message: 'Authentication required' })) return false } diff --git a/imports/api/pending-invitations.js b/imports/api/pending-invitations.js index 9c7b6ec8..3e2df010 100644 --- a/imports/api/pending-invitations.js +++ b/imports/api/pending-invitations.js @@ -160,7 +160,6 @@ if (Meteor.isServer) { check(caseId, Number) if (!this.userId) { - this.ready() this.error('Unauthorized') return }