"use strict";\r
\r
var AaiService = function ($http, $log, PropertyService, UtilityService, COMPONENT, FIELD, $q) {\r
+\r
+ function getServiceInstance(serviceInstanceIdentifier, findBy) {\r
+ serviceInstanceIdentifier.trim();\r
+\r
+ return $http.get(COMPONENT.AAI_GET_SERVICE_INSTANCE_PATH + serviceInstanceIdentifier + "/" + findBy + "?r=" + Math.random(), {}, {\r
+ timeout: PropertyService.getServerResponseTimeoutMsec()\r
+ });\r
+ }\r
+\r
+ function getPnfByName(pnfName) {\r
+ var deferred = $q.defer();\r
+ var url = COMPONENT.AAI_GET_PNF_BY_NAME+ encodeURIComponent(pnfName) ;\r
+ var config = { timeout: PropertyService.getServerResponseTimeoutMsec() };\r
+\r
+ $http.get(url, config)\r
+ .success(function (response) {\r
+ deferred.resolve({data: response});\r
+ })\r
+ .error(function(data, status, headers, config) {\r
+ deferred.reject({message: data, status: status});\r
+ });\r
+\r
+ return deferred.promise;\r
+ };\r
+\r
+\r
+ function getGlobalCustomerIdFromServiceInstanceResponse(response) {\r
+ var globalCustomerId = "";\r
+ if (angular.isArray(response.data[FIELD.ID.RESULT_DATA])) {\r
+ var customerIndex = 5;\r
+ var customerIdIndex = 6;\r
+ var itemIndex = 0;\r
+\r
+ var item = response.data[FIELD.ID.RESULT_DATA][itemIndex];\r
+ var url = item[FIELD.ID.RESOURCE_LINK];\r
+ var urlParts = url.split("/");\r
+ if (urlParts[customerIndex] === FIELD.ID.CUSTOMER) {\r
+ globalCustomerId = urlParts[customerIdIndex];\r
+ }\r
+ }\r
+ return globalCustomerId;\r
+ }\r
+\r
+ function searchServiceInstances(query) {\r
+ return $http.get( COMPONENT.SEARCH_SERVICE_INSTANCES + query, {}, {\r
+ timeout : PropertyService.getServerResponseTimeoutMsec()\r
+ }).then(function (response) {\r
+ var displayData = response.data[FIELD.ID.SERVICE_INSTANCES];\r
+ if (!displayData.length) {\r
+ displayData = [{\r
+ globalCustomerId : null,\r
+ subscriberName : null,\r
+ serviceType : FIELD.PROMPT.NO_SERVICE_SUB,\r
+ serviceInstanceId : FIELD.PROMPT.NO_SERVICE_INSTANCE\r
+ }];\r
+ }\r
+ return {displayData: displayData};\r
+ })\r
+ }\r
+\r
+ function getJoinedQueryString(queries) {\r
+ return queries.filter(function (val) {return val;}).join("&");\r
+ }\r
+\r
return {\r
getSubscriberName : function(globalCustomerId,\r
successCallbackFunction) {\r
timeout : PropertyService\r
.getServerResponseTimeoutMsec()\r
}).then(function(response) {\r
- var subName = "";\r
+ var result = {};\r
if (response.data) {\r
- subName = response.data[FIELD.ID.SUBNAME];\r
+ result.subscriberName = response.data[FIELD.ID.SUBNAME];\r
+ result.serviceSubscriptions = response.data[FIELD.ID.SERVICE_SUBSCRIPTIONS];\r
}\r
- successCallbackFunction(subName);\r
+ successCallbackFunction(result);\r
})["catch"]\r
(UtilityService.runHttpErrorHandler);\r
},\r
\r
-\r
runNamedQuery : function (namedQueryId, globalCustomerId, serviceType, serviceInstanceId, successCallback, errorCallback) {\r
\r
var url = COMPONENT.AAI_SUB_VIEWEDIT_PATH +\r
});\r
},\r
\r
+ getPNFInformationByServiceTypeAndId : function (globalCustomerId, serviceType, serviceInstanceId, successCallback, errorCallback) {\r
+\r
+ var url = COMPONENT.AAI_GET_PNF_INSTANCE +\r
+ COMPONENT.FORWARD_SLASH + encodeURIComponent(globalCustomerId) +\r
+ COMPONENT.FORWARD_SLASH + encodeURIComponent(serviceType) +\r
+ COMPONENT.FORWARD_SLASH + encodeURIComponent(serviceInstanceId);\r
+ $http.get(url, {}, {\r
+ timeout : PropertyService.getServerResponseTimeoutMsec()\r
+ }).then(function(response) {\r
+ if (response.data != null) {\r
+ successCallback(response);\r
+ } else {\r
+ errorCallback(response);\r
+ }\r
+ }, function(response) {\r
+ errorCallback(response);\r
+ });\r
+ },\r
+\r
+ searchServiceInstances: searchServiceInstances,\r
+\r
+ getModelVersionId: function (subscriberId, instanceId) {\r
+ var globalCustomerIdQuery = COMPONENT.SELECTED_SUBSCRIBER_SUB_PATH + subscriberId;\r
+ var serviceInstanceQuery = COMPONENT.SELECTED_SERVICE_INSTANCE_SUB_PATH + instanceId;\r
+\r
+ var query = "?" + getJoinedQueryString([globalCustomerIdQuery, serviceInstanceQuery]);\r
+\r
+ var deferred = $q.defer();\r
+\r
+ searchServiceInstances(query).then(function (response) {\r
+ var displayData = response.displayData;\r
+ if (displayData[0] && displayData[0].aaiModelVersionId) {\r
+ deferred.resolve(displayData[0].aaiModelVersionId);\r
+ } else {\r
+ deferred.reject(FIELD.ERROR.MODEL_VERSION_ID_MISSING);\r
+ }\r
+ }).catch(function (err) {\r
+ deferred.reject(err);\r
+ });\r
+\r
+ return deferred.promise;\r
+ },\r
\r
getSubDetails : function(selectedSubscriber, selectedServiceInstance, successCallback, errorCallback) {\r
var subscriber;\r
}\r
});\r
} else {\r
- if (serviceInstanceId == []) {\r
- serviceInstanceId = [ FIELD.PROMPT.NO_SERVICE_INSTANCE ];\r
- }\r
+ serviceInstanceId = [ FIELD.PROMPT.NO_SERVICE_INSTANCE ];\r
}\r
angular.forEach(serviceInstanceId, function(subVal, subKey) {\r
displayData.push({\r
} else {\r
displayData.push({\r
globalCustomerId : selectedSubscriber,\r
- subscriberName : selectedSubscriberName,\r
+ subscriberName : subscriberName,\r
serviceType : FIELD.PROMPT.NO_SERVICE_SUB,\r
serviceInstanceId : FIELD.PROMPT.NO_SERVICE_INSTANCE\r
});\r
});\r
},\r
\r
+ getServiceInstance : getServiceInstance,\r
+ getPnfByName : getPnfByName,\r
+\r
+ getGlobalCustomerIdByInstanceIdentifier : function(serviceInstanceIdentifier, findBy) {\r
+ serviceInstanceIdentifier.trim();\r
+\r
+ return getServiceInstance(serviceInstanceIdentifier, findBy)\r
+ .then(function (response) {\r
+ return getGlobalCustomerIdFromServiceInstanceResponse(response);\r
+ });\r
+ },\r
+\r
+ getMultipleValueParamQueryString: function(values, paramSubPath) {\r
+ if (values.length) {\r
+ return paramSubPath + values.filter(function (val) {return val;}).join("&" + paramSubPath);\r
+ }\r
+ },\r
+\r
+ getJoinedQueryString: getJoinedQueryString,\r
+\r
getServices2 : function(successCallback, errorCallback ) {\r
\r
$http.get( FIELD.ID.AAI_GET_SERVICES, {}, {\r
var lcpCloudRegionTenants = [];\r
var aaiLcpCloudRegionTenants = response.data;\r
\r
- lcpCloudRegionTenants.push({\r
- "cloudRegionId": "",\r
- "tenantName": FIELD.PROMPT.REGION,\r
- "tenantId": ""\r
- });\r
-\r
for (var i = 0; i < aaiLcpCloudRegionTenants.length; i++) {\r
lcpCloudRegionTenants.push({\r
"cloudRegionId": aaiLcpCloudRegionTenants[i][COMPONENT.CLOUD_REGION_ID],\r
}\r
\r
successCallbackFunction(lcpCloudRegionTenants);\r
- })["catch"]\r
- (UtilityService.runHttpErrorHandler);\r
+ }).catch(function(error) {\r
+ (UtilityService.runHttpErrorHandler(error.data, error.status));\r
+ })\r
},\r
getSubscribers : function(successCallbackFunction) {\r
$log\r
})["catch"]\r
(UtilityService.runHttpErrorHandler);\r
},\r
- getLoggedInUserID : function(successCallbackFunction) {\r
+ getLoggedInUserID : function(successCallbackFunction, catchCallbackFunction) {\r
$log\r
.debug("AaiService:getLoggedInUserID");\r
var url = COMPONENT.GET_USER_ID;\r
successCallbackFunction([]);\r
}\r
},function(failure){console.log("failure")})["catch"]\r
+ if(catchCallbackFunction) {\r
+ catchCallbackFunction();\r
+ }\r
(UtilityService.runHttpErrorHandler);\r
},\r
getServices : function(successCallbackFunction) {\r
return deferred.promise;\r
},\r
\r
+\r
+\r
getSubscriberServiceTypes: function(subscriberUuid) {\r
var deferred = $q.defer();\r
$log.debug("AaiService:getSubscriberServiceTypes: subscriberUuid: " + subscriberUuid);\r
});\r
}\r
\r
+ return deferred.promise;\r
+ },\r
+ getVnfInstancesList: function(globalSubscriberId, serviceType, modelVersionId ,modelInvariantId, cloudRegionId) {\r
+ var deferred = $q.defer();\r
+ $http.get([COMPONENT.AAI_GET_VNF_INSTANCES_LIST,\r
+ globalSubscriberId,\r
+ serviceType,\r
+ modelVersionId,\r
+ modelInvariantId,\r
+ cloudRegionId]\r
+ .join(COMPONENT.FORWARD_SLASH))\r
+ .success(function (response) {\r
+ deferred.resolve(response);\r
+ }).error(function (data, status) {\r
+ deferred.reject({message: data, status: status});\r
+ });\r
+ return deferred.promise;\r
+ },\r
+ getPnfInstancesList: function (globalCustomerId, serviceType, modelVersionId, modelInvariantId, cloudRegionId, equipVendor, equipModel) {\r
+ var deferred = $q.defer();\r
+ $http.get([COMPONENT.AAI_GET_PNF_INSTANCES_LIST,\r
+ globalCustomerId, serviceType,\r
+ modelVersionId, modelInvariantId,\r
+ cloudRegionId,\r
+ equipVendor, equipModel\r
+ ].join(COMPONENT.FORWARD_SLASH))\r
+ .success(function (response) {\r
+ deferred.resolve(response);\r
+ }).error(function (data, status) {\r
+ deferred.reject({message: data, status: status});\r
+ });\r
+ return deferred.promise;\r
+ },\r
+ getByUri: function(uri) {\r
+ var deferred = $q.defer();\r
+\r
+ $http.get(COMPONENT.AAI_GET_BY_URI + uri)\r
+ .success(function (response) {\r
+ deferred.resolve({data: []});\r
+ }).error(function (data, status, headers, config) {\r
+ deferred.reject({message: data, status: status});\r
+ });\r
+\r
+ return deferred.promise;\r
+ },\r
+ getConfiguration: function(configurationId) {\r
+ var deferred = $q.defer();\r
+\r
+ $http.get(COMPONENT.AAI_GET_CONFIGURATION + configurationId)\r
+ .success(function (response) {\r
+ deferred.resolve({data: []});\r
+ }).error(function (data, status, headers, config) {\r
+ deferred.reject({message: data, status: status});\r
+ });\r
+\r
return deferred.promise;\r
}\r
}};\r