UNPKG

fog-controller

Version:

Fog Controller project @ iotracks.com

83 lines (62 loc) 3.34 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _elementImageManager = require('../managers/elementImageManager'); var _elementImageManager2 = _interopRequireDefault(_elementImageManager); var _appUtils = require('../utils/appUtils'); var _appUtils2 = _interopRequireDefault(_appUtils); var _async = require('async'); var _async2 = _interopRequireDefault(_async); var _architectureUtils = require('../utils/architectureUtils'); var _architectureUtils2 = _interopRequireDefault(_architectureUtils); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var createElementImage = function createElementImage(props, params, callback) { _elementImageManager2.default.createElementImage(props).then(_appUtils2.default.onCreate.bind(null, params, props.setProperty, 'Error: ElementImage not created', callback)); }; var getElementImagesByElementId = function getElementImagesByElementId(props, params, callback) { var elementId = _appUtils2.default.getProperty(params, props.elementId); var packImages = function packImages(images) { var imagesList = _architectureUtils2.default.createImagesListJsonTemplate(); return new Promise(function (resolve) { _async2.default.each(images, function (image, next) { _architectureUtils2.default.fillImageField(image.iofog_type_id, image.containerImage, imagesList); next(); }, function () { resolve(imagesList); }); }); }; _elementImageManager2.default.getElementImagesByElementId(elementId).then(packImages).then(_appUtils2.default.onFindOptional.bind(null, params, props.setProperty, callback)); }; var updateElementImages = function updateElementImages(props, params, callback) { _elementImageManager2.default.updateOrCreateElementImageByIdAndFogType(props).then(_appUtils2.default.onUpdateOrCreate.bind(null, params, null, "not update images", callback)); }; var deleteElementImage = function deleteElementImage(props, params, callback) { var elementId = _appUtils2.default.getProperty(params, props.elementId); _elementImageManager2.default.deleteElementImage(elementId).then(_appUtils2.default.onDeleteOptional.bind(null, params, callback)); }; var populateImagesForElement = function populateImagesForElement(imageProps, element) { return new Promise(function (resolve) { _async2.default.waterfall([_async2.default.apply(getElementImagesByElementId, imageProps, element)], function (err, result) { resolve(element); }); }); }; var populateImagesForElements = function populateImagesForElements(imageProps, elements) { return new Promise(function (resolve) { _async2.default.each(elements, function (element, inner_callback) { getElementImagesByElementId(imageProps, element, inner_callback); }, function () { resolve(elements); }); }); }; exports.default = { createElementImage: createElementImage, updateElementImages: updateElementImages, deleteElementImage: deleteElementImage, getElementImagesByElementId: getElementImagesByElementId, populateImagesForElement: populateImagesForElement, populateImagesForElements: populateImagesForElements };