all files / apigateway-utils/src/ responseBuilderHandler.js

100% Statements 8/8
100% Branches 0/0
100% Functions 3/3
100% Lines 8/8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19                     
'use strict';
 
var ResponseBuilder = require('./ResponseBuilder');
 
module.exports = function(promiseReturningHandlerFn, request, cb) {
   promiseReturningHandlerFn()
      .then(function(respBuilder) {
         console.log('completed with %s millis left', request.getContext().getRemainingTimeInMillis());
         cb(undefined, respBuilder.toResponse(request));
      })
      .catch(function(err) {
         var respBuilder = new ResponseBuilder(request).error();
 
         console.log('ERROR:', err, err.stack);
         cb(undefined, respBuilder.toResponse(request));
      })
      .done();
};