diff options
Diffstat (limited to 'components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb')
4 files changed, 0 insertions, 391 deletions
diff --git a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/AaiInterface.java b/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/AaiInterface.java deleted file mode 100644 index 68b795b5..00000000 --- a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/AaiInterface.java +++ /dev/null @@ -1,36 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================= - * slice-analysis-ms - * ================================================================================ - * Copyright (C) 2021 Wipro Limited. - * ============================================================================== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - * - *******************************************************************************/ - -package org.onap.slice.analysis.ms.configdb; - -import java.util.Map; - -/** - * - * Interface for AAI - * - */ -public interface AaiInterface { - - public Map<String, String> fetchServiceDetails(String snssai); - public Map<String, Integer> fetchCurrentConfigurationOfSlice(String snssai); -} - diff --git a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/AaiService.java b/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/AaiService.java deleted file mode 100644 index 16ff71a6..00000000 --- a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/AaiService.java +++ /dev/null @@ -1,179 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================= - * slice-analysis-ms - * ================================================================================ - * Copyright (C) 2021 Wipro Limited. - * ============================================================================== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - * - *******************************************************************************/ - -package org.onap.slice.analysis.ms.configdb; - -import java.util.HashMap; -import java.util.Map; - -import org.json.JSONArray; -import org.json.JSONObject; -import org.onap.slice.analysis.ms.models.Configuration; -import org.onap.slice.analysis.ms.restclients.AaiRestClient; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.core.ParameterizedTypeReference; -import org.springframework.stereotype.Service; - -/** - * - * Service for AAI interfaces - * - */ -@Service -public class AaiService implements AaiInterface { - - private static Logger log = LoggerFactory.getLogger(Configuration.class); - - @Autowired - AaiRestClient restclient; - private static String globalSubscriberId; - private static String subscriptionServiceType; - private static String aaiBaseUrl = Configuration.getInstance().getAaiUrl(); - - /** - * Fetches the details of a subscriber - */ - public Map<String, String> fetchServiceDetails(String snssai) { - log.info("AAI fetch service: "); - Map<String, String> responseMap = new HashMap<String, String>(); - - log.info("AAI getGlobalSubscriberId: "); - String subscriberReqUrl = aaiBaseUrl + "/business/customers"; - try { - String subscriberReq = restclient - .sendGetRequest(subscriberReqUrl, new ParameterizedTypeReference<String>() { - }).getBody(); - JSONObject subscriberReqJson = new JSONObject(subscriberReq); - JSONArray subscriberReqJsonList = subscriberReqJson.getJSONArray("customer"); - for (int i = 0; i < subscriberReqJsonList.length(); i++) { - JSONObject subscriberReqObj = subscriberReqJsonList.getJSONObject(i); - globalSubscriberId = subscriberReqObj.getString("global-customer-id"); - responseMap.put("globalSubscriberId", globalSubscriberId); - break; - } - } catch (Exception e) { - log.info("Exception while fetching getGlobalSubscriberId: " + e); - } - - String subscriptionServiceReqUrl = aaiBaseUrl + "/business/customers/customer/" + globalSubscriberId - + "/service-subscriptions"; - try { - String subscriptionService = restclient - .sendGetRequest(subscriptionServiceReqUrl, new ParameterizedTypeReference<String>() { - }).getBody(); - JSONObject subscriptionServiceJson = new JSONObject(subscriptionService); - JSONArray subscriptionServiceListJson = subscriptionServiceJson.getJSONArray("service-subscription"); - for (int i = 0; i < subscriptionServiceListJson.length(); i++) { - JSONObject subscriptionServiceObj = subscriptionServiceListJson.getJSONObject(i); - subscriptionServiceType = subscriptionServiceObj.getString("service-type"); - responseMap.put("subscriptionServiceType", subscriptionServiceType); - break; - } - } catch (Exception e) { - log.info("Exception while fetching subscriptionService: " + e); - } - - String serviceReqUrl = aaiBaseUrl + "/business/customers/customer/" + globalSubscriberId - + "/service-subscriptions/service-subscription/" + subscriptionServiceType + "/service-instances"; - String serviceRole = "AN-NF"; - try { - String serviceInstance = restclient.sendGetRequest(serviceReqUrl, new ParameterizedTypeReference<String>() { - }).getBody(); - JSONObject serviceInstanceJson = new JSONObject(serviceInstance); - JSONArray serviceInstanceList = serviceInstanceJson.getJSONArray("service-instance"); - for (int i = 0; i < serviceInstanceList.length(); i++) { - JSONObject serviceObj = serviceInstanceList.getJSONObject(i); - if (serviceObj.getString("environment-context").equalsIgnoreCase(snssai)) { - responseMap.put("sliceProfileId", serviceObj.getString("service-instance-id")); - } - } - - String serviceRoleReqUrl = aaiBaseUrl + "/business/customers/customer/" + globalSubscriberId - + "/service-subscriptions/service-subscription/" + subscriptionServiceType - + "/service-instances/?service-role=nssi&depth=2"; - - String serviceInstanceForServiceRole = restclient - .sendGetRequest(serviceRoleReqUrl, new ParameterizedTypeReference<String>() { - }).getBody(); - JSONObject serviceInstanceForServiceRoleJson = new JSONObject(serviceInstanceForServiceRole); - JSONArray serviceInstanceListForServiceRole = serviceInstanceForServiceRoleJson - .getJSONArray("service-instance"); - for (int i = 0; i < serviceInstanceListForServiceRole.length(); i++) { - JSONObject serviceObj = serviceInstanceListForServiceRole.getJSONObject(i); - if (serviceObj.getString("workload-context").trim().equalsIgnoreCase(serviceRole)) { - responseMap.put("ranNFNSSIId", serviceObj.getString("service-instance-id")); - } - } - } catch (Exception e) { - log.info("Exception while fetching serviceDetails: " + e); - } - responseMap.put("sNSSAI", snssai); - log.info("subscriber details: " + responseMap); - return responseMap; - } - - /** - * Fetches the current configuration of an Slice from AAI - */ - public Map<String, Integer> fetchCurrentConfigurationOfSlice(String snssai) { - log.info("AAI fetch config Slice: " + aaiBaseUrl); - String serviceInstaneId = null; - String serviceReqUrl = aaiBaseUrl + "/business/customers/customer/" + globalSubscriberId - + "/service-subscriptions/service-subscription/" + subscriptionServiceType + "/service-instances"; - Map<String, Integer> responseMap = new HashMap<String, Integer>(); - try { - String serviceInstance = restclient.sendGetRequest(serviceReqUrl, new ParameterizedTypeReference<String>() { - }).getBody(); - JSONObject serviceInstanceJson = new JSONObject(serviceInstance); - - JSONArray serviceInstanceList = serviceInstanceJson.getJSONArray("service-instance"); - for (int i = 0; i < serviceInstanceList.length(); i++) { - JSONObject serviceObj = serviceInstanceList.getJSONObject(i); - if (serviceObj.getString("environment-context").equalsIgnoreCase(snssai)) { - serviceInstaneId = serviceObj.getString("service-instance-id"); - } - } - - String sliceProfileReqUrl = aaiBaseUrl + "/business/customers/customer/" + globalSubscriberId - + "/service-subscriptions/service-subscription/" + subscriptionServiceType - + "/service-instances/service-instance/" + serviceInstaneId + "/slice-profiles"; - - String sliceProfile = restclient - .sendGetRequest(sliceProfileReqUrl, new ParameterizedTypeReference<String>() { - }).getBody(); - JSONObject sliceProfileJson = new JSONObject(sliceProfile); - JSONArray sliceProfileList = sliceProfileJson.getJSONArray("slice-profile"); - for (int i = 0; i < sliceProfileList.length(); i++) { - JSONObject sliceProfileObj = sliceProfileList.getJSONObject(i); - responseMap.put("dLThptPerSlice", sliceProfileObj.getInt("exp-data-rate-UL")); - responseMap.put("uLThptPerSlice", sliceProfileObj.getInt("exp-data-rate-DL")); - break; - } - log.info("Slice configuration: " + responseMap); - } catch (Exception e) { - log.info("AAI Slice: " + e); - } - return responseMap; - } -} - diff --git a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/CpsInterface.java b/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/CpsInterface.java deleted file mode 100644 index ef6211c4..00000000 --- a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/CpsInterface.java +++ /dev/null @@ -1,39 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================= - * slice-analysis-ms - * ================================================================================ - * Copyright (C) 2021 Wipro Limited. - * ============================================================================== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - * - *******************************************************************************/ - -package org.onap.slice.analysis.ms.configdb; - -import java.util.List; -import java.util.Map; - -/** - * - * Interface for CPS - * - */ -public interface CpsInterface { - - public Map<String, List<String>> fetchRICsOfSnssai(String snssai); - public List<String> fetchNetworkFunctionsOfSnssai(String snssai); - public Map<String, Map<String,Object>> fetchCurrentConfigurationOfRIC(String snssai); - -} - diff --git a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/CpsService.java b/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/CpsService.java deleted file mode 100644 index 389a75d9..00000000 --- a/components/slice-analysis-ms/src/main/java/org/onap/slice/analysis/ms/configdb/CpsService.java +++ /dev/null @@ -1,137 +0,0 @@ -/******************************************************************************* - * ============LICENSE_START======================================================= - * slice-analysis-ms - * ================================================================================ - * Copyright (C) 2021 Wipro Limited. - * ============================================================================== - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ============LICENSE_END========================================================= - * - *******************************************************************************/ -package org.onap.slice.analysis.ms.configdb; - -import java.util.List; -import java.util.Map; -import java.util.HashMap; -import java.util.ArrayList; - -import org.json.JSONArray; -import org.json.JSONObject; -import org.onap.slice.analysis.ms.models.Configuration; -import org.onap.slice.analysis.ms.restclients.CpsRestClient; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.ResponseEntity; -import org.springframework.core.ParameterizedTypeReference; -import org.springframework.stereotype.Service; - -/** - * - * Service for CPS interfaces - * - */ -@Service -public class CpsService implements CpsInterface { - - private static Logger log = LoggerFactory.getLogger(CpsService.class); - - @Autowired - CpsRestClient restclient; - private static String cpsBaseUrl = Configuration.getInstance().getCpsUrl(); - - /** - * Fetches the current configuration of RIC from CPS - */ - public Map<String, Map<String, Object>> fetchCurrentConfigurationOfRIC(String snssai) { - Map<String, Map<String, Object>> responseMap = new HashMap<String, Map<String, Object>>(); - String reqUrl = cpsBaseUrl +"/get-nearrtric-config"; - log.info("fetching current configuration of RIC from Cps: {s-NSSAI: "+snssai+"}"); - String requestBody = "{\"inputParameters\": {\"sNssai\":"+JSONObject.quote(snssai)+"}}"; - try { - String response = restclient.sendPostRequest(reqUrl,requestBody, new ParameterizedTypeReference<String>() {}).getBody(); - JSONArray sliceArray = new JSONArray(response); - for (int i=0;i<sliceArray.length();i++) { - String nearRTTICid = sliceArray.getJSONObject(i).optString("idNearRTRIC"); - JSONArray pLMNInfoList = sliceArray.getJSONObject(i).getJSONObject("attributes").getJSONArray("pLMNInfoList"); - for (int j=0;j<pLMNInfoList.length();j++){ - JSONArray sNSSAIList = pLMNInfoList.getJSONObject(j).getJSONArray("sNSSAIList"); - for(int k=0;k<sNSSAIList.length();k++) { - Map<String,Object> map = new HashMap<String,Object>(); - JSONArray configDataArray = sNSSAIList.getJSONObject(k).getJSONArray("configData"); - for(int l=0;l<configDataArray.length();l++) { - JSONObject configData = configDataArray.getJSONObject(l); - map.put((String) configData.get("configParameter"), configData.get("configValue")); - } - responseMap.put(nearRTTICid, map); - } - } - } - }catch (Exception e) { - log.info("CPS fetches current configuration of RIC: " + e); - } - return responseMap; - } - - /** - * Fetches all the network functions of an S-NSSAI from CPS - */ - public List<String> fetchNetworkFunctionsOfSnssai(String snssai) { - List<String> responseList=new ArrayList<>(); - String reqUrl=cpsBaseUrl+"/get-gnbdufunction-by-snssai"; - log.info("fetching network functions of snssai from Cps: {s-NSSAI: "+snssai+"}"); - String requestBody = "{\"inputParameters\": {\"sNssai\":"+JSONObject.quote(snssai)+"}}"; - try { - String response=restclient.sendPostRequest(reqUrl,requestBody,new ParameterizedTypeReference<String>() {}).getBody(); - JSONArray networkFunctionJsonArry = new JSONArray(response); - for (int i=0;i<networkFunctionJsonArry.length();i++) { - JSONObject networkFunctionJson = networkFunctionJsonArry.getJSONObject(i); - responseList.add(networkFunctionJson.getJSONObject("attributes").optString("gNBDUId")); - } - } - catch (Exception e) { - log.info("Fetch network functions of S-NSSAI from CPS" + e); - } - return responseList; - } - - /** - * Fetches the RICS of an S-NSSAI from CPS - */ - public Map<String, List<String>> fetchRICsOfSnssai(String snssai) { - Map<String,List<String>> responseMap=new HashMap<>(); - String reqUrl=cpsBaseUrl + "/get-nrcelldu-by-snssai"; - log.info("fetching RIC of s-NSSAI from Cps: {s-NSSAI: "+snssai+"}"); - String requestBody = "{\"inputParameters\": {\"sNssai\":"+JSONObject.quote(snssai)+"}}"; - try { - String response=restclient.sendPostRequest(reqUrl,requestBody,new ParameterizedTypeReference<String>() {}).getBody(); - JSONArray sliceArray = new JSONArray(response); - for (int i=0;i<sliceArray.length();i++) { - String nearRTTICid = sliceArray.getJSONObject(i).optString("idNearRTRIC"); - JSONArray GNBDUFunctionArray = sliceArray.getJSONObject(i).getJSONArray("GNBDUFunction"); - for (int j=0;j<GNBDUFunctionArray.length();j++){ - JSONArray NRCellDUArray = GNBDUFunctionArray.getJSONObject(j).getJSONArray("NRCellDU"); - List<String> cellslist=new ArrayList<>(); - for(int k=0;k<NRCellDUArray.length();k++) { - cellslist.add(NRCellDUArray.getJSONObject(k).getJSONObject("attributes").optString("cellLocalId")); - } - responseMap.put(nearRTTICid,cellslist); - } - } - }catch (Exception e) { - log.info("Fetch RICS of S-NSSAI from CPS" + e); - } - return responseMap; - } -} - |