New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add X-Kinvey-Request-Id to errors #84
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class ActiveUserError extends BaseError { | ||
constructor(message = 'An active user already exists.', debug, code) { | ||
super('ActiveUserError', message, debug, code); | ||
constructor(message = 'An active user already exists.', debug, code, kinveyRequestId) { | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. For a client-only error like the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. They should expect the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Makes sense. Please open a devcenter PR to go with this. |
||
super('ActiveUserError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,13 @@ | ||
import ExtendableError from 'es6-error'; | ||
|
||
export default class BaseError extends ExtendableError { | ||
constructor(name, message = 'An error occurred.', debug = '', code = -1) { | ||
constructor(name, message = 'An error occurred.', debug = '', code = -1, kinveyRequestId) { | ||
super(); | ||
this.name = name || this.constructor.name; | ||
this.message = message; | ||
this.debug = debug; | ||
this.code = code; | ||
this.kinveyRequestId = kinveyRequestId; | ||
this.stack = (new Error(message)).stack; | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class FeatureUnavailableError extends BaseError { | ||
constructor(message = 'Requested functionality is unavailable in this API version.', debug, code) { | ||
super('FeatureUnavailableError', message, debug, code); | ||
constructor(message = 'Requested functionality is unavailable in this API version.', debug, code, kinveyRequestId) { | ||
super('FeatureUnavailableError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class IncompleteRequestBodyError extends BaseError { | ||
constructor(message = 'The request body is either missing or incomplete.', debug, code) { | ||
super('IncompleteRequestBodyError', message, debug, code); | ||
constructor(message = 'The request body is either missing or incomplete.', debug, code, kinveyRequestId) { | ||
super('IncompleteRequestBodyError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,8 @@ | ||
import BaseError from './base'; | ||
|
||
export default class InvalidCredentialsError extends BaseError { | ||
constructor(message = 'Invalid credentials. Please retry your request with correct credentials.', debug, code) { | ||
super('InvalidCredentialsError', message, debug, code); | ||
constructor(message = 'Invalid credentials. Please retry your request with correct credentials.', debug, code, kinveyRequestId) { | ||
super('InvalidCredentialsError', message, debug, code, kinveyRequestId); | ||
} | ||
} | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class InvalidIdentifierError extends BaseError { | ||
constructor(message = 'One of more identifier names in the request has an invalid format.', debug, code) { | ||
super('InvalidIdentifierError', message, debug, code); | ||
constructor(message = 'One of more identifier names in the request has an invalid format.', debug, code, kinveyRequestId) { | ||
super('InvalidIdentifierError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class InvalidQuerySyntaxError extends BaseError { | ||
constructor(message = 'The query string in the request has an invalid syntax.', debug, code) { | ||
super('InvalidQuerySyntaxError', message, debug, code); | ||
constructor(message = 'The query string in the request has an invalid syntax.', debug, code, kinveyRequestId) { | ||
super('InvalidQuerySyntaxError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class JSONParseError extends BaseError { | ||
constructor(message = 'Unable to parse the JSON in the request.', debug, code) { | ||
super('JSONParseError', message, debug, code); | ||
constructor(message = 'Unable to parse the JSON in the request.', debug, code, kinveyRequestId) { | ||
super('JSONParseError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class KinveyError extends BaseError { | ||
constructor(message, debug, code) { | ||
super('KinveyError', message, debug, code); | ||
constructor(message, debug, code, kinveyRequestId) { | ||
super('KinveyError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class MissingQueryError extends BaseError { | ||
constructor(message = 'The request is missing a query string.', debug, code) { | ||
super('MissingQueryError', message, debug, code); | ||
constructor(message = 'The request is missing a query string.', debug, code, kinveyRequestId) { | ||
super('MissingQueryError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class MissingRequestHeaderError extends BaseError { | ||
constructor(message = 'The request is missing a required header.', debug, code) { | ||
super('MissingRequestHeaderError', message, debug, code); | ||
constructor(message = 'The request is missing a required header.', debug, code, kinveyRequestId) { | ||
super('MissingRequestHeaderError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class MissingRequestParameterError extends BaseError { | ||
constructor(message = 'A required parameter is missing from the request.', debug, code) { | ||
super('MissingRequestParameterError', message, debug, code); | ||
constructor(message = 'A required parameter is missing from the request.', debug, code, kinveyRequestId) { | ||
super('MissingRequestParameterError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class NoActiveUserError extends BaseError { | ||
constructor(message = 'There is not an active user.', debug, code) { | ||
super('NoActiveUserError', message, debug, code); | ||
constructor(message = 'There is not an active user.', debug, code, kinveyRequestId) { | ||
super('NoActiveUserError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class NoNetworkConnectionError extends BaseError { | ||
constructor(message = 'You do not have a network connection.', debug, code) { | ||
super('NoNetworkConnectionError', message, debug, code); | ||
constructor(message = 'You do not have a network connection.', debug, code, kinveyRequestId) { | ||
super('NoNetworkConnectionError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class NoResponseError extends BaseError { | ||
constructor(message = 'No response was provided.', debug, code) { | ||
super('NoResponseError', message, debug, code); | ||
constructor(message = 'No response was provided.', debug, code, kinveyRequestId) { | ||
super('NoResponseError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class NotFoundError extends BaseError { | ||
constructor(message = 'The item was not found.', debug, code = 404) { | ||
super('NotFoundError', message, debug, code); | ||
constructor(message = 'The item was not found.', debug, code = 404, kinveyRequestId) { | ||
super('NotFoundError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class ParameterValueOutOfRangeError extends BaseError { | ||
constructor(message = 'The value specified for one of the request parameters is out of range.', debug, code) { | ||
super('ParameterValueOutOfRangeError', message, debug, code); | ||
constructor(message = 'The value specified for one of the request parameters is out of range.', debug, code, kinveyRequestId) { | ||
super('ParameterValueOutOfRangeError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class QueryError extends BaseError { | ||
constructor(message = 'An error occurred with the query.', debug, code) { | ||
super('QueryError', message, debug, code); | ||
constructor(message = 'An error occurred with the query.', debug, code, kinveyRequestId) { | ||
super('QueryError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class ServerError extends BaseError { | ||
constructor(message = 'An error occurred on the server.', debug, code = 500) { | ||
super('ServerError', message, debug, code); | ||
constructor(message = 'An error occurred on the server.', debug, code = 500, kinveyRequestId) { | ||
super('ServerError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
import BaseError from './base'; | ||
|
||
export default class SyncError extends BaseError { | ||
constructor(message = 'An error occurred during sync.', debug, code) { | ||
super('SyncError', message, debug, code); | ||
constructor(message = 'An error occurred during sync.', debug, code, kinveyRequestId) { | ||
super('SyncError', message, debug, code, kinveyRequestId); | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the reason for
BaseError
to be in the exports?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Right now nothing uses it but could be in the future. Just good practice. I can remove it if necessary.