2019-03-16 03:33:19 +01:00
|
|
|
import { BaseResponse } from './response/baseResponse';
|
|
|
|
|
|
|
|
export class Response {
|
2019-10-21 19:51:48 +02:00
|
|
|
static error(error: any, data?: any): Response {
|
2019-03-16 03:33:19 +01:00
|
|
|
const res = new Response();
|
|
|
|
res.success = false;
|
|
|
|
if (typeof (error) === 'string') {
|
|
|
|
res.message = error;
|
|
|
|
} else {
|
|
|
|
res.message = error.message != null ? error.message : error.toString();
|
|
|
|
}
|
2019-10-21 19:51:48 +02:00
|
|
|
res.data = data;
|
2019-03-16 03:33:19 +01:00
|
|
|
return res;
|
|
|
|
}
|
|
|
|
|
|
|
|
static notFound(): Response {
|
|
|
|
return Response.error('Not found.');
|
|
|
|
}
|
|
|
|
|
|
|
|
static badRequest(message: string): Response {
|
|
|
|
return Response.error(message);
|
|
|
|
}
|
|
|
|
|
|
|
|
static multipleResults(ids: string[]): Response {
|
|
|
|
let msg = 'More than one result was found. Try getting a specific object by `id` instead. ' +
|
|
|
|
'The following objects were found:';
|
|
|
|
ids.forEach((id) => {
|
|
|
|
msg += '\n' + id;
|
|
|
|
});
|
2019-10-21 19:51:48 +02:00
|
|
|
return Response.error(msg, ids);
|
2019-03-16 03:33:19 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
static success(data?: BaseResponse): Response {
|
|
|
|
const res = new Response();
|
|
|
|
res.success = true;
|
|
|
|
res.data = data;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
|
|
|
|
success: boolean;
|
|
|
|
message: string;
|
|
|
|
errorCode: number;
|
|
|
|
data: BaseResponse;
|
|
|
|
}
|