Skip to content

Commit

Permalink
fix: throw more semantic UnknownAuthor on identity not found
Browse files Browse the repository at this point in the history
  • Loading branch information
mvayngrib committed Jan 4, 2018
1 parent 888d47d commit d1567fb
Show file tree
Hide file tree
Showing 6 changed files with 25 additions and 12 deletions.
2 changes: 1 addition & 1 deletion lib/bot/middleware/oniotmessage.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions lib/errors.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 11 additions & 5 deletions lib/identities.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion src/bot/middleware/oniotmessage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ export const createErrorHandler = (lambda, opts) => {
if (error instanceof Errors.TimeTravel) {
logMsg = 'rejecting message with lower timestamp than previous'
// @ts-ignore
} else if (error instanceof Errors.NotFound) {
} else if (error instanceof Errors.NotFound || error instanceof Errors.UnknownAuthor) {
logMsg = 'rejecting message, either sender or payload identity was not found'
// @ts-ignore
} else if (error instanceof Errors.InvalidMessageFormat) {
Expand Down
1 change: 1 addition & 0 deletions src/errors.ts
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,7 @@ const errors = {
NotFound: createError('NotFound'),
InvalidSignature: createError('InvalidSignature'),
InvalidAuthor: createError('InvalidAuthor'),
UnknownAuthor: createError('UnknownAuthor'),
InvalidVersion: createError('InvalidVersion'),
InvalidMessageFormat: createError('InvalidMessageFormat'),
PutFailed: createError('PutFailed'),
Expand Down
15 changes: 10 additions & 5 deletions src/identities.ts
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,15 @@ export default class Identities {

public metaByPub = async (pub:string) => {
this.logger.debug('get identity metadata by pub', pub)
return this.pubKeys.get({
Key: { pub },
ConsistentRead: true
})
try {
return await this.pubKeys.get({
Key: { pub },
ConsistentRead: true
})
} catch (err) {
Errors.ignore(err, Errors.NotFound)
throw new Errors.UnknownAuthor(`with pub: ${pub}`)
}
}

public byPub = async (pub:string):Promise<IIdentity> => {
Expand All @@ -60,7 +65,7 @@ export default class Identities {
error: err.stack
})

throw new NotFound('identity with pub: ' + pub)
throw new Errors.UnknownAuthor('with pub: ' + pub)
}
}

Expand Down

0 comments on commit d1567fb

Please sign in to comment.