UNPKG

domotz-remote-pawn

Version:

Domotz Agent

55 lines (52 loc) 1.71 kB
/** This file is part of Domotz Agent. * Copyright (C) 2016 Domotz Ltd * * Domotz Agent is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Domotz Agent is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with Domotz Agent. If not, see <http://www.gnu.org/licenses/>. **/ /** * * Created by Iacopo Papalini <ipapalini@domotz.com> on 14/09/15. */ /** * Bridges * @param onException * @param onSuccess * @param response * @returns {Function} */ module.exports.commandToWeb = function (onException, onSuccess, response) { return function (data, err) { if (err) { onException(response, err); } else { onSuccess(response, data); } }; }; module.exports.checkParameters = function (payload, neededParameters, res, onException) { 'use strict'; var util = require('util'); try { neededParameters.forEach(function (parameter) { var value = payload[parameter]; if (value === undefined || value === null) { throw { message: util.format('%s parameter is missing', parameter) }; } }); return true; } catch (e) { onException(res, { status: 400, message: e.message }); return false; } };