* ============LICENSE_START=======================================================\r
* VID\r
* ================================================================================\r
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
+ * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.\r
+ * Modifications Copyright (C) 2019 IBM.\r
* ================================================================================\r
* Licensed under the Apache License, Version 2.0 (the "License");\r
* you may not use this file except in compliance with the License.\r
* deployable objects (Services, VNFs, VF-Modules, Networks, and Volume-Groups)\r
*/\r
(function () {\r
- "use strict";\r
-\r
- appDS2.requires.push('ui.tree');\r
- \r
- appDS2.controller("InstantiationController", function ($scope, $route, $location, $timeout, COMPONENT, VIDCONFIGURATION, FIELD, DataService, PropertyService, UtilityService, VnfService, $http, vidService) {\r
- \r
- $scope.popup = new Object();\r
- $scope.defaultBaseUrl = "";\r
- $scope.responseTimeoutMsec = 60000;\r
- $scope.properties = UtilityService.getProperties();\r
- $scope.init = function() {\r
+ "use strict";\r
\r
+ appDS2.requires.push('ui.tree');\r
+\r
+ appDS2.controller("InstantiationController", function ($scope, $route, $location, $timeout, $uibModal, COMPONENT, VIDCONFIGURATION, FIELD, DataService, PropertyService, UtilityService, VnfService, $http, vidService, AaiService, PnfService, CrService, AsdcService, $q, featureFlags, _, CreationService, $window, DeleteResumeService) {\r
+ $scope.popup = new Object();\r
+ $scope.defaultBaseUrl = "";\r
+ $scope.responseTimeoutMsec = 60000;\r
+ $scope.properties = UtilityService.getProperties();\r
+ $scope.resumeStatus = COMPONENT.RESUME_STATUS;\r
+ //isPermitted - returned as string from url and converted into boolean\r
+ $scope.isPermitted = $location.search().isPermitted == "true";\r
+ $scope.STATUS_CONSTANTS = FIELD.STATUS;\r
+ $scope.pnfs = [];// PNF data init;\r
+ $scope.collectionResource = {};\r
+ $scope.collections = [];\r
+ $scope.networks = [];\r
+ $scope.isCR = false;\r
+ $scope.isVFC = false;\r
+ $scope.init = function () {\r
/*\r
* These 2 statements should be included in non-test code.\r
*/\r
- // takes a default value, retrieves the prop value from the file system and sets it\r
- var msecs = PropertyService.retrieveMsoMaxPollingIntervalMsec();\r
- PropertyService.setMsoMaxPollingIntervalMsec(msecs);\r
- \r
- // takes a default value, retrieves the prop value from the file system and sets it\r
- var polls = PropertyService.retrieveMsoMaxPolls();\r
- PropertyService.setMsoMaxPolls(polls);\r
- \r
- PropertyService.setServerResponseTimeoutMsec(10000);\r
+ // takes a default value, retrieves the prop value from the file system and sets it\r
+ var msecs = PropertyService.retrieveMsoMaxPollingIntervalMsec();\r
+ PropertyService.setMsoMaxPollingIntervalMsec(msecs);\r
\r
- /*\r
- * Common parameters that shows an example of how the view edit screen\r
- * is expected to pass some common service instance values to the\r
- * popups.\r
- */\r
+ // takes a default value, retrieves the prop value from the file system and sets it\r
+ var polls = PropertyService.retrieveMsoMaxPolls();\r
+ PropertyService.setMsoMaxPolls(polls);\r
+ };\r
+\r
+\r
+ $scope.convertModel = function (asdcModel) {\r
+ if (!asdcModel) return undefined;\r
+ var convertedAsdcModel = UtilityService.convertModel(asdcModel);\r
+ return convertedAsdcModel;\r
+ };\r
+\r
+ $scope.prepareScopeWithModel = function () {\r
+ // skip if no model\r
+ if (!vidService.getModel()) return;\r
+\r
+ $scope.service = {\r
+ "model": vidService.getModel(),\r
+ "convertedModel": $scope.convertModel(vidService.getModel()),\r
+ "instance": vidService.getInstance()\r
+ };\r
+\r
+\r
+ $scope.isCR = !_.isEmpty($scope.service.model.collectionResources);\r
+ if ($scope.isCR)\r
+ prepareCr();\r
+ else\r
+ preparePnfs();\r
+ };\r
+\r
+ function preparePnfs() {\r
+ var serviceInstance = {\r
+ globalCustomerId: $location.search().subscriberId,\r
+ serviceType: $location.search().serviceType,\r
+ serviceInstanceId: $location.search().serviceInstanceId\r
+ };\r
+\r
+ _setPnf(serviceInstance).then(function (data) {\r
+ $scope.pnfs = data;\r
+ });\r
+ }\r
+\r
+\r
+ function prepareCr() {\r
+ var serviceInstance = {\r
+ globalCustomerId: $location.search().subscriberId,\r
+ serviceType: $location.search().serviceType,\r
+ serviceInstanceId: $location.search().serviceInstanceId\r
+ };\r
+\r
+ _setCr(serviceInstance).then(function (data) {\r
+ $scope.collectionResource = data;\r
+ $scope.collections.push($scope.collectionResource.collection);\r
+ $scope.networks.push($scope.collectionResource.networks[0]);\r
+ });\r
+ }\r
+\r
+ $scope.returnVfModules = function (vnfInstance) {\r
+\r
+ var svcModel = $scope.service.convertedModel;\r
+ //var vnfModelInvariantUuid = vnfInstance[FIELD.ID.MODEL_INVAR_ID];\r
+ var vnfModelVersionId = vnfInstance[FIELD.ID.MODEL_VERSION_ID]; // model uuid\r
+ var vnfModelCustomizationUuid = vnfInstance[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ var vnfModel = null;\r
+\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (vnfModelCustomizationUuid != null)) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ if (vnfModel !== undefined) {\r
+ if (!($scope.isObjectEmpty(vnfModel.vfModules))) {\r
+ //console.log ("vnfModel.vfModules: "); console.log (JSON.stringify(vnfModel.vfModules, null, 4));\r
+ return (vnfModel.vfModules);\r
+ }\r
+ }\r
+ }\r
+ else {\r
+ // old flow\r
+ if (vnfModelVersionId != null) {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ if (vnfModel !== undefined) {\r
+ if (!($scope.isObjectEmpty(vnfModel.vfModules))) {\r
+ //console.log ("vnfModel.vfModules: "); console.log (JSON.stringify(vnfModel.vfModules, null, 4));\r
+ return (vnfModel.vfModules);\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ }\r
+ return null;\r
+ };\r
+ $scope.hasVfModules = function (vnfInstance) {\r
+ if ($scope.returnVfModules(vnfInstance) != null) {\r
+ return true;\r
+ }\r
+ return false;\r
+ };\r
+ $scope.returnVolumeGroups = function (vnfInstance) {\r
+\r
+ var svcModel = $scope.service.convertedModel;\r
+\r
+ //var vnfModelInvariantUuid = vnfInstance[FIELD.ID.MODEL_INVAR_ID];\r
+ var vnfModelVersionId = vnfInstance[FIELD.ID.MODEL_VERSION_ID];\r
+ var vnfModelCustomizationUuid = vnfInstance[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ var vnfModel = null;\r
+\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (vnfModelCustomizationUuid != null)) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ if (vnfModel !== undefined) {\r
+\r
+ if (!($scope.isObjectEmpty(vnfModel.volumeGroups))) {\r
+ //console.log ("vnfModel.volumeGroups: "); console.log (JSON.stringify(vnfModel.volumeGroups, null, 4));\r
+ return (vnfModel.volumeGroups);\r
+ }\r
+ }\r
+ }\r
+ else {\r
+ // old flow\r
+ if (vnfModelVersionId != null) {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ if (!($scope.isObjectEmpty(vnfModel.volumeGroups))) {\r
+ //console.log ("vnfModel.vfModules: "); console.log (JSON.stringify(vnfModel.volumeGroups, null, 4));\r
+ return (vnfModel.volumeGroups);\r
+ }\r
+ }\r
+ }\r
+\r
+ }\r
+ return null;\r
+ };\r
+ $scope.hasVolumeGroups = function (vnfInstance) {\r
+ if ($scope.returnVolumeGroups(vnfInstance) != null) {\r
+ return true;\r
+ }\r
+ return false;\r
+ };\r
+ $scope.deleteNetwork = function (serviceObject, network) {\r
+\r
+ console.log("Removing Network " + network.name);\r
+\r
+ //Send delete network request to MSO\r
+\r
+ //var networks = this.service.instance.networks;\r
+\r
+ //networks.splice(networks.indexOf(network), 1);\r
+\r
+ //Retrieve updated data from A&AI\r
+ var serviceInstance = serviceObject.object;\r
+\r
+ setCurrentNetworkModelInfoFromScope(network);\r
+\r
+ DataService.setInventoryItem(network.object);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+ DataService.setServiceUuid($scope.service.model.service.uuid);\r
+ DataService.setNetworkInstanceId(network.object[FIELD.ID.NETWORK_ID]);\r
+\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.NETWORK,\r
+ callbackFunction: deleteOrResumeCallback,\r
+ dialogMethod: COMPONENT.DELETE\r
+ });\r
+ };\r
+\r
+ $scope.allowTransferToNewScreenAndShowButton = function (){\r
+ if(featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_FLASH_MORE_ACTIONS_BUTTON_IN_OLD_VIEW_EDIT)) {\r
+ return $scope.isPermitted;\r
+ }\r
+ return false;\r
+ };\r
+\r
+ $scope.navigateToNewEditViewScreen = function(){\r
+ window.location.href = 'serviceModels.htm#/servicePlanning/EDIT?' +\r
+ 'serviceModelId=' + _.get($scope, 'service.model.service.uuid') +\r
+ '&subscriberId=' + $location.search().subscriberId +\r
+ '&serviceType=' + $location.search().serviceType +\r
+ '&serviceInstanceId=' + $location.search().serviceInstanceId;\r
+ };\r
+\r
+ $scope.deleteService = function (serviceObject, serviceOrchestrationStatus) {\r
+\r
+ var serviceInstance = serviceObject.object;\r
+\r
+ console.log("Removing Service " + $scope.service.instance.name);\r
+\r
+ if ($scope.isMacro()) {\r
+ DataService.setALaCarte(false);\r
+ }\r
+ else {\r
+ DataService.setALaCarte(true);\r
+ }\r
+ DataService.setMacro($scope.isMacro());\r
+ DataService.setInventoryItem(serviceInstance);\r
+ setCurrentServiceModelInfoFromScope();\r
+\r
+\r
+ DataService.setSubscriberName(serviceObject[FIELD.ID.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ DataService.setGlobalCustomerId(serviceObject[COMPONENT.GLOBAL_CUSTOMER_ID]);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ DataService.setServiceUuid($scope.service.model.service.uuid);\r
+\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.SERVICE,\r
+ callbackFunction: deleteServiceInstanceCallbackFunction,\r
+ dialogMethod: COMPONENT.DELETE,\r
+ serviceStatus: serviceOrchestrationStatus\r
+ });\r
+\r
+ };\r
+\r
+ function populate_popup_vfModule(serviceObject, vfModule, vnf) {\r
+ var serviceInstance = serviceObject.object;\r
+\r
+ DataService.setInventoryItem(vfModule.object);\r
+\r
+ setCurrentVfModuleModelInfoFromScope(vnf, vfModule);\r
+ var vfModuleInstanceID = vfModule.object[FIELD.ID.VF_MODULE_ID];\r
+ if (vfModuleInstanceID == null) {\r
+ vfModuleInstanceID = "";\r
+ }\r
+\r
+ DataService.setVnfInstanceId(vnf.object[FIELD.ID.VNF_ID]);\r
+ DataService.setVfModuleInstanceId(vfModuleInstanceID);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ DataService.setServiceUuid($scope.service.model.service.uuid);\r
+ }\r
+\r
+ var modalInstance;\r
+\r
+ var openMsoModal = function (msoType, requestParams, callbackFunction, configuration) {\r
+ modalInstance = $uibModal.open({\r
+ templateUrl: 'app/vid/scripts/modals/mso-commit/mso-commit.html',\r
+ controller: "msoCommitModalController",\r
+ backdrop: false,\r
+ resolve: {\r
+ msoType: function () {\r
+ return msoType;\r
+ },\r
+ requestParams: function () {\r
+ requestParams.callbackFunction = callbackFunction;\r
+ return requestParams;\r
+ },\r
+ configuration: function () {\r
+ return configuration;\r
+ }\r
+ }\r
+ });\r
+ };\r
+\r
+ var openVfModuleWithHomingDataModal = function(action, vfModule) {\r
+ modalInstance = $uibModal.open({\r
+ controller: 'vfModuleActionModalController',\r
+ templateUrl: 'app/vid/scripts/modals/vf-module-homing-data-action/vf-module-homing-data-action.html',\r
+ backdrop: false,\r
+ resolve: {\r
+ action: function () {\r
+ return action;\r
+ },\r
+ vfModule: function() {\r
+ return vfModule;\r
+ }\r
+ }\r
+ });\r
+\r
+ modalInstance.result.then(function (data) {\r
+ if (data.msoType && data.requestParams) {\r
+ openMsoModal(data.msoType, data.requestParams, deleteOrResumeCallback, null);\r
+ }\r
+ });\r
+ };\r
+\r
+ function getLcpCloudRegionTenantList() {\r
+ AaiService.getLcpCloudRegionTenantList(DataService\r
+ .getGlobalCustomerId(), DataService.getServiceType(), function(\r
+ response) {\r
+ $scope.lcpAndTenant = response;\r
+ $scope.isFeatureFlagCloudOwner = featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST);\r
+ $scope.lcpRegionList = _.uniqBy(response, 'cloudRegionId');\r
+ });\r
+ }\r
+\r
+ $scope.deleteVfModule = function (serviceObject, vfModule, vnf) {\r
+ $scope.isSoftDeleteEnabled = true;\r
+\r
+ populate_popup_vfModule(serviceObject, vfModule, vnf);\r
+\r
+ if (featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE)) {\r
+\r
+ if (DataService.getLoggedInUserId()) {\r
+ openVfModuleWithHomingDataModal(COMPONENT.DELETE, vfModule);\r
+ }\r
+ else {\r
+ AaiService.getLoggedInUserID(function (response) {\r
+ var userID = response.data;\r
+ DataService.setLoggedInUserId(userID);\r
+ openVfModuleWithHomingDataModal(COMPONENT.DELETE, vfModule);\r
+ });\r
+ }\r
+ }\r
+ else {\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.VF_MODULE,\r
+ callbackFunction: deleteOrResumeCallback,\r
+ dialogMethod: COMPONENT.DELETE\r
+ });\r
+ }\r
+ console.log("Removing VF-Module", vfModule);\r
+ };\r
+\r
+ function setCurrentServiceModelInfoFromScope() {\r
+ DataService.setModelInfo(COMPONENT.SERVICE, {\r
+ "modelInvariantId": $scope.service.model.service.invariantUuid,\r
+ "modelVersion": $scope.service.model.service.version,\r
+ "modelNameVersionId": $scope.service.model.service.uuid,\r
+ "modelName": $scope.service.model.service.name,\r
+ "inputs": ""\r
+ });\r
+ };\r
+\r
+ function setCurrentVNFModelInfo(vnf) {\r
+ var svcModel = $scope.service.convertedModel;\r
+ var vnfModel;\r
+ var vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+ var vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (vnfModelCustomizationUuid != null)) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ }\r
+ else {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ }\r
+ if (!($scope.isObjectEmpty(vnfModel))) {\r
\r
-// DataService.setSubscriberName("Mobility");\r
-// DataService.setGlobalCustomerId("CUSTID12345")\r
-// DataService.setServiceType("Mobility Type 1");\r
-// DataService.setServiceInstanceName("Example Service Instance Name");\r
-// DataService.setServiceName("Mobility Service 1");\r
-// DataService.setServiceInstanceId("mmsc-test-service-instance");\r
-// DataService.setServiceUuid("XXXX-YYYY-ZZZZ");\r
-// DataService.setUserServiceInstanceName("USER_SERVICE_INSTANCE_NAME");\r
+ DataService.setModelInfo(COMPONENT.VNF, {\r
+ "modelInvariantId": vnfModel.invariantUuid,\r
+ "modelVersion": vnfModel.version,\r
+ "modelNameVersionId": vnfModel.uuid,\r
+ "modelCustomizationName": vnfModel.modelCustomizationName,\r
+ "customizationUuid": vnfModel.customizationUuid,\r
+ "modelName": vnfModel.name,\r
+ "inputs": ""\r
+ });\r
+ }\r
+ }\r
+\r
+\r
+ }\r
+\r
+ function setCurrentNetworkModelInfoFromScope(network) {\r
+ var svcModel = $scope.service.convertedModel;\r
+ var netModel;\r
+ // set model default and override later if found\r
+ DataService.setModelInfo(COMPONENT.NETWORK, {});\r
+\r
+ if (network.object != null) {\r
+\r
+ //var netModelInvariantUuid = network.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var netModelVersionId = network.object[FIELD.ID.MODEL_VERSION_ID]; // model uuid\r
+ var netModelCustomizationUuid = network.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ if (UtilityService.hasContents(netModelCustomizationUuid)) {\r
+ // set it to what came from a&ai\r
+ DataService.setResCustomizationUuid(netModelCustomizationUuid);\r
+ }\r
+\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.networks)))) {\r
+ if ((svcModel.isNewFlow) && (UtilityService.hasContents(netModelCustomizationUuid))) {\r
+ netModel = svcModel.networks[netModelCustomizationUuid];\r
+ }\r
+ else {\r
+\r
+ if (UtilityService.hasContents(netModelVersionId)) {\r
+ netModel = svcModel.networks[netModelVersionId];\r
+ }\r
+\r
+ }\r
+ }\r
+ }\r
+ if (!($scope.isObjectEmpty(netModel))) {\r
+ DataService.setModelInfo(COMPONENT.NETWORK, {\r
+ "modelInvariantId": netModel.invariantUuid,\r
+ "modelVersion": netModel.version,\r
+ "modelNameVersionId": netModel.uuid,\r
+ "modelCustomizationName": netModel.modelCustomizationName,\r
+ "customizationUuid": netModel.customizationUuid,\r
+ "modelName": netModel.name,\r
+ "inputs": ""\r
+ });\r
+ }\r
}\r
- \r
- //PropertyService.setMsoBaseUrl("testmso");\r
-\r
- $scope.convertModel = function(asdcModel) {\r
- if (!asdcModel) return undefined;\r
- var convertedAsdcModel = UtilityService.convertModel(asdcModel);\r
- return convertedAsdcModel;\r
- };\r
- \r
- $scope.service = {\r
- "model": vidService.getModel(),\r
- "convertedModel": $scope.convertModel(vidService.getModel()),\r
- "instance": vidService.getInstance()\r
- };\r
- \r
- $scope.returnVfModules = function (vnfInstance) {\r
- \r
- var svcModel = $scope.service.convertedModel;\r
- //var vnfModelInvariantUuid = vnfInstance[FIELD.ID.MODEL_INVAR_ID];\r
- var vnfModelVersionId = vnfInstance[FIELD.ID.MODEL_VERSION_ID]; // model uuid\r
- var vnfModelCustomizationUuid = vnfInstance[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- var vnfModel = null;\r
- \r
- if ( (!($scope.isObjectEmpty(svcModel))) && ( !($scope.isObjectEmpty(svcModel.vnfs) ) ) ) {\r
- if ( (svcModel.isNewFlow) && (vnfModelCustomizationUuid != null ) ) {\r
- vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
- if ( !($scope.isObjectEmpty(vnfModel.vfModules) ) ) {\r
- //console.log ("vnfModel.vfModules: "); console.log (JSON.stringify(vnfModel.vfModules, null, 4));\r
- return (vnfModel.vfModules);\r
- }\r
- }\r
- else {\r
- // old flow\r
- if ( vnfModelVersionId != null ) {\r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- if ( !($scope.isObjectEmpty(vnfModel.vfModules) ) ) {\r
- //console.log ("vnfModel.vfModules: "); console.log (JSON.stringify(vnfModel.vfModules, null, 4));\r
- return (vnfModel.vfModules);\r
- }\r
- }\r
- }\r
- \r
- }\r
- return null;\r
- }\r
- $scope.hasVfModules = function (vnfInstance) {\r
- if ($scope.returnVfModules(vnfInstance) != null ){\r
- return true;\r
- }\r
- return false;\r
- }\r
- $scope.returnVolumeGroups = function (vnfInstance) {\r
- \r
- var svcModel = $scope.service.convertedModel;\r
-\r
- //var vnfModelInvariantUuid = vnfInstance[FIELD.ID.MODEL_INVAR_ID];\r
- var vnfModelVersionId = vnfInstance[FIELD.ID.MODEL_VERSION_ID];\r
- var vnfModelCustomizationUuid = vnfInstance[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
-\r
- var vnfModel = null;\r
- \r
- if ( (!($scope.isObjectEmpty(svcModel))) && ( !($scope.isObjectEmpty(svcModel.vnfs) ) ) ) {\r
- if ( (svcModel.isNewFlow) && (vnfModelCustomizationUuid != null ) ) {\r
- vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
- if ( !($scope.isObjectEmpty(vnfModel.volumeGroups) ) ) {\r
- //console.log ("vnfModel.volumeGroups: "); console.log (JSON.stringify(vnfModel.volumeGroups, null, 4));\r
- return (vnfModel.volumeGroups);\r
- }\r
- }\r
- else {\r
- // old flow\r
- if ( vnfModelVersionId != null ) {\r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- if ( !($scope.isObjectEmpty(vnfModel.volumeGroups) ) ) {\r
- //console.log ("vnfModel.vfModules: "); console.log (JSON.stringify(vnfModel.volumeGroups, null, 4));\r
- return (vnfModel.volumeGroups);\r
- }\r
- }\r
- }\r
- \r
- }\r
- return null;\r
- }\r
- $scope.hasVolumeGroups = function (vnfInstance) {\r
- if ($scope.returnVolumeGroups(vnfInstance) != null ){\r
- return true;\r
- }\r
- return false;\r
- }\r
- $scope.deleteNetwork = function(serviceObject, network) {\r
-\r
- console.log("Removing Network " + network.name);\r
-\r
- //Send delete network request to MSO\r
-\r
- //var networks = this.service.instance.networks;\r
-\r
- //networks.splice(networks.indexOf(network), 1);\r
-\r
- //Retrieve updated data from A&AI\r
+\r
+ function setCurrentVfModuleModelInfoFromScope(vnf, vfModule) {\r
+\r
+ var svcModel = $scope.service.convertedModel;\r
+\r
+ //var vnfModelInvariantUuid = vnf.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
+ var vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+ var vnfModel = null;\r
+ var vfModuleModel = null;\r
+\r
+ DataService.setModelInfo(COMPONENT.VF_MODULE, {\r
+ "modelInvariantId": "",\r
+ "modelVersion": "",\r
+ "modelNameVersionId": "",\r
+ "modelCustomizationName": "",\r
+ "customizationUuid": "",\r
+ "modelName": "",\r
+ "inputs": ""\r
+ });\r
+\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (vnfModelCustomizationUuid != null)) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+\r
+ var vfModuleCustomizationUuid = vfModule.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+ if (!($scope.isObjectEmpty(vnfModel)) && !($scope.isObjectEmpty(vnfModel.vfModules)) && UtilityService.hasContents(vfModuleCustomizationUuid)) {\r
+\r
+ vfModuleModel = vnfModel.vfModules[vfModuleCustomizationUuid];\r
+\r
+ }\r
+ }\r
+ else {\r
+ // old flow\r
+ if (vnfModelVersionId != null) {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ }\r
+ //var vfModuleInvariantUuid = vfModule.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var vfModuleModelVersionId = vfModule.object[FIELD.ID.MODEL_VERSION_ID];\r
+ if ((!($scope.isObjectEmpty(vnfModel))) && (!($scope.isObjectEmpty(vnfModel.vfModules))) &&\r
+ UtilityService.hasContents(vfModuleModelVersionId)) {\r
+ vfModuleModel = vnfModel.vfModules[vfModuleModelVersionId];\r
+ }\r
+ }\r
+ if (!($scope.isObjectEmpty(vfModuleModel))) {\r
+ DataService.setModelInfo(COMPONENT.VF_MODULE, {\r
+ "modelInvariantId": vfModuleModel.invariantUuid,\r
+ "modelVersion": vfModuleModel.version,\r
+ "modelNameVersionId": vfModuleModel.uuid,\r
+ "modelCustomizationName": vfModuleModel.modelCustomizationName,\r
+ "customizationUuid": vfModuleModel.customizationUuid,\r
+ "modelName": vfModuleModel.name,\r
+ "inputs": ""\r
+ });\r
+ }\r
+ }\r
+ }\r
+\r
+ function setCurrentVolumeGroupModelInfoFromScope(vnf, vfModule) {\r
+ var svcModel = $scope.service.convertedModel;\r
+\r
+ var vnfModelCustomizationUuid = null;\r
+ var vnfModel = null;\r
+ var vnfModelVersionId = null;\r
+\r
+ vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
+ vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
+ "modelInvariantId": "",\r
+ "modelVersion": "",\r
+ "modelNameVersionId": "",\r
+ "modelCustomizationName": "",\r
+ "customizationUuid": "",\r
+ "modelName": "",\r
+ "inputs": ""\r
+ });\r
+\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (vnfModelCustomizationUuid != null)) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ }\r
+ else {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ }\r
+ }\r
+\r
+\r
+ // volume groups don't have model-invariant-id/version in a&ai.\r
+ // Their model-invariant-id/version is the one for the associated vfModule\r
+\r
+ var vfModuleModelVersionId = vfModule.object[FIELD.ID.MODEL_VERSION_ID];\r
+ var vfModuleCustomizationUuid = vfModule.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+ var volGroupModel = null;\r
+\r
+ if (!($scope.isObjectEmpty(vnfModel)) && !($scope.isObjectEmpty(vnfModel.volumeGroups))) {\r
+ if ((svcModel.isNewFlow) && (UtilityService.hasContents(vfModuleCustomizationUuid))) {\r
+ volGroupModel = vnfModel.volumeGroups[vfModuleCustomizationUuid];\r
+ }\r
+ else {\r
+ volGroupModel = vnfModel.volumeGroups[vfModuleModelVersionId];\r
+ }\r
+ if (!($scope.isObjectEmpty(volGroupModel))) {\r
+ DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
+ "modelInvariantId": volGroupModel.invariantUuid,\r
+ "modelVersion": volGroupModel.version,\r
+ "modelNameVersionId": volGroupModel.uuid,\r
+ "modelCustomizationName": volGroupModel.modelCustomizationName,\r
+ "customizationUuid": volGroupModel.customizationUuid,\r
+ "modelName": volGroupModel.name,\r
+ "inputs": ""\r
+ });\r
+\r
+ }\r
+ }\r
+ }\r
+\r
+ function setCurrentVolumeGroupModelInfoByVfModuleFromScope(vnf, volumeGroup) {\r
+ var svcModel = $scope.service.convertedModel;\r
+\r
+ var vnfModelCustomizationUuid = null;\r
+ var vnfModel = null;\r
+ var vnfModelVersionId = null;\r
+\r
+ vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
+ vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
+ "modelInvariantId": "",\r
+ "modelVersion": "",\r
+ "modelNameVersionId": "",\r
+ "modelCustomizationName": "",\r
+ "customizationUuid": "",\r
+ "modelName": "",\r
+ "inputs": ""\r
+ });\r
+\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (vnfModelCustomizationUuid != null)) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ }\r
+ else {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ }\r
+ }\r
+\r
+\r
+ // volume groups don't have model-invariant-id/version in a&ai.\r
+ // Their model-invariant-id/version is the one for the associated vfModule\r
+\r
+ var vfModuleModelVersionId = volumeGroup.object[FIELD.ID.VF_MODULE_MODEL_VERSION_ID];\r
+ var vfModuleCustomizationUuid = volumeGroup.object[FIELD.ID.VF_MODULE_MODEL_CUSTOMIZATION_ID];\r
+ var volGroupModel = null;\r
+ if ((!($scope.isObjectEmpty(vnfModel))) && (!($scope.isObjectEmpty(vnfModel.volumeGroups)))) {\r
+ if ((svcModel.isNewFlow) && (UtilityService.hasContents(vfModuleCustomizationUuid))) {\r
+ volGroupModel = vnfModel.volumeGroups[vfModuleCustomizationUuid];\r
+ }\r
+ else {\r
+ volGroupModel = vnfModel.volumeGroups[vfModuleModelVersionId];\r
+ }\r
+ if (!($scope.isObjectEmpty(volGroupModel))) {\r
+ DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
+ "modelInvariantId": volGroupModel.invariantUuid,\r
+ "modelVersion": volGroupModel.version,\r
+ "modelNameVersionId": volGroupModel.uuid,\r
+ "modelCustomizationName": volGroupModel.modelCustomizationName,\r
+ "customizationUuid": volGroupModel.customizationUuid,\r
+ "modelName": volGroupModel.name,\r
+ "inputs": ""\r
+ });\r
+\r
+ }\r
+ }\r
+ }\r
+\r
+ $scope.deleteVnf = function (serviceObject, vnf) {\r
+ console.log("Removing VNF " + vnf.name);\r
+\r
var serviceInstance = serviceObject.object;\r
var svcModel = $scope.service.convertedModel;\r
- var netModel;\r
- DataService.setInventoryItem(network.object);\r
- // set model default and override later if found\r
- DataService.setModelInfo(COMPONENT.NETWORK, {});\r
- \r
- if ( network.object != null ) {\r
- \r
- //var netModelInvariantUuid = network.object[FIELD.ID.MODEL_INVAR_ID];\r
- var netModelVersionId = network.object[FIELD.ID.MODEL_VERSION_ID]; // model uuid\r
- var netModelCustomizationUuid = network.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- if ( (!($scope.isObjectEmpty(svcModel))) && ( !($scope.isObjectEmpty(svcModel.networks) ) ) ) {\r
- if ( (svcModel.isNewFlow) && (UtilityService.hasContents(netModelCustomizationUuid) ) ) {\r
- netModel = svcModel.networks[netModelCustomizationUuid];\r
- }\r
- else {\r
- \r
- if ( UtilityService.hasContents(netModelVersionId) ) {\r
- netModel = svcModel.networks[netModelVersionId];\r
- }\r
- \r
- }\r
- }\r
- }\r
- if (!($scope.isObjectEmpty(netModel) ) ) {\r
- DataService.setModelInfo(COMPONENT.NETWORK, {\r
- "modelInvariantId": netModel.invariantUuid,\r
- "modelVersion": netModel.version,\r
- "modelNameVersionId": netModel.uuid,\r
- "modelCustomizationName": netModel.modelCustomizationName,\r
- "customizationUuid": netModel.customizationUuid,\r
- "modelName": netModel.name,\r
- "inputs": ""\r
- });\r
- }\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- DataService.setServiceName($scope.service.model.service.name);\r
- DataService.setServiceUuid($scope.service.model.service.uuid);\r
- DataService.setNetworkInstanceId(network.object[FIELD.ID.NETWORK_ID]);\r
- \r
- $scope.$broadcast(COMPONENT.DELETE_COMPONENT, {\r
- componentId : COMPONENT.NETWORK,\r
- callbackFunction : deleteCallbackFunction\r
- });\r
- };\r
-\r
- $scope.deleteService = function(serviceObject) {\r
-\r
- var serviceInstance = serviceObject.object;\r
- \r
- console.log("Removing Service " + $scope.service.instance.name);\r
-\r
- DataService.setALaCarte (true);\r
- DataService.setInventoryItem(serviceInstance);\r
- \r
- DataService.setModelInfo(COMPONENT.SERVICE, {\r
- "modelInvariantId": serviceInstance[FIELD.ID.MODEL_INVAR_ID],\r
- "modelVersion": $scope.service.model.service.version,\r
- "modelNameVersionId": $scope.service.model.service.uuid,\r
- "modelName": $scope.service.model.service.name,\r
- "inputs": ""\r
- });\r
- \r
- DataService.setSubscriberName(serviceObject[FIELD.ID.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- DataService.setGlobalCustomerId(serviceObject[COMPONENT.GLOBAL_CUSTOMER_ID]);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- \r
- DataService.setServiceName($scope.service.model.service.name);\r
- \r
- DataService.setServiceUuid($scope.service.model.service.uuid);\r
- \r
- $scope.$broadcast(COMPONENT.DELETE_COMPONENT, {\r
- componentId : COMPONENT.SERVICE,\r
- callbackFunction : deleteServiceInstanceCallbackFunction\r
- });\r
- \r
- };\r
-\r
- $scope.deleteVfModule = function(serviceObject, vfModule, vnf) {\r
-\r
- console.log("Removing VF-Module " + vfModule.name);\r
- \r
+ DataService.setInventoryItem(vnf.object);\r
+\r
+ /*var vnftype = vnf.object['vnf-type'];\r
+ if (vnftype == null)\r
+ vnftype = "";\r
+ else\r
+ {\r
+ var n = vnftype.search("/");\r
+ if (n >= 0)\r
+ vnftype = vnftype.substring(n+1);\r
+ }*/\r
+\r
+ var svcModel = $scope.service.convertedModel;\r
+ var vnfModelInvariantUuid = null;\r
+ var vnfModelVersion = null;\r
+ var vnfModelCustomizationUuid = null;\r
+ var vnfModel = null;\r
+ var vnfModelVersionId = null;\r
+\r
+ vnfModelInvariantUuid = vnf.object[FIELD.ID.MODEL_INVAR_ID];\r
+ vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
+ vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ DataService.setModelInfo(COMPONENT.VNF, {\r
+ "modelInvariantId": vnfModelInvariantUuid,\r
+ "modelVersion": "",\r
+ "modelNameVersionId": vnfModelVersionId,\r
+ "modelCustomizationName": "",\r
+ "customizationUuid": vnfModelCustomizationUuid,\r
+ "modelName": "",\r
+ "inputs": ""\r
+ });\r
+\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (vnfModelCustomizationUuid != null)) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ }\r
+ else {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ }\r
+ //console.log ( "vnf models: "); console.log ( JSON.stringify ($scope.service.convertedModel.vnfs, null, 4) );\r
+ if (!($scope.isObjectEmpty(vnfModel))) {\r
+\r
+ DataService.setModelInfo(COMPONENT.VNF, {\r
+ "modelInvariantId": vnfModel.invariantUuid,\r
+ "modelVersion": vnfModel.version,\r
+ "modelNameVersionId": vnfModel.uuid,\r
+ "modelCustomizationName": vnfModel.modelCustomizationName,\r
+ "customizationUuid": vnfModel.customizationUuid,\r
+ "modelName": vnfModel.name,\r
+ "inputs": ""\r
+ });\r
+ }\r
+ }\r
+\r
+ DataService.setVnfInstanceId(vnf.object[FIELD.ID.VNF_ID]);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ DataService.setServiceUuid($scope.service.model.service.uuid);\r
+\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.VNF,\r
+ callbackFunction: deleteOrResumeCallback,\r
+ dialogMethod: COMPONENT.DELETE\r
+ });\r
+\r
+ };\r
+\r
+ $scope.deleteVolumeGroup = function (serviceObject, vnf, vfModule, volumeGroup) {\r
+\r
+ console.log("Removing Volume Group " + volumeGroup.name);\r
+ var haveModel = false;\r
+\r
var serviceInstance = serviceObject.object;\r
\r
- DataService.setInventoryItem(vfModule.object);\r
- \r
- var svcModel = $scope.service.convertedModel;\r
-\r
- //var vnfModelInvariantUuid = vnf.object[FIELD.ID.MODEL_INVAR_ID];\r
- var vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
- var vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];; \r
- var vfModuleInstanceID = vfModule.object[FIELD.ID.VF_MODULE_ID];\r
- if (vfModuleInstanceID == null) {\r
- vfModuleInstanceID = "";\r
- }\r
- \r
- var vnfModel = null;\r
- var vfModuleModel = null;\r
- \r
- DataService.setModelInfo(COMPONENT.VF_MODULE, {\r
- "modelInvariantId": "",\r
- "modelVersion": "",\r
- "modelNameVersionId": "",\r
- "modelCustomizationName": "",\r
- "customizationUuid": "",\r
- "modelName": "",\r
- "inputs": ""\r
- });\r
- \r
- if ( (!($scope.isObjectEmpty(svcModel))) && ( !($scope.isObjectEmpty(svcModel.vnfs) ) ) ) {\r
- if ( (svcModel.isNewFlow) && (vnfModelCustomizationUuid != null ) ) {\r
- vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
- \r
- var vfModuleCustomizationUuid = vfModule.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- if ( !($scope.isObjectEmpty(vnfModel.vfModules) ) && UtilityService.hasContents(vfModuleCustomizationUuid) ) {\r
- \r
- vfModuleModel = vnfModel.vfModules[vfModuleCustomizationUuid];\r
- \r
- }\r
- }\r
- else {\r
- // old flow\r
- if (vnfModelVersionId != null ) {\r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- }\r
- //var vfModuleInvariantUuid = vfModule.object[FIELD.ID.MODEL_INVAR_ID];\r
- var vfModuleModelVersionId = vfModule.object[FIELD.ID.MODEL_VERSION_ID];\r
- if ( (!($scope.isObjectEmpty(vnfModel))) && (!($scope.isObjectEmpty(vnfModel.vfModules))) && \r
- UtilityService.hasContents(vfModuleModelVersionId) ) {\r
- vfModuleModel = vnfModel.vfModules[vfModuleModelVersionId];\r
- }\r
- }\r
- if ( !($scope.isObjectEmpty(vfModuleModel)) ) {\r
- DataService.setModelInfo(COMPONENT.VF_MODULE, {\r
- "modelInvariantId": vfModuleModel.invariantUuid,\r
- "modelVersion": vfModuleModel.version,\r
- "modelNameVersionId": vfModuleModel.uuid,\r
- "modelCustomizationName": vfModuleModel.modelCustomizationName,\r
- "customizationUuid": vfModuleModel.customizationUuid,\r
- "modelName": vfModuleModel.name,\r
- "inputs": ""\r
- });\r
- }\r
- }\r
-\r
- DataService.setVnfInstanceId(vnf.object[FIELD.ID.VNF_ID]);\r
- DataService.setVfModuleInstanceId(vfModuleInstanceID);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- \r
- DataService.setServiceName($scope.service.model.service.name);\r
- \r
- DataService.setServiceUuid($scope.service.model.service.uuid);\r
- \r
- $scope.$broadcast(COMPONENT.DELETE_COMPONENT, {\r
- componentId : COMPONENT.VF_MODULE,\r
- callbackFunction : deleteCallbackFunction\r
- });\r
- \r
- return;\r
-\r
- };\r
-\r
- $scope.deleteVnf = function(serviceObject, vnf) {\r
-\r
- console.log("Removing VNF " + vnf.name);\r
- \r
- var serviceInstance = serviceObject.object;\r
- var svcModel = $scope.service.convertedModel;\r
- DataService.setInventoryItem(vnf.object);\r
- \r
- /*var vnftype = vnf.object['vnf-type'];\r
- if (vnftype == null)\r
- vnftype = "";\r
- else\r
- {\r
- var n = vnftype.search("/");\r
- if (n >= 0)\r
- vnftype = vnftype.substring(n+1);\r
- }*/\r
- \r
- var svcModel = $scope.service.convertedModel;\r
- var vnfModelInvariantUuid = null;\r
- var vnfModelVersion = null;\r
- var vnfModelCustomizationUuid = null;\r
- var vnfModel = null;\r
- var vnfModelVersionId = null;\r
- \r
- vnfModelInvariantUuid = vnf.object[FIELD.ID.MODEL_INVAR_ID];\r
- vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
- vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- DataService.setModelInfo(COMPONENT.VNF, {\r
- "modelInvariantId": vnfModelInvariantUuid,\r
- "modelVersion": "",\r
- "modelNameVersionId": vnfModelVersionId,\r
- "modelCustomizationName": "",\r
- "customizationUuid": vnfModelCustomizationUuid,\r
- "modelName": "",\r
- "inputs": ""\r
- });\r
- \r
- if ( (!($scope.isObjectEmpty(svcModel))) && ( !($scope.isObjectEmpty(svcModel.vnfs) ) ) ) {\r
- if ( (svcModel.isNewFlow) && (vnfModelCustomizationUuid != null ) ) {\r
- vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
- }\r
- else {\r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- }\r
- //console.log ( "vnf models: "); console.log ( JSON.stringify ($scope.service.convertedModel.vnfs, null, 4) );\r
- if ( !($scope.isObjectEmpty(vnfModel) ) ) {\r
- \r
- DataService.setModelInfo(COMPONENT.VNF, {\r
- "modelInvariantId": vnfModel.invariantUuid,\r
- "modelVersion": vnfModel.version,\r
- "modelNameVersionId": vnfModel.uuid,\r
- "modelCustomizationName": vnfModel.modelCustomizationName,\r
- "customizationUuid": vnfModel.customizationUuid,\r
- "modelName": vnfModel.name,\r
- "inputs": ""\r
- });\r
- }\r
- } \r
- \r
- DataService.setVnfInstanceId(vnf.object[FIELD.ID.VNF_ID]);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- \r
- DataService.setServiceName($scope.service.model.service.name);\r
- \r
- DataService.setServiceUuid($scope.service.model.service.uuid);\r
- \r
- $scope.$broadcast(COMPONENT.DELETE_COMPONENT, {\r
- componentId : COMPONENT.VNF,\r
- callbackFunction : deleteCallbackFunction\r
- });\r
- \r
- };\r
- \r
- \r
-\r
- $scope.deleteVolumeGroup = function(serviceObject, vnf, vfModule, volumeGroup) {\r
-\r
- console.log("Removing Volume Group " + volumeGroup.name);\r
- var haveModel = false;\r
- var svcModel = $scope.service.convertedModel;\r
- \r
- var vnfModelInvariantUuid = null;\r
- var vnfModelVersion = null;\r
- var vnfModelCustomizationUuid = null;\r
- var vnfModel = null;\r
- var vnfModelVersionId = null;\r
- \r
- vnfModelInvariantUuid = vnf.object[FIELD.ID.MODEL_INVAR_ID];\r
- vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
- vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
- "modelInvariantId": "",\r
- "modelVersion": "",\r
- "modelNameVersionId": "",\r
- "modelCustomizationName": "",\r
- "customizationUuid": "",\r
- "modelName": "",\r
- "inputs": ""\r
- });\r
- \r
- if ( (!($scope.isObjectEmpty(svcModel))) && ( !($scope.isObjectEmpty(svcModel.vnfs) ) ) ) {\r
- if ( (svcModel.isNewFlow) && (vnfModelCustomizationUuid != null ) ) {\r
- vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
- }\r
- else {\r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- }\r
- }\r
- \r
- \r
- // volume groups don't have model-invariant-id/version in a&ai.\r
- // Their model-invariant-id/version is the one for the associated vfModule\r
- \r
- var vfModuleInvariantUuid = vfModule.object[FIELD.ID.MODEL_INVAR_ID];\r
- var vfModuleModelVersionId = vfModule.object[FIELD.ID.MODEL_VERSION_ID];\r
- var vfModuleCustomizationUuid = vfModule.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- var volGroupModel = null;\r
- \r
- if ( !($scope.isObjectEmpty(vnfModel.volumeGroups) ) ) {\r
- if ( ( !($scope.isObjectEmpty(vnfModel) ) ) && ( !($scope.isObjectEmpty(vnfModel.volumeGroups) ) ) ) {\r
- if ( (svcModel.isNewFlow) && (UtilityService.hasContents(vfModuleCustomizationUuid) ) ){\r
- volGroupModel = vnfModel.volumeGroups[vfModuleCustomizationUuid];\r
- }\r
- else {\r
- volGroupModel = vnfModel.volumeGroups[vfModuleModelVersionId];\r
- }\r
- if ( !($scope.isObjectEmpty(volGroupModel) ) ) {\r
- DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
- "modelInvariantId": volGroupModel.invariantUuid,\r
- "modelVersion": volGroupModel.version,\r
- "modelNameVersionId": volGroupModel.uuid,\r
- "modelCustomizationName": volGroupModel.modelCustomizationName,\r
- "customizationUuid": volGroupModel.customizationUuid,\r
- "modelName": volGroupModel.name,\r
- "inputs": ""\r
- });\r
- \r
- }\r
- }\r
- }\r
-\r
- var serviceInstance = serviceObject.object;\r
- \r
+ setCurrentVolumeGroupModelInfoFromScope(vnf, vfModule);\r
+\r
DataService.setInventoryItem(volumeGroup.object);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- \r
- DataService.setServiceName($scope.service.model.service.name);\r
- \r
- DataService.setServiceUuid($scope.service.model.service.uuid);\r
- DataService.setVnfInstanceId(vnf.nodeId);\r
- DataService.setVolumeGroupInstanceId(volumeGroup.nodeId);\r
- \r
- $scope.$broadcast(COMPONENT.DELETE_COMPONENT, {\r
- componentId : COMPONENT.VOLUME_GROUP,\r
- });\r
- };\r
- \r
- $scope.deleteVnfVolumeGroup = function(serviceObject, vnf, volumeGroup) {\r
-\r
- console.log("Removing Volume Group " + volumeGroup.name);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ DataService.setServiceUuid($scope.service.model.service.uuid);\r
+ DataService.setVnfInstanceId(vnf.nodeId);\r
+ DataService.setVolumeGroupInstanceId(volumeGroup.nodeId);\r
+\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.VOLUME_GROUP,\r
+ dialogMethod: COMPONENT.DELETE\r
+ });\r
+ };\r
+\r
+ $scope.deleteVnfVolumeGroup = function (serviceObject, vnf, volumeGroup) {\r
+\r
+ console.log("Removing Volume Group " + volumeGroup.name);\r
var serviceInstance = serviceObject.object;\r
- \r
+\r
DataService.setInventoryItem(volumeGroup.object);\r
- \r
- var svcModel = $scope.service.convertedModel;\r
- \r
- var vnfModelInvariantUuid = vnf.object[FIELD.ID.MODEL_INVAR_ID];\r
- var vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
- var vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- var volGroupModelInvariantUuid = volumeGroup.object[FIELD.ID.MODEL_INVAR_ID];\r
- var volGroupModelVersionId = volumeGroup.object[FIELD.ID.MODEL_VERSION_ID];\r
- var volGroupModelCustomizationUuid = volumeGroup.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- var vnfModel = null;\r
- var volGroupModel = null;\r
- \r
- // send an empty model by default since model is not required for deletes\r
- DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {});\r
-\r
- if ( svcModel.isNewFlow ) {\r
- vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
- if ( UtilityService.hasContents (volGroupModelCustomizationUuid) ) {\r
- volGroupModel = vnfModel.volumeGroups[volGroupModelCustomizationUuid];\r
- }\r
- }\r
- else {\r
- \r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- if ( UtilityService.hasContents (volGroupModelVersionId) ) {\r
- volGroupModel = vnfModel.volumeGroups[volGroupModelVersionId];\r
- }\r
- }\r
- if ( !($scope.isObjectEmpty(volGroupModel) ) ) {\r
- DataService.setModelInfo(COMPONENT.VOLUME_GROUP, { \r
- "modelInvariantId": volGroupModel.invariantUuid,\r
- "modelVersion": volGroupModel.version,\r
- "modelNameVersionId": volGroupModel.uuid,\r
- "modelName": volGroupModel.name,\r
- "modelCustomizationName": volGroupModel.modelCustomizationName,\r
- "customizationUuid": volGroupModel.customizationUuid,\r
- "inputs": ""\r
- });\r
- }\r
- \r
- DataService.setVnfInstanceId(vnf.object[FIELD.ID.VNF_ID]);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- \r
- DataService.setServiceName($scope.service.model.service.name);\r
- \r
- DataService.setServiceUuid($scope.service.model.service.uuid);\r
- DataService.setVnfInstanceId(vnf.nodeId);\r
- DataService.setVolumeGroupInstanceId(volumeGroup.nodeId);\r
- \r
- $scope.$broadcast(COMPONENT.DELETE_COMPONENT, {\r
- componentId : COMPONENT.VOLUME_GROUP,\r
- callbackFunction : deleteCallbackFunction\r
- });\r
- };\r
-\r
- $scope.describeNetwork = function(serviceObject, networkObject) {\r
- var serviceInstance = serviceObject.object;\r
- var network = networkObject.object;\r
- //console.log ("networkObject="); console.log (JSON.stringify(networkObject, null, 4));\r
- \r
- DataService.setResCustomizationUuid(" ");\r
- \r
- var svcModel = $scope.service.convertedModel;\r
- var netModel = null;\r
- \r
- if ( !($scope.isObjectEmpty(network) ) ) {\r
- \r
- var netModelInvariantUuid = network[FIELD.ID.MODEL_INVAR_ID];\r
- var netModelVersionId = network[FIELD.ID.MODEL_VERSION_ID];\r
- var netModelCustomizationUuid = network[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- if ( UtilityService.hasContents (netModelCustomizationUuid) ) {\r
- // set it to what came from a&ai \r
- DataService.setResCustomizationUuid(netModelCustomizationUuid);\r
- }\r
- \r
- if ( (!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.networks))) ) {\r
- if ( svcModel.isNewFlow ) {\r
- netModel = svcModel.networks[netModelCustomizationUuid];\r
- }\r
- else {\r
- netModel = svcModel.networks[netModelVersionId];\r
- }\r
- /*\r
- * The details pop-up should use a&ai info\r
- * if ( !($scope.isObjectEmpty(netModel) ) ) {\r
- if (UtilityService.hasContents(netModel.customizationUuid)) {\r
- DataService.setResCustomizationUuid(netModel.customizationUuid);\r
- }\r
- }*/\r
- }\r
- }\r
- \r
- DataService.setNetworkInstanceId(network[FIELD.ID.NETWORK_ID]);\r
- DataService.setInventoryItem(networkObject);\r
- DataService.setSubscriberName(serviceObject.subscriberName);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
- componentId : COMPONENT.NETWORK\r
- });\r
- };\r
-\r
- // for service instance id - no need for this!\r
- $scope.describeService = function(serviceObject) {\r
- var serviceInstance = serviceObject.object;\r
- \r
- DataService.setInventoryItem(serviceInstance);\r
- //DataService.setModelInfo(serviceInstance['service-instance-id'], serviceInstance);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- //Display popup with additional service information\r
- $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
- componentId : COMPONENT.SERVICE\r
- });\r
- \r
- };\r
-\r
- $scope.describeVfModule = function(serviceObject, vfModuleObject, vnf) {\r
- var serviceInstance = serviceObject.object;\r
- var vfModule = vfModuleObject.object;\r
- \r
- /*var vfModuleInvariantUuid = vfModule[FIELD.ID.MODEL_INVAR_ID];\r
- var vfModuleModelVersionId = vfModule[FIELD.ID.MODEL_VERSION_ID];*/\r
- var vfModuleCustomizationUuid = vfModule[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
-\r
- DataService.setCustomizationUuid(" ");\r
- if ( UtilityService.hasContents (vfModuleCustomizationUuid) ) {\r
- DataService.setCustomizationUuid(vfModuleCustomizationUuid);\r
- }\r
- \r
- //Display popup with additional VF-Module information\r
- DataService.setVfModuleInstanceId(vfModule[FIELD.ID.VF_MODULE_ID]);\r
- DataService.setInventoryItem(vfModule)\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
- componentId : COMPONENT.VF_MODULE\r
- });\r
- };\r
-\r
- $scope.getStatusOfVnf = function(serviceObject, vnfObject) {\r
- var serviceInstance = serviceObject.object;\r
- var vnf = vnfObject.object;\r
- \r
- DataService.setVnfInstanceId(vnf[FIELD.ID.VNF_ID]);\r
- DataService.setInventoryItem(vnf);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- DataService.setServiceInstanceName(serviceInstance[FIELD.ID.SERVICE_INSTANCE_NAME]);\r
- \r
- $scope.$broadcast(COMPONENT.COMPONENT_STATUS, {\r
- componentId : COMPONENT.VNF,\r
- callbackFunction : updateProvStatusVnfCallbackFunction\r
- });\r
- };\r
-\r
- $scope.describeVnf = function(serviceObject, vnfObject) {\r
- var serviceInstance = serviceObject.object;\r
- var vnf = vnfObject.object;\r
- DataService.setResCustomizationUuid(" ");\r
- \r
- //var vnfInvariantUuid = vnf[FIELD.ID.MODEL_INVAR_ID];\r
- //var vnfVersionId = vnf[FIELD.ID.MODEL_VERSION_ID];\r
- var vnfCustomizationUuid = vnf[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- \r
- if ( UtilityService.hasContents (vnfCustomizationUuid) ) {\r
- DataService.setResCustomizationUuid(vnfCustomizationUuid);\r
- }\r
- //Display popup with additional VNF information\r
- DataService.setVnfInstanceId(vnf[FIELD.ID.VNF_ID]);\r
- DataService.setInventoryItem(vnf);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
- componentId : COMPONENT.VNF\r
- });\r
- };\r
-\r
- $scope.describeVolumeGroup = function(serviceObject, vnf, volumeGroupObject) {\r
- \r
- var serviceInstance = serviceObject.object;\r
- var volumeGroup = volumeGroupObject.object;\r
- \r
- //var volGroupInvariantUuid = volumeGroup[FIELD.ID.MODEL_INVAR_ID];\r
- //var volGroupVersionId = volumeGroup[FIELD.ID.MODEL_VERSION_ID];\r
- var volGroupCustomizationUuid = volumeGroup[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
-\r
- DataService.setCustomizationUuid(" "); \r
- if ( UtilityService.hasContents(volGroupCustomizationUuid) ) {\r
- DataService.setCustomizationUuid(volGroupCustomizationUuid); \r
- }\r
- DataService.setVolumeGroupInstanceId(volumeGroup[FIELD.ID.VOLUME_GROUP_ID]);\r
- DataService.setInventoryItem(volumeGroup);\r
- \r
- DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
- DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
- DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
- \r
- \r
- $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
- componentId : COMPONENT.VOLUME_GROUP\r
- });\r
- };\r
-\r
- $scope.addNetworkInstance = function(netModel, existingVnfs) {\r
- \r
- // For networks we assume that we always follow the new flow\r
- console.log("Adding network to service instance" + this.service.instance.name);\r
- if ( VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED && (UtilityService.hasContents(existingVnfs)) && (existingVnfs.length > 0) ) {\r
- var msg = VnfService.isVnfListStatusValid (existingVnfs);\r
- if ( msg != "" ) {\r
- alert ( msg );\r
- return;\r
- }\r
- }\r
- \r
- DataService.setSubscriberName($scope.service.instance.subscriberName);\r
- DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
- DataService.setServiceType($scope.service.instance.serviceType);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- DataService.setServiceInstanceId($scope.service.instance.id);\r
- DataService.setServiceName($scope.service.model.service.name);\r
- \r
- DataService.setModelInfo(COMPONENT.NETWORK, {\r
- "modelType": "network",\r
- "modelInvariantId": netModel.invariantUuid,\r
- "modelVersion": netModel.version,\r
- "modelNameVersionId": netModel.uuid,\r
- "modelName": netModel.name,\r
- "modelCustomizationName": netModel.modelCustomizationName,\r
- "customizationUuid": netModel.customizationUuid,\r
- "inputs": "",\r
- "displayInputs": netModel.displayInputs\r
- });\r
- \r
- DataService.setModelInfo(COMPONENT.SERVICE, {\r
- "modelInvariantId": $scope.service.model.service.invariantUuid, \r
- "modelVersion": $scope.service.model.service.version,\r
- "modelNameVersionId": $scope.service.model.service.uuid,\r
- "modelName": $scope.service.model.service.name,\r
- "inputs": ""\r
- });\r
- \r
- $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
- componentId : COMPONENT.NETWORK,\r
- callbackFunction : createVnfCallbackFunction\r
- }); \r
- };\r
-\r
- $scope.addVnfInstance = function(vnf, existingVnfs) {\r
- \r
- if ( VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED && (UtilityService.hasContents(existingVnfs)) && (existingVnfs.length > 0) ) {\r
- var msg = VnfService.isVnfListStatusValid (existingVnfs);\r
- if ( msg != "" ) {\r
- alert ( msg );\r
- return;\r
- }\r
- }\r
- DataService.setSubscriberName($scope.service.instance.subscriberName);\r
- DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
- DataService.setServiceType($scope.service.instance.serviceType);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- DataService.setServiceInstanceId($scope.service.instance.id);\r
- DataService.setServiceName($scope.service.model.service.name);\r
- \r
- console.log ( "existingVnfs: " ); console.log (JSON.stringify ( existingVnfs, null, 4));\r
- var vnf_type = "";\r
- var vnf_role = "";\r
- var vnf_function = "";\r
- var vnf_code = "";\r
- \r
- if (UtilityService.hasContents (vnf.nfType) ) {\r
- vnf_type = vnf.nfType;\r
- }\r
- if (UtilityService.hasContents (vnf.nfRole) ) {\r
- vnf_role = vnf.nfRole;\r
- }\r
- if (UtilityService.hasContents (vnf.nfFunction) ) {\r
- vnf_function = vnf.nfFunction;\r
- }\r
- if (UtilityService.hasContents (vnf.nfCode) ) {\r
- vnf_code = vnf.nfCode;\r
- }\r
- DataService.setModelInfo(COMPONENT.VNF, {\r
- "modelType": "vnf",\r
- "modelInvariantId": vnf.invariantUuid,\r
- "modelVersion": vnf.version,\r
- "modelNameVersionId": vnf.uuid,\r
- "modelName": vnf.name,\r
- "modelCustomizationName": vnf.modelCustomizationName,\r
- "customizationUuid": vnf.customizationUuid,\r
- "inputs": "",\r
- "displayInputs": vnf.displayInputs,\r
- "vnfType": vnf_type,\r
- "vnfRole": vnf_role,\r
- "vnfFunction": vnf_function,\r
- "vnfCode": vnf_code\r
- });\r
- \r
- DataService.setModelInstanceName($scope.service.model.service.name);\r
- \r
- DataService.setModelInfo(COMPONENT.SERVICE, {\r
- "modelInvariantId": $scope.service.model.service.invariantUuid, \r
- "modelVersion": $scope.service.model.service.version,\r
- "modelNameVersionId": $scope.service.model.service.uuid,\r
- "modelName": $scope.service.model.service.name,\r
- "inputs": ""\r
- });\r
- \r
- $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
- componentId : COMPONENT.VNF,\r
- callbackFunction : createVnfCallbackFunction\r
- }); \r
- };\r
-\r
- $scope.addVfModuleInstance = function(vnfInstance, vfModuleModel) {\r
- \r
- if ( VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED ) {\r
- var msg = VnfService.isVnfStatusValid (vnfInstance);\r
- if ( msg != "" ) {\r
- alert ( msg );\r
- return;\r
- }\r
- \r
- }\r
- var svcModel = $scope.service.convertedModel;\r
- DataService.setSubscriberName($scope.service.instance.subscriberName);\r
- DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
- DataService.setServiceType($scope.service.instance.serviceType);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- DataService.setServiceInstanceId($scope.service.instance.id);\r
- DataService.setServiceName($scope.service.model.service.name);\r
-\r
- var vnfModelInvariantUuid = vnfInstance.object[FIELD.ID.MODEL_INVAR_ID];\r
- var vnfModelVersionId = vnfInstance.object[FIELD.ID.MODEL_VERSION_ID];\r
- var vnfModelCustomizationUuid = vnfInstance.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- var vnfModel = null;\r
- if ( svcModel.isNewFlow ) {\r
- vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
- }\r
- else {\r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- }\r
- \r
- var availableVolumeGroupList = [];\r
- angular.forEach(vnfInstance[FIELD.ID.AVAILABLEVOLUMEGROUPS], function(volumeGroupInstance, key) {\r
- availableVolumeGroupList.push({"instance": volumeGroupInstance});\r
- });\r
- \r
- if (vfModuleModel.volumeGroupAllowed) {\r
- DataService.setAvailableVolumeGroupList(availableVolumeGroupList);\r
- }\r
- \r
- DataService.setModelInfo(COMPONENT.SERVICE, {\r
- "modelInvariantId": $scope.service.model.service.invariantUuid,\r
- "modelVersion": $scope.service.model.service.version,\r
- "modelNameVersionId": $scope.service.model.service.uuid,\r
- "modelName": $scope.service.model.service.name,\r
- "inputs": ""\r
- });\r
-\r
- DataService.setVnfInstanceId(vnfInstance.object[FIELD.ID.VNF_ID]);\r
- \r
- DataService.setModelInfo(COMPONENT.VNF, {\r
- "modelInvariantId": vnfModel.invariantUuid,\r
- "modelVersion": vnfModel.version,\r
- "modelNameVersionId": vnfModel.uuid,\r
- "modelName": vnfModel.name,\r
- "modelCustomizationName": vnfModel.modelCustomizationName,\r
- "customizationUuid": vnfModel.customizationUuid,\r
- "inputs": ""\r
- });\r
- \r
- DataService.setModelInfo(COMPONENT.VF_MODULE, {\r
- "modelInvariantId": vfModuleModel.invariantUuid,\r
- "modelVersion": vfModuleModel.version,\r
- "modelNameVersionId": vfModuleModel.uuid,\r
- "customizationUuid": vfModuleModel.customizationUuid,\r
- "modelCustomizationName": vfModuleModel.modelCustomizationName,\r
- "modelName": vfModuleModel.name,\r
- "inputs": ""\r
- });\r
- \r
- $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
- componentId : COMPONENT.VF_MODULE,\r
- callbackFunction : createVfModuleCallbackFunction\r
- });\r
- \r
- };\r
-\r
- $scope.addVolumeGroupInstance = function(vnfInstance, volumeGroupModel) {\r
- if ( VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED ) {\r
- var msg = VnfService.isVnfStatusValid (vnfInstance);\r
- if ( msg != "" ) {\r
- alert ( msg );\r
- return;\r
- }\r
- }\r
- var svcModel = $scope.service.convertedModel;\r
- DataService.setSubscriberName($scope.service.instance.subscriberName);\r
- DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
- DataService.setServiceType($scope.service.instance.serviceType);\r
- DataService.setServiceInstanceName($scope.service.instance.name);\r
- DataService.setServiceInstanceId($scope.service.instance.id);\r
- DataService.setServiceName($scope.service.model.service.name);\r
-\r
- DataService.setModelInfo(COMPONENT.SERVICE, {\r
- "modelInvariantId": $scope.service.model.service.invariantUuid,\r
- "modelVersion": $scope.service.model.service.version,\r
- "modelNameVersionId": $scope.service.model.service.uuid,\r
- "modelName": $scope.service.model.service.name,\r
- "inputs": ""\r
- });\r
-\r
- DataService.setVnfInstanceId(vnfInstance.object[FIELD.ID.VNF_ID]);\r
-\r
- var vnfModelInvariantUuid = vnfInstance.object[FIELD.ID.MODEL_INVAR_ID];\r
- var vnfModelVersionId = vnfInstance.object[FIELD.ID.MODEL_VERSION_ID];\r
- var vnfCustomizationUuid = vnfInstance.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
- var vnfModel = null;\r
- \r
- if ( svcModel.isNewFlow ) {\r
- vnfModel = svcModel.vnfs[vnfCustomizationUuid];\r
- }\r
- else {\r
- vnfModel = svcModel.vnfs[vnfModelVersionId];\r
- }\r
- \r
- DataService.setModelInfo(COMPONENT.VNF, {\r
- "modelInvariantId": vnfModel.invariantUuid,\r
- "modelVersion": vnfModel.version,\r
- "modelNameVersionId": vnfModel.uuid,\r
- "modelName": vnfModel.name,\r
- "modelCustomizationName": vnfModel.modelCustomizationName,\r
- "customizationUuid": vnfModel.customizationUuid,\r
- "inputs": ""\r
- });\r
- \r
- DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
- "modelInvariantId": volumeGroupModel.invariantUuid,\r
- "modelVersion": volumeGroupModel.version,\r
- "modelNameVersionId": volumeGroupModel.uuid,\r
- "modelName": volumeGroupModel.name,\r
- "modelCustomizationName": volumeGroupModel.modelCustomizationName,\r
- "customizationUuid": volumeGroupModel.customizationUuid,\r
- "inputs": ""\r
- });\r
- \r
- $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
- componentId : COMPONENT.VOLUME_GROUP,\r
- callbackFunction : createVolumeGroupCallbackFunction\r
- });\r
- };\r
-\r
- $scope.resetProgress = function() {\r
- $scope.percentProgress = 0;\r
- $scope.progressClass = FIELD.STYLE.PROGRESS_BAR_INFO;\r
- };\r
-\r
- $scope.setProgress = function(percentProgress) {\r
- percentProgress = parseInt(percentProgress);\r
- if (percentProgress >= 100) {\r
- $scope.progressClass = FIELD.STYLE.PROGRESS_BAR_SUCCESS; \r
- }\r
-\r
- if (percentProgress < $scope.percentProgress) {\r
- return;\r
- }\r
-\r
- $scope.percentProgress = percentProgress;\r
- $scope.progressWidth = {width: percentProgress + "%"};\r
- if (percentProgress >= 5) {\r
- $scope.progressText = percentProgress + " %";\r
- } else {\r
- // Hidden since color combination is barely visible when progress portion is narrow.\r
- $scope.progressText = "";\r
- }\r
- };\r
- $scope.isObjectEmpty = function(o) {\r
- var len = 0;\r
- if (UtilityService.hasContents(o)){\r
- var keys = Object.keys(o);\r
- len = keys.length;\r
- if ( len == 0 ) {\r
- return true;\r
- }\r
- else {\r
- return false;\r
- }\r
- }\r
- else {\r
- return true;\r
- }\r
- }\r
- $scope.isMacro = function() {\r
- if (UtilityService.arrayContains (VIDCONFIGURATION.MACRO_SERVICES, $scope.service.model.service.invariantUuid )) {\r
- return(true);\r
- \r
- }\r
- else {\r
- return (false);\r
- }\r
- }\r
- $scope.reloadRoute = function() {\r
- $route.reload();\r
- }\r
- \r
- var updateProvStatusVnfCallbackFunction = function(response) {\r
- $scope.callbackResults = "";\r
- var color = FIELD.ID.COLOR_NONE;\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- $scope.reloadRoute();\r
- /*\r
- * This 1/2 delay was only added to visually highlight the status\r
- * change. Probably not needed in the real application code.\r
- */\r
- $timeout(function() {\r
- $scope.callbackResults = UtilityService.getCurrentTime()\r
- + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
- if (response.isSuccessful) {\r
- color = FIELD.ID.COLOR_8F8;\r
- \r
- } else {\r
- color = FIELD.ID.COLOR_F88;\r
- }\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- }, 500);\r
- \r
- };\r
-\r
- var createVnfCallbackFunction = function(response) {\r
- $scope.callbackResults = "";\r
- var color = FIELD.ID.COLOR_NONE;\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- \r
- /*\r
- * This 1/2 delay was only added to visually highlight the status\r
- * change. Probably not needed in the real application code.\r
- */\r
- $timeout(function() {\r
- $scope.callbackResults = UtilityService.getCurrentTime()\r
- + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
- if (response.isSuccessful) {\r
- color = FIELD.ID.COLOR_8F8;\r
- $scope.reloadRoute();\r
- } else {\r
- color = FIELD.ID.COLOR_F88;\r
- }\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- }, 500);\r
- \r
- \r
- \r
- };\r
- \r
- var deleteCallbackFunction = function(response) {\r
- $scope.callbackResults = "";\r
- var color = FIELD.ID.COLOR_NONE;\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- \r
- /*\r
- * This 1/2 delay was only added to visually highlight the status\r
- * change. Probably not needed in the real application code.\r
- */\r
- $timeout(function() {\r
- $scope.callbackResults = UtilityService.getCurrentTime()\r
- + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
- if (response.isSuccessful) {\r
- color = FIELD.ID.COLOR_8F8;\r
- $scope.reloadRoute();\r
- } else {\r
- color = FIELD.ID.COLOR_F88;\r
- }\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- }, 500);\r
- \r
- };\r
- \r
- var createVfModuleCallbackFunction = function(response) {\r
- $scope.callbackResults = "";\r
- var color = FIELD.ID.COLOR_NONE;\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- \r
- /*\r
- * This 1/2 delay was only added to visually highlight the status\r
- * change. Probably not needed in the real application code.\r
- */\r
- $timeout(function() {\r
- $scope.callbackResults = UtilityService.getCurrentTime()\r
- + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
- if (response.isSuccessful) {\r
- color = FIELD.ID.COLOR_8F8;\r
- $scope.reloadRoute();\r
- } else {\r
- color = FIELD.ID.COLOR_F88;\r
- }\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- }, 500);\r
-\r
- };\r
- \r
- var deleteServiceInstanceCallbackFunction = function(response) {\r
- $scope.callbackResults = "";\r
- var color = FIELD.ID.COLOR_NONE;\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- \r
- /*\r
- * This 1/2 delay was only added to visually highlight the status\r
- * change. Probably not needed in the real application code.\r
- */\r
- $timeout(function() {\r
- $scope.callbackResults = UtilityService.getCurrentTime()\r
- + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
- if (response.isSuccessful) {\r
- color = FIELD.ID.COLOR_8F8;\r
- $location.path(COMPONENT.SERVICEMODELS_MODELS_SERVICES_PATH)\r
- } else {\r
- color = FIELD.ID.COLOR_F88;\r
- }\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- }, 500);\r
-\r
- };\r
- \r
- var createVolumeGroupCallbackFunction = function(response) {\r
- $scope.callbackResults = "";\r
- var color = FIELD.ID.COLOR_NONE;\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- \r
- /*\r
- * This 1/2 delay was only added to visually highlight the status\r
- * change. Probably not needed in the real application code.\r
- */\r
- $timeout(function() {\r
- $scope.callbackResults = UtilityService.getCurrentTime()\r
- + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
- if (response.isSuccessful) {\r
- color = FIELD.ID.COLOR_8F8;\r
- $scope.reloadRoute();\r
- } else {\r
- color = FIELD.ID.COLOR_F88;\r
- }\r
- $scope.callbackStyle = {\r
- "background-color" : color\r
- };\r
- }, 500);\r
- \r
- \r
- \r
- };\r
- \r
- });\r
+\r
+ var svcModel = $scope.service.convertedModel;\r
+\r
+ var vnfModelInvariantUuid = vnf.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var vnfModelVersionId = vnf.object[FIELD.ID.MODEL_VERSION_ID];\r
+ var vnfModelCustomizationUuid = vnf.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ var volGroupModelInvariantUuid = volumeGroup.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var volGroupModelVersionId = volumeGroup.object[FIELD.ID.MODEL_VERSION_ID];\r
+ var volGroupModelCustomizationUuid = volumeGroup.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ var vnfModel = null;\r
+ var volGroupModel = null;\r
+\r
+ // send an empty model by default since model is not required for deletes\r
+ DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {});\r
+\r
+ if (svcModel.isNewFlow) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ if (UtilityService.hasContents(volGroupModelCustomizationUuid)) {\r
+ volGroupModel = vnfModel.volumeGroups[volGroupModelCustomizationUuid];\r
+ }\r
+ }\r
+ else {\r
+\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ if (UtilityService.hasContents(volGroupModelVersionId)) {\r
+ volGroupModel = vnfModel.volumeGroups[volGroupModelVersionId];\r
+ }\r
+ }\r
+ if (!($scope.isObjectEmpty(volGroupModel))) {\r
+ DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
+ "modelInvariantId": volGroupModel.invariantUuid,\r
+ "modelVersion": volGroupModel.version,\r
+ "modelNameVersionId": volGroupModel.uuid,\r
+ "modelName": volGroupModel.name,\r
+ "modelCustomizationName": volGroupModel.modelCustomizationName,\r
+ "customizationUuid": volGroupModel.customizationUuid,\r
+ "inputs": ""\r
+ });\r
+ }\r
+\r
+ DataService.setVnfInstanceId(vnf.object[FIELD.ID.VNF_ID]);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ DataService.setServiceUuid($scope.service.model.service.uuid);\r
+ DataService.setVnfInstanceId(vnf.nodeId);\r
+ DataService.setVolumeGroupInstanceId(volumeGroup.nodeId);\r
+\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.VOLUME_GROUP,\r
+ callbackFunction: deleteOrResumeCallback,\r
+ dialogMethod: COMPONENT.DELETE\r
+ });\r
+ };\r
+\r
+ $scope.describeNetwork = function (serviceObject, networkObject) {\r
+ var serviceInstance = serviceObject.object;\r
+ var network = networkObject.object;\r
+ //console.log ("networkObject="); console.log (JSON.stringify(networkObject, null, 4));\r
+\r
+ DataService.setResCustomizationUuid(" ");\r
+\r
+ setCurrentServiceModelInfoFromScope();\r
+ setCurrentNetworkModelInfoFromScope(networkObject);\r
+\r
+ DataService.setNetworkInstanceId(network[FIELD.ID.NETWORK_ID]);\r
+ DataService.setInventoryItem(networkObject);\r
+ DataService.setSubscriberName(serviceObject.subscriberName);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
+ componentId: COMPONENT.NETWORK\r
+ });\r
+ };\r
+\r
+ // for service instance id - no need for this!\r
+ $scope.describeService = function (serviceObject) {\r
+ var serviceInstance = serviceObject.object;\r
+ setCurrentServiceModelInfoFromScope();\r
+\r
+ DataService.setInventoryItem(serviceInstance);\r
+ //DataService.setModelInfo(serviceInstance['service-instance-id'], serviceInstance);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ //Display popup with additional service information\r
+ $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
+ componentId: COMPONENT.SERVICE\r
+ });\r
+\r
+ };\r
+\r
+ $scope.describeVfModule = function (serviceObject, vfModuleObject, vnf) {\r
+ var serviceInstance = serviceObject.object;\r
+ var vfModule = vfModuleObject.object;\r
+\r
+ /*var vfModuleInvariantUuid = vfModule[FIELD.ID.MODEL_INVAR_ID];\r
+ var vfModuleModelVersionId = vfModule[FIELD.ID.MODEL_VERSION_ID];*/\r
+ var vfModuleCustomizationUuid = vfModule[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ setCurrentServiceModelInfoFromScope();\r
+ setCurrentVfModuleModelInfoFromScope(vnf, vfModuleObject);\r
+\r
+ DataService.setCustomizationUuid(" ");\r
+ if (UtilityService.hasContents(vfModuleCustomizationUuid)) {\r
+ DataService.setCustomizationUuid(vfModuleCustomizationUuid);\r
+ }\r
+\r
+ //Display popup with additional VF-Module information\r
+ DataService.setVfModuleInstanceId(vfModule[FIELD.ID.VF_MODULE_ID]);\r
+ DataService.setInventoryItem(vfModule);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
+ componentId: COMPONENT.VF_MODULE\r
+ });\r
+ };\r
+\r
+ $scope.getStatusOfVnf = function (serviceObject, vnfObject) {\r
+ var serviceInstance = serviceObject.object;\r
+ var vnf = vnfObject.object;\r
+\r
+ DataService.setVnfInstanceId(vnf[FIELD.ID.VNF_ID]);\r
+ DataService.setInventoryItem(vnf);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+ DataService.setServiceInstanceName(serviceInstance[FIELD.ID.SERVICE_INSTANCE_NAME]);\r
+\r
+ $scope.$broadcast(COMPONENT.COMPONENT_STATUS, {\r
+ componentId: COMPONENT.VNF,\r
+ callbackFunction: updateProvStatusVnfCallbackFunction\r
+ });\r
+ };\r
+\r
+ $scope.describeVnf = function (serviceObject, vnfObject) {\r
+ var serviceInstance = serviceObject.object;\r
+ var vnf = vnfObject.object;\r
+ DataService.setResCustomizationUuid(" ");\r
+\r
+ //var vnfInvariantUuid = vnf[FIELD.ID.MODEL_INVAR_ID];\r
+ //var vnfVersionId = vnf[FIELD.ID.MODEL_VERSION_ID];\r
+ var vnfCustomizationUuid = vnf[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ if (UtilityService.hasContents(vnfCustomizationUuid)) {\r
+ DataService.setResCustomizationUuid(vnfCustomizationUuid);\r
+ }\r
+\r
+ setCurrentServiceModelInfoFromScope();\r
+ setCurrentVNFModelInfo(vnfObject);\r
+\r
+ //Display popup with additional VNF information\r
+ DataService.setVnfInstanceId(vnf[FIELD.ID.VNF_ID]);\r
+ DataService.setInventoryItem(vnf);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
+ componentId: COMPONENT.VNF\r
+ });\r
+ };\r
+\r
+ $scope.describeVolumeGroup = function (serviceObject, vnf, volumeGroupObject) {\r
+\r
+ var serviceInstance = serviceObject.object;\r
+ var volumeGroup = volumeGroupObject.object;\r
+\r
+ var volGroupCustomizationUuid = volumeGroup[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ setCurrentServiceModelInfoFromScope();\r
+ setCurrentVolumeGroupModelInfoByVfModuleFromScope(vnf, volumeGroupObject);\r
+\r
+ DataService.setCustomizationUuid(" ");\r
+ if (UtilityService.hasContents(volGroupCustomizationUuid)) {\r
+ DataService.setCustomizationUuid(volGroupCustomizationUuid);\r
+ }\r
+ DataService.setVolumeGroupInstanceId(volumeGroup[FIELD.ID.VOLUME_GROUP_ID]);\r
+ DataService.setInventoryItem(volumeGroup);\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+\r
+ $scope.$broadcast(COMPONENT.SHOW_COMPONENT_DETAILS, {\r
+ componentId: COMPONENT.VOLUME_GROUP\r
+ });\r
+ };\r
+\r
+ $scope.addNetworkInstance = function (netModel, existingVnfs) {\r
+\r
+ // For networks we assume that we always follow the new flow\r
+ console.log("Adding network to service instance" + this.service.instance.name);\r
+ if (VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED && (UtilityService.hasContents(existingVnfs)) && (existingVnfs.length > 0)) {\r
+ var msg = VnfService.isVnfListStatusValid(existingVnfs);\r
+ if (msg != "") {\r
+ alert(msg);\r
+ return;\r
+ }\r
+ }\r
+\r
+ DataService.setSubscriberName($scope.service.instance.subscriberName);\r
+ DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
+ DataService.setServiceType($scope.service.instance.serviceType);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+ DataService.setServiceInstanceId($scope.service.instance.id);\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ DataService.setModelInfo(COMPONENT.NETWORK, {\r
+ "modelType": "network",\r
+ "modelInvariantId": netModel.invariantUuid,\r
+ "modelVersion": netModel.version,\r
+ "modelNameVersionId": netModel.uuid,\r
+ "modelName": netModel.name,\r
+ "modelCustomizationName": netModel.modelCustomizationName,\r
+ "customizationUuid": netModel.customizationUuid,\r
+ "inputs": "",\r
+ "displayInputs": netModel.displayInputs\r
+ });\r
+ setCurrentServiceModelInfoFromScope();\r
+\r
+\r
+ $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
+ componentId: COMPONENT.NETWORK,\r
+ callbackFunction: createVnfCallbackFunction\r
+ });\r
+ };\r
+\r
+ $scope.addVnfInstance = function (vnf, existingVnfs) {\r
+\r
+ if (VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED && (UtilityService.hasContents(existingVnfs)) && (existingVnfs.length > 0)) {\r
+ var msg = VnfService.isVnfListStatusValid(existingVnfs);\r
+ if (msg != "") {\r
+ alert(msg);\r
+ return;\r
+ }\r
+ }\r
+\r
+ var isVfc = false;\r
+\r
+ _.map($scope.service.model.vnfs, function (value, key) {\r
+ if (value.uuid == vnf.uuid) {\r
+ if (!_.isEmpty(value.vfcInstanceGroups)) {\r
+ isVfc = true;\r
+ var queryData = {\r
+ serviceModelId: $scope.service.model.service.uuid,\r
+ serviceInstanceID: $scope.service.instance.id,\r
+ globalCustomerId: $scope.service.instance.globalCustomerId,\r
+ serviceType: $scope.service.instance.serviceType,\r
+ serviceInstanceName: $scope.service.instance.name,\r
+ modelCustomizationName: value.modelCustomizationName,\r
+ modelCustomizationId: value.customizationUuid,\r
+ subscriberName: $scope.service.instance.subscriberName\r
+ };\r
+\r
+ $scope.$broadcast(COMPONENT.IFRAME_DIALOG, queryData);\r
+ return;\r
+ }\r
+ }\r
+ });\r
+\r
+ DataService.setSubscriberName($scope.service.instance.subscriberName);\r
+ DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
+ DataService.setServiceType($scope.service.instance.serviceType);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+ DataService.setServiceInstanceId($scope.service.instance.id);\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ console.log("existingVnfs: ");\r
+ console.log(JSON.stringify(existingVnfs, null, 4));\r
+ console.log("existingVnfs: ");\r
+ console.log(JSON.stringify(existingVnfs, null, 4));\r
+ var vnf_type = "";\r
+ var vnf_role = "";\r
+ var vnf_function = "";\r
+ var vnf_code = "";\r
+\r
+ if (UtilityService.hasContents(vnf.nfType)) {\r
+ vnf_type = vnf.nfType;\r
+ }\r
+ if (UtilityService.hasContents(vnf.nfRole)) {\r
+ vnf_role = vnf.nfRole;\r
+ }\r
+ if (UtilityService.hasContents(vnf.nfFunction)) {\r
+ vnf_function = vnf.nfFunction;\r
+ }\r
+ if (UtilityService.hasContents(vnf.nfCode)) {\r
+ vnf_code = vnf.nfCode;\r
+ }\r
+ DataService.setModelInfo(COMPONENT.VNF, {\r
+ "modelType": vnf.isPnf ? "pnf" : "vnf",\r
+ "modelInvariantId": vnf.invariantUuid,\r
+ "modelVersion": vnf.version,\r
+ "modelNameVersionId": vnf.uuid,\r
+ "modelName": vnf.name,\r
+ "modelCustomizationName": vnf.modelCustomizationName,\r
+ "customizationUuid": vnf.customizationUuid,\r
+ "inputs": "",\r
+ "displayInputs": vnf.displayInputs,\r
+ "vnfType": vnf_type,\r
+ "vnfRole": vnf_role,\r
+ "vnfFunction": vnf_function,\r
+ "vnfCode": vnf_code,\r
+ "properties": vnf.properties\r
+ });\r
+\r
+ DataService.setModelInstanceName($scope.service.model.service.name);\r
+ setCurrentServiceModelInfoFromScope();\r
+\r
+ if (vnf.isConfig) {\r
+ DataService.setServiceProxies($scope.service.model.serviceProxies);\r
+ DataService.setSourceServiceProxies(vnf.sourceNodes);\r
+ DataService.setCollectorServiceProxies(vnf.collectorNodes);\r
+ DataService.setConfigurationByPolicy(vnf.isConfigurationByPolicy);\r
+ $location.path("/addNetworkNode");\r
+ } else if (vnf.isPnf) {\r
+ $location.path("/pnfSearchAssociation");\r
+ } else if (isVfc) {\r
+ //do nothing\r
+ } else {\r
+ $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
+ componentId: COMPONENT.VNF,\r
+ callbackFunction: createVnfCallbackFunction\r
+ });\r
+ }\r
+ };\r
+\r
+ $scope.addVfModuleInstance = function (vnfInstance, vfModuleModel) {\r
+\r
+ if (VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED) {\r
+ var msg = VnfService.isVnfStatusValid(vnfInstance);\r
+ if (msg != "") {\r
+ alert(msg);\r
+ return;\r
+ }\r
+\r
+ }\r
+ var svcModel = $scope.service.convertedModel;\r
+ DataService.setSubscriberName($scope.service.instance.subscriberName);\r
+ DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
+ DataService.setServiceType($scope.service.instance.serviceType);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+ DataService.setServiceInstanceId($scope.service.instance.id);\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+\r
+ var vnfModelInvariantUuid = vnfInstance.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var vnfModelVersionId = vnfInstance.object[FIELD.ID.MODEL_VERSION_ID];\r
+ var vnfModelCustomizationUuid = vnfInstance.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+ var vnfModel = null;\r
+ if (svcModel.isNewFlow) {\r
+ vnfModel = svcModel.vnfs[vnfModelCustomizationUuid];\r
+ }\r
+ else {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ }\r
+\r
+ var availableVolumeGroupList = [];\r
+ angular.forEach(vnfInstance[FIELD.ID.AVAILABLEVOLUMEGROUPS], function (volumeGroupInstance, key) {\r
+ availableVolumeGroupList.push({"instance": volumeGroupInstance});\r
+ });\r
+\r
+ DataService.setAvailableVolumeGroupList(availableVolumeGroupList);\r
+ setCurrentServiceModelInfoFromScope();\r
+\r
+ DataService.setVnfInstanceId(vnfInstance.object[FIELD.ID.VNF_ID]);\r
+\r
+ DataService.setModelInfo(COMPONENT.VNF, {\r
+ "modelInvariantId": vnfModel.invariantUuid,\r
+ "modelVersion": vnfModel.version,\r
+ "modelNameVersionId": vnfModel.uuid,\r
+ "modelName": vnfModel.name,\r
+ "modelCustomizationName": vnfModel.modelCustomizationName,\r
+ "customizationUuid": vnfModel.customizationUuid,\r
+ "inputs": ""\r
+ });\r
+\r
+ DataService.setModelInfo(COMPONENT.VF_MODULE, {\r
+ "modelInvariantId": vfModuleModel.invariantUuid,\r
+ "modelVersion": vfModuleModel.version,\r
+ "modelNameVersionId": vfModuleModel.uuid,\r
+ "customizationUuid": vfModuleModel.customizationUuid,\r
+ "modelCustomizationName": vfModuleModel.modelCustomizationName,\r
+ "modelName": vfModuleModel.name,\r
+ "inputs": ""\r
+ });\r
+\r
+ $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
+ componentId: COMPONENT.VF_MODULE,\r
+ callbackFunction: createVfModuleCallbackFunction\r
+ });\r
+\r
+ };\r
+\r
+ $scope.addVolumeGroupInstance = function (vnfInstance, volumeGroupModel) {\r
+ if (VIDCONFIGURATION.VNF_STATUS_CHECK_ENABLED) {\r
+ var msg = VnfService.isVnfStatusValid(vnfInstance);\r
+ if (msg != "") {\r
+ alert(msg);\r
+ return;\r
+ }\r
+ }\r
+ var svcModel = $scope.service.convertedModel;\r
+ DataService.setSubscriberName($scope.service.instance.subscriberName);\r
+ DataService.setGlobalCustomerId($scope.service.instance.globalCustomerId);\r
+ DataService.setServiceType($scope.service.instance.serviceType);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+ DataService.setServiceInstanceId($scope.service.instance.id);\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+ setCurrentServiceModelInfoFromScope();\r
+\r
+ DataService.setModelInfo(COMPONENT.SERVICE, {\r
+ "modelInvariantId": $scope.service.model.service.invariantUuid,\r
+ "modelVersion": $scope.service.model.service.version,\r
+ "modelNameVersionId": $scope.service.model.service.uuid,\r
+ "modelName": $scope.service.model.service.name,\r
+ "inputs": ""\r
+ });\r
+\r
+ DataService.setVnfInstanceId(vnfInstance.object[FIELD.ID.VNF_ID]);\r
+\r
+ var vnfModelInvariantUuid = vnfInstance.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var vnfModelVersionId = vnfInstance.object[FIELD.ID.MODEL_VERSION_ID];\r
+ var vnfCustomizationUuid = vnfInstance.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+ var vnfModel = null;\r
+\r
+ if (svcModel.isNewFlow) {\r
+ vnfModel = svcModel.vnfs[vnfCustomizationUuid];\r
+ }\r
+ else {\r
+ vnfModel = svcModel.vnfs[vnfModelVersionId];\r
+ }\r
+\r
+ DataService.setModelInfo(COMPONENT.VNF, {\r
+ "modelInvariantId": vnfModel.invariantUuid,\r
+ "modelVersion": vnfModel.version,\r
+ "modelNameVersionId": vnfModel.uuid,\r
+ "modelName": vnfModel.name,\r
+ "modelCustomizationName": vnfModel.modelCustomizationName,\r
+ "customizationUuid": vnfModel.customizationUuid,\r
+ "inputs": ""\r
+ });\r
+\r
+ DataService.setModelInfo(COMPONENT.VOLUME_GROUP, {\r
+ "modelInvariantId": volumeGroupModel.invariantUuid,\r
+ "modelVersion": volumeGroupModel.version,\r
+ "modelNameVersionId": volumeGroupModel.uuid,\r
+ "modelName": volumeGroupModel.name,\r
+ "modelCustomizationName": volumeGroupModel.modelCustomizationName,\r
+ "customizationUuid": volumeGroupModel.customizationUuid,\r
+ "inputs": ""\r
+ });\r
+\r
+ $scope.$broadcast(COMPONENT.CREATE_COMPONENT, {\r
+ componentId: COMPONENT.VOLUME_GROUP,\r
+ callbackFunction: createVolumeGroupCallbackFunction\r
+ });\r
+ };\r
+\r
+ $scope.resume = function (serviceObject, vfModule, vnfModel) {\r
+ populate_popup_vfModule(serviceObject, vfModule, vnfModel);\r
+ setCurrentVNFModelInfo(vnfModel);\r
+\r
+ var availableVolumeGroupList = [];\r
+ angular.forEach(vfModule.volumeGroups, function (volumeGroupInstance, key) {\r
+ availableVolumeGroupList.push({"instance": volumeGroupInstance});\r
+ });\r
+\r
+ DataService.setAvailableVolumeGroupList(availableVolumeGroupList);\r
+\r
+ DataService.setVfModuleInstanceName(vfModule.object[FIELD.ID.VF_MODULE_NAME]);\r
+ setCurrentServiceModelInfoFromScope();\r
+\r
+ if (featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE)) {\r
+\r
+ if (DataService.getLoggedInUserId()) {\r
+ openVfModuleWithHomingDataModal(COMPONENT.RESUME, vfModule);\r
+ }\r
+ else {\r
+ AaiService.getLoggedInUserID(function (response) {\r
+ var userID = response.data;\r
+ DataService.setLoggedInUserId(userID);\r
+ openVfModuleWithHomingDataModal(COMPONENT.RESUME, vfModule);\r
+ });\r
+ }\r
+ }\r
+ else {\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.VF_MODULE,\r
+ volumeGroups: vfModule.volumeGroups,\r
+ callbackFunction: deleteOrResumeCallback,\r
+ dialogMethod: COMPONENT.RESUME\r
+ });\r
+ }\r
+ };\r
+\r
+ $scope.deleteConfiguration = function (serviceObject, configuration) {\r
+ console.log("Deleting Configuration " + configuration.name);\r
+\r
+ var serviceInstance = serviceObject.object;\r
+ var svcModel = $scope.service.convertedModel;\r
+ var configModel;\r
+ DataService.setInventoryItem(configuration.object);\r
+ // set model default and override later if found\r
+ DataService.setModelInfo(COMPONENT.CONFIGURATION, {});\r
+\r
+ if (configuration.object != null) {\r
+\r
+ //var netModelInvariantUuid = network.object[FIELD.ID.MODEL_INVAR_ID];\r
+ var configModelVersionId = configuration.object[FIELD.ID.MODEL_VERSION_ID]; // model uuid\r
+ var configModelCustomizationUuid = configuration.object[FIELD.ID.MODEL_CUSTOMIZATION_ID];\r
+\r
+ //configurations added to vnfs list, in order to be part of the "Add VNF" drop-down list\r
+ if ((!($scope.isObjectEmpty(svcModel))) && (!($scope.isObjectEmpty(svcModel.vnfs)))) {\r
+ if ((svcModel.isNewFlow) && (UtilityService.hasContents(configModelCustomizationUuid))) {\r
+ configModel = svcModel.vnfs[configModelCustomizationUuid];\r
+ }\r
+ else {\r
+\r
+ if (UtilityService.hasContents(configModelVersionId)) {\r
+ configModel = svcModel.vnfs[configModelVersionId];\r
+ }\r
+\r
+ }\r
+ }\r
+ }\r
+ if (!($scope.isObjectEmpty(configModel))) {\r
+ DataService.setModelInfo(COMPONENT.CONFIGURATION, {\r
+ "modelInvariantId": configModel.invariantUuid,\r
+ "modelVersion": configModel.version,\r
+ "modelNameVersionId": configModel.uuid,\r
+ "modelCustomizationName": configModel.modelCustomizationName,\r
+ "customizationUuid": configModel.customizationUuid,\r
+ "modelName": configModel.name,\r
+ "inputs": ""\r
+ });\r
+ }\r
+\r
+ DataService.setSubscriberName(serviceObject[COMPONENT.SUBSCRIBER_NAME]);\r
+ DataService.setServiceType(serviceObject[COMPONENT.SERVICE_TYPE]);\r
+ DataService.setServiceInstanceId(serviceInstance[FIELD.ID.SERVICE_INSTANCE_ID]);\r
+\r
+ DataService.setGlobalCustomerId(serviceObject[FIELD.ID.GLOBAL_CUST_ID]);\r
+ DataService.setServiceInstanceName($scope.service.instance.name);\r
+ DataService.setServiceName($scope.service.model.service.name);\r
+ DataService.setServiceUuid($scope.service.model.service.uuid);\r
+ DataService.setConfigurationInstanceId(configuration.object[FIELD.ID.CONFIGURATION_ID]);\r
+\r
+ $scope.$broadcast(COMPONENT.DELETE_RESUME_COMPONENT, {\r
+ componentId: COMPONENT.CONFIGURATION,\r
+ dialogMethod: COMPONENT.DELETE,\r
+ callbackFunction: deleteCallbackFunction\r
+ });\r
+ };\r
+\r
+ var deleteCallbackFunction = function () {\r
+ console.log('hi')\r
+ };\r
+\r
+ $scope.resetProgress = function () {\r
+ $scope.percentProgress = 0;\r
+ $scope.progressClass = FIELD.STYLE.PROGRESS_BAR_INFO;\r
+ };\r
+\r
+ $scope.setProgress = function (percentProgress) {\r
+ percentProgress = parseInt(percentProgress);\r
+ if (percentProgress >= 100) {\r
+ $scope.progressClass = FIELD.STYLE.PROGRESS_BAR_SUCCESS;\r
+ }\r
+\r
+ if (percentProgress < $scope.percentProgress) {\r
+ return;\r
+ }\r
+\r
+ $scope.percentProgress = percentProgress;\r
+ $scope.progressWidth = {width: percentProgress + "%"};\r
+ if (percentProgress >= 5) {\r
+ $scope.progressText = percentProgress + " %";\r
+ } else {\r
+ // Hidden since color combination is barely visible when progress portion is narrow.\r
+ $scope.progressText = "";\r
+ }\r
+ };\r
+ $scope.isObjectEmpty = function (o) {\r
+ var len = 0;\r
+ if (UtilityService.hasContents(o)) {\r
+ var keys = Object.keys(o);\r
+ len = keys.length;\r
+ if (len == 0) {\r
+ return true;\r
+ }\r
+ else {\r
+ return false;\r
+ }\r
+ }\r
+ else {\r
+ return true;\r
+ }\r
+ };\r
+ $scope.isMacro = function () {\r
+ return $scope.service && AsdcService.isMacro($scope.service.model);\r
+ };\r
+ $scope.reloadRoute = function () {\r
+ $route.reload();\r
+ };\r
+\r
+\r
+ /*\r
+Private metthods\r
+*/\r
+\r
+ /*\r
+ setPnf\r
+ * set the controller pnf param using api call\r
+ * return: void\r
+ */\r
+ function _setPnf(data) { // data is the $scope.service.instance object\r
+ return PnfService.getPnfs(data)\r
+ .then(\r
+ function (response) {\r
+ return response.data;\r
+ // * can add here changes on the data that are needed to the view ( filter, ect..)\r
+ },\r
+ function (error) {\r
+ console.error(error);\r
+ }\r
+ );\r
+ }\r
+\r
+\r
+ function _setCr(data) { // data is the $scope.service.instance object\r
+ return CrService.getCr(data)\r
+ .then(\r
+ function (response) {\r
+ return response.data.results;\r
+ // * can add here changes on the data that are needed to the view ( filter, ect..)\r
+ },\r
+ function (error) {\r
+ console.error(error);\r
+ }\r
+ );\r
+ }\r
+\r
+\r
+ /*\r
+ Callbaks functions\r
+\r
+ */\r
+ var updateProvStatusVnfCallbackFunction = function (response) {\r
+ $scope.callbackResults = "";\r
+ var color = FIELD.ID.COLOR_NONE;\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+ $scope.reloadRoute();\r
+ /*\r
+ * This 1/2 delay was only added to visually highlight the status\r
+ * change. Probably not needed in the real application code.\r
+ */\r
+ $timeout(function () {\r
+ $scope.callbackResults = UtilityService.getCurrentTime()\r
+ + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
+ if (response.isSuccessful) {\r
+ color = FIELD.ID.COLOR_8F8;\r
+\r
+ } else {\r
+ color = FIELD.ID.COLOR_F88;\r
+ }\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+ }, 500);\r
+\r
+ };\r
+\r
+ var createVnfCallbackFunction = function (response) {\r
+ $scope.callbackResults = "";\r
+ var color = FIELD.ID.COLOR_NONE;\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+\r
+ /*\r
+ * This 1/2 delay was only added to visually highlight the status\r
+ * change. Probably not needed in the real application code.\r
+ */\r
+ $timeout(function () {\r
+ $scope.callbackResults = UtilityService.getCurrentTime()\r
+ + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
+ if (response.isSuccessful) {\r
+ color = FIELD.ID.COLOR_8F8;\r
+ $scope.reloadRoute();\r
+ } else {\r
+ color = FIELD.ID.COLOR_F88;\r
+ }\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+ }, 500);\r
+\r
+\r
+ };\r
+\r
+ var deleteOrResumeCallback = function (response) {\r
+ $scope.callbackResults = "";\r
+ var color = FIELD.ID.COLOR_NONE;\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+\r
+ /*\r
+ * This 1/2 delay was only added to visually highlight the status\r
+ * change. Probably not needed in the real application code.\r
+ */\r
+ $timeout(function () {\r
+ $scope.callbackResults = UtilityService.getCurrentTime()\r
+ + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
+ if (response.isSuccessful) {\r
+ color = FIELD.ID.COLOR_8F8;\r
+ $scope.reloadRoute();\r
+ } else {\r
+ color = FIELD.ID.COLOR_F88;\r
+ }\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+ }, 500);\r
+\r
+ };\r
+\r
+ var createVfModuleCallbackFunction = function (response) {\r
+ $scope.callbackResults = "";\r
+ var color = FIELD.ID.COLOR_NONE;\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+\r
+ /*\r
+ * This 1/2 delay was only added to visually highlight the status\r
+ * change. Probably not needed in the real application code.\r
+ */\r
+ $timeout(function () {\r
+ $scope.callbackResults = UtilityService.getCurrentTime()\r
+ + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
+ if (response.isSuccessful) {\r
+ color = FIELD.ID.COLOR_8F8;\r
+ $scope.reloadRoute();\r
+ } else {\r
+ color = FIELD.ID.COLOR_F88;\r
+ }\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+ }, 500);\r
+\r
+ };\r
+\r
+ var deleteServiceInstanceCallbackFunction = function (response) {\r
+ $scope.callbackResults = "";\r
+ var color = FIELD.ID.COLOR_NONE;\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+\r
+ /*\r
+ * This 1/2 delay was only added to visually highlight the status\r
+ * change. Probably not needed in the real application code.\r
+ */\r
+ $timeout(function () {\r
+ $scope.callbackResults = UtilityService.getCurrentTime()\r
+ + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
+ if (response.isSuccessful) {\r
+ color = FIELD.ID.COLOR_8F8;\r
+ $location.path(COMPONENT.SERVICEMODELS_MODELS_SERVICES_PATH);\r
+ } else {\r
+ color = FIELD.ID.COLOR_F88;\r
+ }\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+ }, 500);\r
+\r
+ };\r
+\r
+ var createVolumeGroupCallbackFunction = function (response) {\r
+ $scope.callbackResults = "";\r
+ var color = FIELD.ID.COLOR_NONE;\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+\r
+ /*\r
+ * This 1/2 delay was only added to visually highlight the status\r
+ * change. Probably not needed in the real application code.\r
+ */\r
+ $timeout(function () {\r
+ $scope.callbackResults = UtilityService.getCurrentTime()\r
+ + FIELD.STATUS.IS_SUCCESSFUL + response.isSuccessful;\r
+ if (response.isSuccessful) {\r
+ color = FIELD.ID.COLOR_8F8;\r
+ $scope.reloadRoute();\r
+ } else {\r
+ color = FIELD.ID.COLOR_F88;\r
+ }\r
+ $scope.callbackStyle = {\r
+ "background-color": color\r
+ };\r
+ }, 500);\r
+\r
+\r
+ };\r
+\r
+ });\r
})();\r