send-response.js 984 Bytes
const ValidationError = require('utils/errors').ValidationError;
const UnirestError = require('utils/errors').UnirestError;

let sendResponse = {};

sendResponse.missingOrInvalidResponse = (param) => {
    let response = {
        resultCode: 40300,
        resultDescription: 'Missing or invalid parameter',
        diagnosticMessage: param
    }
    return response;
};


sendResponse.handleError = function(error) {
    console.log('catch ' + error);
    let errResponse = {};
    if (error instanceof ValidationError) {
        errResponse = {
            code: 403,
            object: this.missingOrInvalidResponse(error.instance[0].message)
        };
    } else if (error instanceof UnirestError) {
        errResponse = {
            code: 500,
            object: error.instance
        };
    } else {
        errResponse = {
            code: 500,
            object: { message: "System Error" }
        };
    }
    return errResponse;
};

module.exports = sendResponse;