UNPKG

fog-controller

Version:

Fog Controller project @ iotracks.com

108 lines (79 loc) 4.76 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var _async = require("async"); var _async2 = _interopRequireDefault(_async); var _winstonLogs = require("../../utils/winstonLogs"); var _winstonLogs2 = _interopRequireDefault(_winstonLogs); var _baseApiController = require("./baseApiController"); var _baseApiController2 = _interopRequireDefault(_baseApiController); var _appUtils = require("../../utils/appUtils"); var _appUtils2 = _interopRequireDefault(_appUtils); var _fogProvisionKeyService = require("../../services/fogProvisionKeyService"); var _fogProvisionKeyService2 = _interopRequireDefault(_fogProvisionKeyService); var _fogVersionCommandService = require("../../services/fogVersionCommandService"); var _fogVersionCommandService2 = _interopRequireDefault(_fogVersionCommandService); var _changeTrackingService = require("../../services/changeTrackingService"); var _changeTrackingService2 = _interopRequireDefault(_changeTrackingService); var _fogVersionCommand = require("../../models/fogVersionCommand"); var _fogVersionCommand2 = _interopRequireDefault(_fogVersionCommand); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /********************************************* EndPoints ******************************************************/ /************* Change Version EndPoint (Get/Post: /api/v2/authoring/fabric/version/change) ******************/ var changeVersionEndPoint = function changeVersionEndPoint(req, res) { _winstonLogs2.default.info("Endpoint hit: " + req.originalUrl); var params = {}, currentTime = new Date().getTime(), fogProps = { instanceId: 'bodyParams.instanceId', setProperty: 'newProvision' }, commandProps = { instanceId: 'bodyParams.instanceId', versionCommand: 'bodyParams.versionCommand', setProperty: 'newVersionCommand' }, pubChangeVersionProps = { fogInstanceId: 'bodyParams.instanceId', changeObject: { version: currentTime } }; // params.bodyParams = req.params; params.bodyParams = req.body; _async2.default.waterfall([_async2.default.apply(_fogProvisionKeyService2.default.deleteProvisonKeyByInstanceId, fogProps, params), _async2.default.apply(_fogProvisionKeyService2.default.createProvisonKeyByInstanceId, fogProps), _async2.default.apply(_fogProvisionKeyService2.default.deleteExpiredProvisionKeys), _async2.default.apply(_fogVersionCommandService2.default.deleteVersionCommandByInstanceId, fogProps), _async2.default.apply(_fogVersionCommandService2.default.createVersionCommandByInstanceId, commandProps), _async2.default.apply(_changeTrackingService2.default.updateChangeTracking, pubChangeVersionProps)], function (err, result) { _appUtils2.default.sendResponse(res, err, null, null, "Problem with version command"); }); }; /********** Instance Version EndPoint (Get/Post: /api/v2/instance/version/id/:instanceId/token/:Token) ***************/ var instanceVersionEndPoint = function instanceVersionEndPoint(req, res) { _winstonLogs2.default.info("Endpoint hit: " + req.originalUrl); var params = {}, versionCommandProps = { instanceId: 'bodyParams.instanceId', setProperty: 'version' }, provisionKeyProps = { instanceId: 'bodyParams.instanceId', setProperty: 'provision' }; params.bodyParams = req.params; _async2.default.waterfall([_async2.default.apply(_baseApiController2.default.checkfogExistance, req, res), _async2.default.apply(_fogVersionCommandService2.default.getVersionCommandByInstanceId, versionCommandProps, params), _async2.default.apply(_fogProvisionKeyService2.default.getProvisionKeyByInstanceId, provisionKeyProps), _async2.default.apply(_fogVersionCommandService2.default.deleteVersionCommandByInstanceId, versionCommandProps)], function (err, result) { var outputProvisionKey, outputExpirationTime, outputVersionCommand, successLabelArr, successValueArr; if (params.provision) { outputProvisionKey = params.provision.provisionKey; outputExpirationTime = params.provision.expirationTime; } if (params.version) { outputVersionCommand = params.version.versionCommand; } successLabelArr = ["versionCommand", "provisionKey", "expirationTime"]; successValueArr = [outputVersionCommand, outputProvisionKey, outputExpirationTime]; _appUtils2.default.sendMultipleResponse(res, err, successLabelArr, successValueArr, result); }); }; exports.default = { instanceVersionEndPoint: instanceVersionEndPoint, changeVersionEndPoint: changeVersionEndPoint };