diff options
Diffstat (limited to 'src/main/java/org/onap/nbi/apis/serviceinventory/AaiClient.java')
-rw-r--r-- | src/main/java/org/onap/nbi/apis/serviceinventory/AaiClient.java | 201 |
1 files changed, 107 insertions, 94 deletions
diff --git a/src/main/java/org/onap/nbi/apis/serviceinventory/AaiClient.java b/src/main/java/org/onap/nbi/apis/serviceinventory/AaiClient.java index ebb5144..5424db5 100644 --- a/src/main/java/org/onap/nbi/apis/serviceinventory/AaiClient.java +++ b/src/main/java/org/onap/nbi/apis/serviceinventory/AaiClient.java @@ -1,17 +1,15 @@ /** - * Copyright (c) 2018 Orange + * Copyright (c) 2018 Orange * - * 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 + * 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 + * 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. + * 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. */ package org.onap.nbi.apis.serviceinventory; @@ -31,114 +29,129 @@ import org.springframework.stereotype.Service; @Service public class AaiClient extends BaseClient { - public static final String CUSTOMER_ID = "$customerId"; + public static final String CUSTOMER_ID = "$customerId"; - @Value("${aai.host}") - private String aaiHost; + @Value("${aai.host}") + private String aaiHost; - @Value("${aai.header.authorization}") - private String aaiHeaderAuthorization; + @Value("${aai.header.authorization}") + private String aaiHeaderAuthorization; - @Value("${aai.api.id}") - private String aaiApiId; + @Value("${aai.api.id}") + private String aaiApiId; - @Value("${aai.header.transaction.id}") - private String aaiTransactionId; + @Value("${aai.header.transaction.id}") + private String aaiTransactionId; - private static final String HEADER_AUTHORIZATION = "Authorization"; - private static final String X_FROM_APP_ID = "X-FromAppId"; - private static final Logger LOGGER = LoggerFactory.getLogger(AaiClient.class); - private static final String X_TRANSACTION_ID = "X-TransactionId"; + private static final String HEADER_AUTHORIZATION = "Authorization"; + private static final String X_FROM_APP_ID = "X-FromAppId"; + private static final Logger LOGGER = LoggerFactory.getLogger(AaiClient.class); + private static final String X_TRANSACTION_ID = "X-TransactionId"; - private String aaiServiceUrl; - private String aaiServicesUrl; - private String aaiServicesInstancesUrl; + private String aaiServiceUrl; + private String aaiServiceCustomerUrl; + private String aaiServicesUrl; + private String aaiServicesInstancesUrl; - @PostConstruct - private void setUpAndlogAAIUrl() { - aaiServiceUrl= new StringBuilder().append(aaiHost).append(OnapComponentsUrlPaths.AAI_GET_SERVICE).toString(); - aaiServicesUrl= new StringBuilder().append(aaiHost).append(OnapComponentsUrlPaths.AAI_GET_SERVICES_FOR_CUSTOMER_PATH).toString(); - aaiServicesInstancesUrl= new StringBuilder().append(aaiHost).append(OnapComponentsUrlPaths.AAI_GET_SERVICE_INSTANCES_PATH).toString(); + @PostConstruct + private void setUpAndlogAAIUrl() { + aaiServiceUrl = new StringBuilder().append(aaiHost) + .append(OnapComponentsUrlPaths.AAI_GET_SERVICE).toString(); + aaiServiceCustomerUrl = new StringBuilder().append(aaiHost) + .append(OnapComponentsUrlPaths.AAI_GET_SERVICE_CUSTOMER).toString(); + aaiServicesUrl = new StringBuilder().append(aaiHost) + .append(OnapComponentsUrlPaths.AAI_GET_SERVICES_FOR_CUSTOMER_PATH).toString(); + aaiServicesInstancesUrl = new StringBuilder().append(aaiHost) + .append(OnapComponentsUrlPaths.AAI_GET_SERVICE_INSTANCES_PATH).toString(); - LOGGER.info("AAI service url : "+aaiServiceUrl); - LOGGER.info("AAI services url : "+aaiServicesUrl); - LOGGER.info("AAI service instances url : "+aaiServicesInstancesUrl); + LOGGER.info("AAI service url : " + aaiServiceUrl); + LOGGER.info("AAI services url : " + aaiServicesUrl); + LOGGER.info("AAI service instances url : " + aaiServicesInstancesUrl); - } + } - private HttpHeaders buildRequestHeaderForAAI() { + private HttpHeaders buildRequestHeaderForAAI() { - HttpHeaders httpHeaders = new HttpHeaders(); - httpHeaders.add(HEADER_AUTHORIZATION, aaiHeaderAuthorization); - httpHeaders.add(X_FROM_APP_ID, aaiApiId); - httpHeaders.add("Accept", "application/json"); - httpHeaders.add("Content-Type", "application/json"); - httpHeaders.add(X_TRANSACTION_ID, aaiTransactionId); + HttpHeaders httpHeaders = new HttpHeaders(); + httpHeaders.add(HEADER_AUTHORIZATION, aaiHeaderAuthorization); + httpHeaders.add(X_FROM_APP_ID, aaiApiId); + httpHeaders.add("Accept", "application/json"); + httpHeaders.add("Content-Type", "application/json"); + httpHeaders.add(X_TRANSACTION_ID, aaiTransactionId); - return httpHeaders; + return httpHeaders; - } + } - public Map getCatalogService(String customerId, String serviceSpecName, String serviceId) { + public Map getCatalogService(String customerId, String serviceSpecName, String serviceId) { - String callUrlFormated = aaiServiceUrl.replace(CUSTOMER_ID, customerId); - callUrlFormated = callUrlFormated.replace("$serviceSpecName", serviceSpecName); - callUrlFormated = callUrlFormated.replace("$serviceId", serviceId); + String callUrlFormated = aaiServiceUrl.replace(CUSTOMER_ID, customerId); + callUrlFormated = callUrlFormated.replace("$serviceSpecName", serviceSpecName); + callUrlFormated = callUrlFormated.replace("$serviceId", serviceId); - ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); - if (response != null && response.getStatusCode().equals(HttpStatus.OK)) { - return (LinkedHashMap) response.getBody(); - } - return null; + ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); + if (response != null && response.getStatusCode().equals(HttpStatus.OK)) { + return (LinkedHashMap) response.getBody(); } - - public Map getService(String serviceId) { - - String callUrlFormated = aaiServiceUrl.replace("$serviceId", serviceId); - - ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); - if (response != null && response.getStatusCode().equals(HttpStatus.OK)) { - return (LinkedHashMap) response.getBody(); - } - return null; + return null; + } + + public Map getService(String serviceId) { + // Retrieve the Service Instance using AAI node query + String callUrlFormated = aaiServiceUrl.replace("$serviceId", serviceId); + ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); + if (response != null && response.getStatusCode().equals(HttpStatus.OK)) { + return (LinkedHashMap) response.getBody(); } + return null; + } - public Map getVNF(String relatedLink) { + public Map getServiceCustomer(String serviceId) { - StringBuilder callURL = new StringBuilder().append(aaiHost).append(relatedLink); - try{ - ResponseEntity<Object> response = callApiGet(callURL.toString(), buildRequestHeaderForAAI()); - return (LinkedHashMap) response.getBody(); - } catch (BackendFunctionalException e) { - LOGGER.error("error on calling {} , {}" , callURL.toString(), e); - return null; - } + String callUrlFormated = aaiServiceCustomerUrl.replace("$serviceId", serviceId); + ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); + if (response != null && response.getStatusCode().equals(HttpStatus.OK)) { + return (LinkedHashMap) response.getBody(); } - - public Map getServicesInAaiForCustomer(String customerId) { - String callUrlFormated = aaiServicesUrl.replace(CUSTOMER_ID, customerId); - try{ - ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); - return (LinkedHashMap) response.getBody(); - } catch (BackendFunctionalException e) { - LOGGER.error("error on calling {} , {}" , callUrlFormated, e); - return null; - } + return null; + } + + public Map getVNF(String relatedLink) { + + StringBuilder callURL = new StringBuilder().append(aaiHost).append(relatedLink); + try { + ResponseEntity<Object> response = callApiGet(callURL.toString(), buildRequestHeaderForAAI()); + return (LinkedHashMap) response.getBody(); + } catch (BackendFunctionalException e) { + LOGGER.error("error on calling {} , {}", callURL.toString(), e); + return null; } - - public Map getServiceInstancesInAaiForCustomer(String customerId, String serviceType) { - String callUrlFormated = aaiServicesInstancesUrl.replace(CUSTOMER_ID, customerId); - callUrlFormated = callUrlFormated.replace("$serviceSpecName", serviceType); - - try{ - ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); - return (LinkedHashMap) response.getBody(); - } catch (BackendFunctionalException e) { - LOGGER.error("error on calling {} , {}" , callUrlFormated, e); - return null; - } + } + + public Map getServicesInAaiForCustomer(String customerId) { + String callUrlFormated = aaiServicesUrl.replace(CUSTOMER_ID, customerId); + try { + ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); + return (LinkedHashMap) response.getBody(); + } catch (BackendFunctionalException e) { + LOGGER.error("error on calling {} , {}", callUrlFormated, e); + return null; + } + } + + public Map getServiceInstancesInAaiForCustomer(String customerId, String serviceType) { + String callUrlFormated = aaiServicesInstancesUrl.replace(CUSTOMER_ID, customerId); + callUrlFormated = callUrlFormated.replace("$serviceSpecName", serviceType); + + try { + ResponseEntity<Object> response = callApiGet(callUrlFormated, buildRequestHeaderForAAI()); + return (LinkedHashMap) response.getBody(); + } catch (BackendFunctionalException e) { + LOGGER.error("error on calling {} , {}", callUrlFormated, e); + return null; } + } } |