Skip to content

Commit

Permalink
chore: simplify errors
Browse files Browse the repository at this point in the history
  • Loading branch information
vasco-santos committed Aug 4, 2023
1 parent c833635 commit 9f365aa
Show file tree
Hide file tree
Showing 6 changed files with 40 additions and 13 deletions.
4 changes: 3 additions & 1 deletion packages/capabilities/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,9 @@ export interface AggregateAddSuccess {
piece?: PieceLink
}

export type AggregateAddFailure = AggregateAddParseFailure | AggregateAddFailureWithBadPiece
export type AggregateAddFailure =
| AggregateAddParseFailure
| AggregateAddFailureWithBadPiece

export interface AggregateAddParseFailure extends Ucanto.Failure {
reason: string
Expand Down
20 changes: 17 additions & 3 deletions packages/filecoin-api/src/errors.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,7 @@ export class StoreOperationFailed extends Server.Failure {
}
}

export const StoreNotFoundErrorName = /** @type {const} */ (
'StoreNotFound'
)
export const StoreNotFoundErrorName = /** @type {const} */ ('StoreNotFound')
export class StoreNotFound extends Server.Failure {
/**
* @param {string} message
Expand All @@ -54,6 +52,22 @@ export class StoreNotFound extends Server.Failure {
}
}

export const EncodeRecordErrorName = /** @type {const} */ ('EncodeRecordFailed')
export class EncodeRecordFailed extends Server.Failure {
/**
* @param {string} message
*/
constructor(message) {
super(message)
}
get reason() {
return this.message
}
get name() {
return EncodeRecordErrorName
}
}

export const DecodeBlockOperationErrorName = /** @type {const} */ (
'DecodeBlockOperationFailed'
)
Expand Down
17 changes: 14 additions & 3 deletions packages/filecoin-api/src/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,12 @@ export interface BrokerRecord {

// Errors

export type QueueAddError = QueueOperationError
export type StorePutError = StoreOperationError
export type StoreGetError = StoreOperationError
export type QueueAddError = QueueOperationError | EncodeRecordFailed
export type StorePutError = StoreOperationError | EncodeRecordFailed
export type StoreGetError =
| StoreOperationError
| EncodeRecordFailed
| StoreNotFound

export interface QueueOperationError extends Error {
name: 'QueueOperationFailed'
Expand All @@ -81,6 +84,14 @@ export interface StoreOperationError extends Error {
name: 'StoreOperationFailed'
}

export interface StoreNotFound extends Error {
name: 'StoreNotFound'
}

export interface EncodeRecordFailed extends Error {
name: 'EncodeRecordFailed'
}

// Service utils

export interface UcantoServerContext {
Expand Down
4 changes: 2 additions & 2 deletions packages/filecoin-api/test/aggregator.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ describe('piece/*', () => {
/** @type {unknown[]} */
const queuedMessages = []
const addQueue = new Queue({
onMessage: (message) => queuedMessages.push(message)
onMessage: (message) => queuedMessages.push(message),
})
const pieceLookupFn = (
/** @type {Iterable<any> | ArrayLike<any>} */ items,
Expand All @@ -47,7 +47,7 @@ describe('piece/*', () => {
},
addQueue,
pieceStore,
queuedMessages
queuedMessages,
}
)
})
Expand Down
4 changes: 2 additions & 2 deletions packages/filecoin-api/test/broker.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ describe('aggregate/*', () => {
/** @type {unknown[]} */
const queuedMessages = []
const addQueue = new Queue({
onMessage: (message) => queuedMessages.push(message)
onMessage: (message) => queuedMessages.push(message),
})
const offerLookupFn = (
/** @type {Iterable<any> | ArrayLike<any>} */ items,
Expand All @@ -47,7 +47,7 @@ describe('aggregate/*', () => {
},
addQueue,
offerStore,
queuedMessages
queuedMessages,
}
)
})
Expand Down
4 changes: 2 additions & 2 deletions packages/filecoin-api/test/storefront.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ describe('filecoin/*', () => {
/** @type {unknown[]} */
const queuedMessages = []
const addQueue = new Queue({
onMessage: (message) => queuedMessages.push(message)
onMessage: (message) => queuedMessages.push(message),
})
const pieceLookupFn = (
/** @type {Iterable<any> | ArrayLike<any>} */ items,
Expand All @@ -48,7 +48,7 @@ describe('filecoin/*', () => {
},
addQueue,
pieceStore,
queuedMessages
queuedMessages,
}
)
})
Expand Down

0 comments on commit 9f365aa

Please sign in to comment.