diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/modules/business-controllers/operation.js b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/modules/business-controllers/operation.js index e96ffcdec19..1e479286a90 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/modules/business-controllers/operation.js +++ b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/modules/business-controllers/operation.js @@ -16,119 +16,123 @@ * under the License. */ -var operationModule = function () { - var log = new Log("/app/modules/business-controllers/operation.js"); - var utility = require('/app/modules/utility.js').utility; - var constants = require('/app/modules/constants.js'); - var devicemgtProps = require("/app/modules/conf-reader/main.js")["conf"]; - var serviceInvokers = require("/app/modules/oauth/token-protected-service-invokers.js")["invokers"]; - - var publicMethods = {}; - var privateMethods = {}; - - /** - * This method reads the token from the Token client and return the access token. - * If the token pair s not set in the session this will send a redirect to the login page. - */ - function getAccessToken(deviceType, owner, deviceId) { - var TokenClient = Packages.org.wso2.carbon.device.mgt.iot.apimgt.TokenClient; - var accessTokenClient = new TokenClient(deviceType); - var accessTokenInfo = accessTokenClient.getAccessToken(owner, deviceId); - return accessTokenInfo.getAccess_token(); - } - - privateMethods.getOperationsFromFeatures = function (deviceType, operationType) { - var url = devicemgtProps["httpsURL"] + constants.ADMIN_SERVICE_CONTEXT + "/features/" + deviceType; - var featuresList = serviceInvokers.XMLHttp.get(url, function (responsePayload) { - var features = responsePayload; - var featureList = []; - var feature; - for (var i = 0; i < features.length; i++) { - feature = {}; - var analyticStreams = utility.getDeviceTypeConfig(deviceType)["analyticStreams"]; - if (analyticStreams) { - for (var stream in analyticStreams) { - if (analyticStreams[stream].name == features[i].name) { - feature.ui_unit = analyticStreams[stream].ui_unit; - break; - } - } - } - - feature["operation"] = features[i].code; - feature["name"] = features[i].name; - feature["description"] = features[i].description; - feature["deviceType"] = deviceType; - feature["params"] = []; - var metaData = features[i].metadataEntries; - if (metaData) { - for (var j = 0; j < metaData.length; j++) { - feature["params"].push(metaData[j].value); - } - featureList.push(feature); - } - } - return featureList; - }, function (responsePayload) { - var response = {}; - response["status"] = "error"; - return response; - } - ); - return featuresList; - }; - - publicMethods.getControlOperations = function (deviceType) { - var operations = privateMethods.getOperationsFromFeatures(deviceType, "operation"); - for (var op in operations) { - var iconPath = utility.getOperationIcon(deviceType, operations[op].operation); - if (iconPath) { - operations[op]["icon"] = iconPath; - } - } - return operations; - }; - - publicMethods.getMonitorOperations = function (deviceType) { - return privateMethods.getOperationsFromFeatures(deviceType, "monitor"); - }; - - publicMethods.handlePOSTOperation = function (deviceType, operation, deviceId, params) { - var user = session.get(constants.USER_SESSION_KEY); - var endPoint = devicemgtProps["httpsURL"] + '/' + deviceType + "/controller/" + operation; - var header = '{"owner":"' + user.username + '","deviceId":"' + deviceId + - '","protocol":"mqtt", "sessionId":"' + session.getId() + '", "' + - constants.AUTHORIZATION_HEADER + '":"' + constants.BEARER_PREFIX + - getAccessToken(deviceType, user.username, deviceId) + '"}'; - return post(endPoint, params, JSON.parse(header), "json"); - }; - - publicMethods.handleGETOperation = function (deviceType, operation, operationName, deviceId) { - var user = session.get(constants.USER_SESSION_KEY); - var endPoint = devicemgtProps["httpsURL"] + '/' + deviceType + "/controller/" + operation; - var header = '{"owner":"' + user.username + '","deviceId":"' + deviceId + - '","protocol":"mqtt", "' + constants.AUTHORIZATION_HEADER + '":"' + - constants.BEARER_PREFIX + getAccessToken(deviceType, user.username, deviceId) + - '"}'; - var result = get(endPoint, {}, JSON.parse(header), "json"); - if (result.data) { - var values = result.data.sensorValue.split(','); - if (operationName == 'gps') { - result.data.map = { - lat: parseFloat(values[0]), - lng: parseFloat(values[1]) - } - } else { - var sqSum = 0; - for (var v in values) { - sqSum += Math.pow(values[v], 2); - } - result.data[operationName] = Math.sqrt(sqSum); - } - delete result.data['sensorValue']; - } - return result; - }; +/* + @Deprecated New + */ - return publicMethods; -}(); \ No newline at end of file +//var operationModule = function () { +// var log = new Log("/app/modules/business-controllers/operation.js"); +// var utility = require('/app/modules/utility.js').utility; +// var constants = require('/app/modules/constants.js'); +// var devicemgtProps = require("/app/modules/conf-reader/main.js")["conf"]; +// var serviceInvokers = require("/app/modules/oauth/token-protected-service-invokers.js")["invokers"]; +// +// var publicMethods = {}; +// var privateMethods = {}; +// +// /** +// * This method reads the token from the Token client and return the access token. +// * If the token pair s not set in the session this will send a redirect to the login page. +// */ +// function getAccessToken(deviceType, owner, deviceId) { +// var TokenClient = Packages.org.wso2.carbon.device.mgt.iot.apimgt.TokenClient; +// var accessTokenClient = new TokenClient(deviceType); +// var accessTokenInfo = accessTokenClient.getAccessToken(owner, deviceId); +// return accessTokenInfo.getAccess_token(); +// } +// +// privateMethods.getOperationsFromFeatures = function (deviceType, operationType) { +// var url = devicemgtProps["httpsURL"] + constants.ADMIN_SERVICE_CONTEXT + "/features/" + deviceType; +// var featuresList = serviceInvokers.XMLHttp.get(url, function (responsePayload) { +// var features = responsePayload; +// var featureList = []; +// var feature; +// for (var i = 0; i < features.length; i++) { +// feature = {}; +// var analyticStreams = utility.getDeviceTypeConfig(deviceType)["analyticStreams"]; +// if (analyticStreams) { +// for (var stream in analyticStreams) { +// if (analyticStreams[stream].name == features[i].name) { +// feature.ui_unit = analyticStreams[stream].ui_unit; +// break; +// } +// } +// } +// +// feature["operation"] = features[i].code; +// feature["name"] = features[i].name; +// feature["description"] = features[i].description; +// feature["deviceType"] = deviceType; +// feature["params"] = []; +// var metaData = features[i].metadataEntries; +// if (metaData) { +// for (var j = 0; j < metaData.length; j++) { +// feature["params"].push(metaData[j].value); +// } +// featureList.push(feature); +// } +// } +// return featureList; +// }, function (responsePayload) { +// var response = {}; +// response["status"] = "error"; +// return response; +// } +// ); +// return featuresList; +// }; +// +// publicMethods.getControlOperations = function (deviceType) { +// var operations = privateMethods.getOperationsFromFeatures(deviceType, "operation"); +// for (var op in operations) { +// var iconPath = utility.getOperationIcon(deviceType, operations[op].operation); +// if (iconPath) { +// operations[op]["icon"] = iconPath; +// } +// } +// return operations; +// }; +// +// publicMethods.getMonitorOperations = function (deviceType) { +// return privateMethods.getOperationsFromFeatures(deviceType, "monitor"); +// }; +// +// publicMethods.handlePOSTOperation = function (deviceType, operation, deviceId, params) { +// var user = session.get(constants.USER_SESSION_KEY); +// var endPoint = devicemgtProps["httpsURL"] + '/' + deviceType + "/controller/" + operation; +// var header = '{"owner":"' + user.username + '","deviceId":"' + deviceId + +// '","protocol":"mqtt", "sessionId":"' + session.getId() + '", "' + +// constants.AUTHORIZATION_HEADER + '":"' + constants.BEARER_PREFIX + +// getAccessToken(deviceType, user.username, deviceId) + '"}'; +// return post(endPoint, params, JSON.parse(header), "json"); +// }; +// +// publicMethods.handleGETOperation = function (deviceType, operation, operationName, deviceId) { +// var user = session.get(constants.USER_SESSION_KEY); +// var endPoint = devicemgtProps["httpsURL"] + '/' + deviceType + "/controller/" + operation; +// var header = '{"owner":"' + user.username + '","deviceId":"' + deviceId + +// '","protocol":"mqtt", "' + constants.AUTHORIZATION_HEADER + '":"' + +// constants.BEARER_PREFIX + getAccessToken(deviceType, user.username, deviceId) + +// '"}'; +// var result = get(endPoint, {}, JSON.parse(header), "json"); +// if (result.data) { +// var values = result.data.sensorValue.split(','); +// if (operationName == 'gps') { +// result.data.map = { +// lat: parseFloat(values[0]), +// lng: parseFloat(values[1]) +// } +// } else { +// var sqSum = 0; +// for (var v in values) { +// sqSum += Math.pow(values[v], 2); +// } +// result.data[operationName] = Math.sqrt(sqSum); +// } +// delete result.data['sensorValue']; +// } +// return result; +// }; +// +// return publicMethods; +//}(); \ No newline at end of file