lamassu-server/lib/api_response.js

32 lines
No EOL
808 B
JavaScript

'use strict';
var ApiResponse = function(res) {
this.response = res;
};
ApiResponse.factory = function factory(res) {
return new ApiResponse(res);
};
module.exports = ApiResponse;
ApiResponse.prototype.respond = function respond(err, res, statusCodeOpt) {
var statusCode = statusCodeOpt || 200;
if (err) return this.response.json(statusCode, this._buildErr(err));
var jsonResponse = this._buildResponse(res);
this.response.json(statusCode, jsonResponse);
};
ApiResponse.prototype._buildErr = function _buildErr(err) {
var message = err.message || err;
var name = err.name || null;
return {err: message, errType: name};
};
ApiResponse.prototype._buildResponse = function _buildResponse(res) {
var fullRes = res;
fullRes = fullRes || {};
fullRes.err = null;
return fullRes;
};