aboutsummaryrefslogtreecommitdiffstats
path: root/openo-portal/portal-lifecyclemgr/js/gsolcm.js
diff options
context:
space:
mode:
Diffstat (limited to 'openo-portal/portal-lifecyclemgr/js/gsolcm.js')
-rw-r--r--openo-portal/portal-lifecyclemgr/js/gsolcm.js461
1 files changed, 0 insertions, 461 deletions
diff --git a/openo-portal/portal-lifecyclemgr/js/gsolcm.js b/openo-portal/portal-lifecyclemgr/js/gsolcm.js
deleted file mode 100644
index d8c3fa1d..00000000
--- a/openo-portal/portal-lifecyclemgr/js/gsolcm.js
+++ /dev/null
@@ -1,461 +0,0 @@
-/*
- * Copyright 2015 ZTE, Inc. and others. All rights reserved. (ZTE)
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var templateParameters = {
- templateName: '',
- parameters: []
-};
-
-var service_instance_insert_index = 0;
-
-var lcmHandler = function(){
- this._addOwnEvents();
-};
-
-lcmHandler.prototype = {
- _addOwnEvents : function () {
- $('a[data-toggle="tab"]').on('show.bs.tab', this.beforeParameterTabShow);
- $('#createNS').click(this.okAction);
- },
- beforeParameterTabShow : function (event) {
- renderTemplateParametersTab();
- },
- okAction : function (event) {
- var serviceInstance = {
- serviceTemplateId: $('#svcTempl').val(),
- serviceName: $('#svcName').val(),
- serviceDescription: $('#svcDesc').val(),
- serviceParameters: collectServiceParameters(templateParameters),
- vimLocation: $('#vim_location').val()
- }
- var gatewayService = '/openoapi/servicegateway/v1/services';
- var serviceTemplate = fetchServiceTemplateBy(serviceInstance.serviceTemplateId);
- if(serviceTemplate === undefined) {
- return;
- }
- if(serviceTemplate.csarType === 'GSAR') {
- serviceInstance.serviceInstanceId = createGsoServiceInstance(gatewayService, serviceInstance);
- }else if(serviceTemplate.csarType === 'NSAR' || serviceTemplate.csarType === 'NFAR') {
- serviceInstance.serviceInstanceId = createNfvoServiceInstance(gatewayService, serviceInstance);
- }else if(serviceTemplate.csarType === 'SSAR') {
- serviceInstance.serviceInstanceId = createSdnoServiceInstance(gatewayService, serviceInstance);
- }
- if(serviceInstance.serviceInstanceId === undefined) {
- return;
- }
- updateTable(serviceInstance);
- }
-};
-
-function collectServiceParameters(parameters) {
- var serviceParameters = {};
- var i;
- for( i = 0; i < parameters.length; i += 1) {
- serviceParameters[parameters.name] = $('#' + parameters[i].id).val();
- }
- return serviceParameters;
-}
-
-function fetchServiceTemplateBy(templateId) {
- var serviceTemplateUri = '/openoapi/catalog/v1/servicetemplates/'+ templateId;
- var template;
- $.ajax({
- type : "GET",
- async: false,
- url : serviceTemplateUri,
- contentType : "application/json",
- dataType : "json",
- success : function(jsonResp) {
- template = {
- name: jsonResp.templateName,
- gsarId: jsonResp.csarId
- }
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- if(template === undefined) {
- return template;
- }
- var queryCsarUri = '/openoapi/catalog/v1/csars/' + template.gsarId;
- $.ajax({
- type : "GET",
- async: false,
- url : queryCsarUri,
- contentType : "application/json",
- dataType : "json",
- success : function(jsonResp) {
- template.csarType = jsonResp.type
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- return template;
-}
-
-function renderTemplateParametersTab() {
- templateParameters = fetchTemplateParameterDefinitions(templateParameters);
- var vims = fetchVimInfo();
- var components = transfromToComponents(templateParameters.parameters, vims);
- document.getElementById("parameterTab").innerHTML = components;
-}
-
-function fetchTemplateParameterDefinitions(parameters) {
- var serviceTemplate = parameters.templateName;
- var currentServiceTemplate = $("#svcTempl").val();
- // Do not need to fetch template parameters if template do not change in UI.
- if(serviceTemplate === currentServiceTemplate) {
- return;
- }
- var queryParametersUri = '/openoapi/catalog/v1/servicetemplates/' + currentServiceTemplate + '/parameters';
- var inputParameters = [];
- $.ajax({
- type : "GET",
- async: false,
- url : queryParametersUri,
- contentType : "application/json",
- dataType : "json",
- success : function(jsonResp) {
- var inputs = jsonResp.inputs;
- var i;
- for( i = 0; i < inputs.length; i += 1) {
- inputParameters[i] = {
- name: inputs[i].name,
- type: inputs[i].type,
- description: inputs[i].description,
- defaultValue: inputs[i].defaultValue,
- required: inputs[i].required,
- id: 'parameter_' + i,
- value: inputs[i].defaultValue
- };
- }
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- return { name: currentServiceTemplate, parameters: inputParameters };
-}
-
-function fetchVimInfo() {
- var result = [];
- var vimQueryUri = '/openoapi/extsys/v1/vims';
- $.ajax({
- type : "GET",
- async: false,
- url : vimQueryUri,
- contentType : "application/json",
- dataType : "json",
- success : function(jsonResp) {
- var vims = jsonResp;
- var i;
- for( i = 0; i < vims.length; i += 1) {
- var option = '<option value="' + vims[i].vimId + '">'+vims[i].name+'</option>';
- result[i] = {
- vimId: vims[i].vimId,
- vimName: vims[i].name
- }
- }
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- return result;
-}
-
-function transfromToComponents(parameters, vims) {
- var components = '';
- var i;
- for( i = 0; i < parameters.length; i += 1) {
- var component = '<div class="form-group">' +
- '<label class="col-sm-3 control-label">' +
- '<span>' + parameters[i].description + '</span>' + generateRequiredLabel(parameters[i]) +
- '</label>' +
- '<div class="col-sm-7">' +
- '<input type="text" id="'+ parameters[i].id +'" name="parameter description" class="form-control" placeholder="' +
- parameters[i].description + '" value="'+ parameters[i].value +'" />' +
- '</div></div>';
- components = components + component;
- }
- components = components + generateLocationComponent(vims);
- return components;
-}
-
-function generateRequiredLabel(parameter) {
- var requiredLabel = '';
- if(parameter.required === 'true') {
- requiredLabel = '<span class="required">*</span>';
- }
- return requiredLabel;
-}
-
-function generateLocationComponent(vims) {
- var component = '<div class="form-group">' +
- '<label class="col-sm-3 control-label">' +
- '<span>Location</span>' +
- '<span class="required">*</span>' +
- '</label>' +
- '<div class="col-sm-7">' +
- '<select class="form-control" style ="padding-top: 0px;padding-bottom: 0px;"' +
- ' id="vim_location" name="vim_location">' +
- transformToOptions(vims) +
- // '<option value="vimid">vim1 name</option>' +
- '</select></div></div>';
- return component;
-}
-
-function transformToOptions(vims) {
- var options = '';
- var i;
- for( i = 0; i < vims.length; i += 1) {
- var option = '<option value="' + vims[i].vimId + '">'+vims[i].vimName+'</option>';
- options = options + option;
- }
- return options;
-}
-
-function createGsoServiceInstance(gatewayService, serviceInstance) {
- serviceInstance.serviceParameters.location = serviceInstance.vimLocation;
- var gsoLcmUri = '/openoapi/lifecyclemgr/v1/services';
- var parameter = {
- 'name': serviceInstance.serviceName,
- 'description': serviceInstance.serviceDescription,
- 'serviceDefId': serviceTemplate.gsarId,
- 'templatedId': serviceInstance.serviceTemplateId,
- 'templateName': serviceTemplate.templateName,
- 'getewayUri': gsoLcmUrl,
- 'parameters': serviceInstance.serviceParameters
- };
- var serviceInstanceId;
- $.ajax({
- type : "POST",
- async: false,
- url : gatewayService,
- contentType : "application/json",
- dataType : "json",
- data : JSON.stringify(parameter),
- success : function(jsonResp) {
- if(jsonResp.result.errorCode != '200') {
- alert("Create service instance Error!");
- return;
- }
- serviceInstanceId = jsonResp.serviceId;
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- return serviceInstanceId;
-}
-
-function createNfvoServiceInstance(gatewayService, serviceInstance) {
- var nfvoLcmNsUrl = '/openoapi/nslcm/v1.0/ns';
- serviceInstance.serviceParameters.location = serviceInstance.vimLocation;
- createServiceInstance(gatewayService, nfvoLcmNsUrl, serviceInstance);
-}
-
-function createServiceInstance(gatewayService, gatewayUri, serviceInstance) {
- var nsInstanceId = createNetworkService(gatewayService, gatewayUri, serviceInstance);
- if(nsInstanceId === undefined) {
- return;
- }
- instantiateNetworkService(gatewayUri, nsInstanceId, serviceInstance);
-}
-
-function createNetworkService(gatewayService, gatewayUri, serviceInstance) {
- var parameter = {
- 'nsdId': serviceInstance.serviceTemplateId,
- 'nsName': serviceInstance.serviceName,
- 'description': serviceInstance.serviceDescription,
- 'gatewayUri': gatewayUri
- };
- var nsInstanceId;
- $.ajax({
- type : "POST",
- async: false,
- url : gatewayService,
- contentType : "application/json",
- dataType : "json",
- data : JSON.stringify(parameter),
- success : function(jsonResp) {
- nsInstanceId = jsonResp.nsInstanceId;
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- return nsInstanceId;
-}
-
-function instantiateNetworkService(gatewayUri, nsInstanceId, serviceInstance) {
- var initNsUrl = gatewayUri + '/' + nsInstanceId + '/Instantiate'
- var parameter = {
- 'gatewayUri': initNsUrl,
- 'nsInstanceId': nsInstanceId,
- 'additionalParamForNs': serviceInstance.serviceParameters
- };
- var result = false;
- $.ajax({
- type : "POST",
- async: false,
- url : gatewayService,
- contentType : "application/json",
- dataType : "json",
- data : JSON.stringify(parameter),
- success : function(jsonResp) {
- result = true;
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- return result;
-}
-
-function createSdnoServiceInstance(gatewayService, serviceInstance) {
- var sdnoLcmNsUrl = '/openoapi/sdnonslcm/v1.0/ns';
- createServiceInstance(gatewayService, sdnoLcmNsUrl, serviceInstance);
-}
-
-function updateTable(serviceInstance) {
- appendOenRow();
- addDeleteEventRegistration();
-}
-
-function appendOenRow() {
- var index = service_instance_insert_index;
- var creator = '';
- $('#sai').append('<tr id="service_instance_' + index + '"></tr>');
- $("#service_instance_" + index).html('<td><div class="DataTables_sort_wrapper openo-ellipsis "><span id="service_name" class="openo-table-th-sorticon overflow_elip leftHeaderAlign openo-table-disable-element ">'+ serviceInstance.serviceName + '</span></td>' +
- '<td><span class="openo-table-th-sorticon overflow_elip leftHeaderAlign openo-table-disable-element ">'+ serviceInstance.templateName + '</span></td>' +
- '<td class="service_template_id"><span class="openo-table-th-sorticon overflow_elip leftHeaderAlign openo-table-disable-element ">'+ serviceInstance.serviceTemplateId + '</span><input type="hidden" value="'+serviceInstance.serviceInstanceId+'"/></td>' +
- '<td><span class="openo-table-th-sorticon overflow_elip leftHeaderAlign openo-table-disable-element ">'+ formatDate(new Date()) + '</span></td>' +
- '<td><span class="openo-table-th-sorticon overflow_elip leftHeaderAlign openo-table-disable-element ">'+ creator + '</span></td>' +
- '<td><button class="data_delete_action"><img id="delete_action" class="openo-table-th-sorticon overflow_elip leftHeaderAlign openo-table-disable-element " src="images/delete.png"></img></button></td>');
- service_instance_insert_index += 1;
-}
-
-function formatDate(date) {
- var year = date.getFullYear();
- var month = date.getMonth() + 1;
- var day = date.getDate();
- var hh = date.getHours();
- var mm = date.getMinutes();
- var ss = date.getSeconds();
- return year + "-" + month + "-" + day + " " + hh + ":" + mm + ":" + ss;
-}
-
-function addDeleteEventRegistration() {
- $(".data_delete_action").click(function(event) {
- var trElement = $(this).parents("tr")[0];
- var tdElement = $(trElement).children("td.service_template_id")[0];
- var spanElement = $(tdElement).children("span")[0];
- var templateId = $(spanElement).text();
- var inputElement = $(tdElement).children("input")[0];
- var instanceId = $(inputElement).val();
- var result = deleteServiceInstance(templateId, instanceId);
- if(result) {
- trElement.remove();
- alert("Service instance deleted successfully!");
- }
- });
-}
-
-function deleteServiceInstance(templateId, instanceId) {
- var serviceTemplate = fetchServiceTemplateBy(templateId);
- if(serviceTemplate === undefined) {
- return;
- }
- var gatewayService = '/openoapi/servicegateway/v1/services';
- var result = false;
- if(serviceTemplate.csarType === 'GSAR') {
- result = deleteGsoServiceInstance(gatewayService, instanceId);
- }else if(serviceTemplate.csarType === 'NSAR' || serviceTemplate.csarType === 'NFAR') {
- result = deleteNfvoServiceInstance(gatewayService, instanceId);
- }else if(serviceTemplate.csarType === 'SSAR') {
- result = deleteSdnoServiceInstance(gatewayService, instanceId);
- }
- return result;
-}
-
-function deleteGsoServiceInstance(gatewayService, instanceId) {
- var gsoLcmUrl = '/openoapi/lifecyclemgr/v1/services/'+ instanceId;
- var operation = 'DELETE';
- return sendDeleteRequest(operation, gatewayService, gsoLcmUrl);
-}
-
-function deleteNfvoServiceInstance(gatewayService, instanceId) {
- var nfvoNsUrl = '/openoapi/nslcm/v1.0/ns/' + instanceId;
- var nfvoNsTerminateUrl = nfvoNsUrl +'/terminate';
- var terminateParameter = {
- 'nsInstanceId': instanceId,
- 'terminationType': "graceful",
- 'gracefulTerminationTimeout': "60",
- 'operation': "POST",
- 'gatewayUri': nfvoNsTerminateUrl
- };
- var result = sendRequest(gatewayService, terminateParameter);
- if(result) {
- var serviceParameter = {
- 'operation': "DELETE",
- 'gatewayUri': nfvoNsUrl
- };
- result = sendRequest(gatewayService, serviceParameter);
- }
- return result;
-}
-
-function deleteSdnoServiceInstance(gatewayService, instanceId) {
- var sdnoNsUrl = '/openoapi/sdnonslcm/v1.0/ns/' + instanceId;
- var sdnoNsTerminateUrl = sdnoNsUrl + '/terminate';
- var terminateParameter = {
- 'nsInstanceId': instanceId,
- 'terminationType': "graceful",
- 'gracefulTerminationTimeout': "60",
- 'operation': "POST",
- 'gatewayUri': sdnoNsTerminateUrl
- };
- var result = sendDeleteRequest(gatewayService, terminateParameter);
- if(result) {
- var serviceParameter = {
- 'operation': "DELETE",
- 'gatewayUri': sdnoNsUrl
- };
- result = sendDeleteRequest(gatewayService, serviceParameter);
- }
- return result;
-}
-
-function sendDeleteRequest(gatewayService, parameter) {
- var result = false;
- $.ajax({
- type : "DELETE",
- async: false,
- url : gatewayService,
- contentType : "application/json",
- dataType : "json",
- data : JSON.stringify(parameter),
- success : function(jsonResp) {
- result = true;
- },
- error : function(xhr, ajaxOptions, thrownError) {
- alert("Error on page : " + xhr.responseText);
- }
- });
- return result;
-}