From f8dd15950ce50855b989bfee6133a91205138042 Mon Sep 17 00:00:00 2001 From: Rich Tabedzki Date: Thu, 10 Aug 2017 02:07:22 +0000 Subject: [SDNC-30] summary Updated code to the latest version of AAI model Change-Id: I7aea6fc44cf1586c5915da1e2cffe15fa666eef0 Signed-off-by: Rich Tabedzki --- .../org/openecomp/sdnc/sli/aai/GenericRequest.java | 158 +++++---------------- 1 file changed, 39 insertions(+), 119 deletions(-) (limited to 'aai-service/provider/src/main/java/org/openecomp/sdnc/sli/aai/GenericRequest.java') diff --git a/aai-service/provider/src/main/java/org/openecomp/sdnc/sli/aai/GenericRequest.java b/aai-service/provider/src/main/java/org/openecomp/sdnc/sli/aai/GenericRequest.java index 1da543b..1d51b82 100644 --- a/aai-service/provider/src/main/java/org/openecomp/sdnc/sli/aai/GenericRequest.java +++ b/aai-service/provider/src/main/java/org/openecomp/sdnc/sli/aai/GenericRequest.java @@ -24,6 +24,7 @@ package org.openecomp.sdnc.sli.aai; import java.io.UnsupportedEncodingException; import java.lang.annotation.Annotation; import java.lang.reflect.Field; +import java.lang.reflect.Method; import java.net.MalformedURLException; import java.net.URL; import java.util.HashMap; @@ -37,8 +38,8 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.base.Joiner; -import org.openecomp.aai.inventory.v10.L3Network; -import org.openecomp.aai.inventory.v10.L3Networks; +import org.openecomp.aai.inventory.v11.L3Network; +import org.openecomp.aai.inventory.v11.L3Networks; public class GenericRequest extends AAIRequest { @@ -50,30 +51,31 @@ public class GenericRequest extends AAIRequest { } @Override - public URL getRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException { + public String updatePathDataValues(Object resourceVersion) throws UnsupportedEncodingException, MalformedURLException { - String request_url = null; String originalPath = null; String pathSubstitute = null; - - request_url = target_uri + getRequestPath(); - + + String request_url = getRequestPath(); + Map queryParams = new HashMap (); if(resourceVersion != null) { - queryParams.put("resource-version",resourceVersion); + queryParams.put("resource-version", resourceVersion.toString()); } Set uniqueResources = extractUniqueResourceSetFromKeys(requestProperties.stringPropertyNames()); String[] keys = requestProperties.keySet().toArray(new String[0]); for(String key : keys) { - if("cloud-region.cloud-region-id".equals(key)) - continue; - if("entitlement.resource-uuid".equals(key)) - continue; - if("license.resource-uuid".equals(key)) + switch(key) { + case "cloud-region.cloud-region-id": + case "entitlement.resource-uuid": + case "license.resource-uuid": + case "route-target.route-target-role": + case "service-capability.vnf-type": + case "ctag-pool.availability-zone-name": continue; - + } String value = requestProperties.getProperty(key); if(key.contains(".")) { @@ -99,6 +101,27 @@ public class GenericRequest extends AAIRequest { String encoded_owner = encodeQuery(value); String encoded_region = encodeQuery(cloudRegionId); request_url = request_url.replace(token, String.format("%s/%s/%s", splitKey[0], encoded_owner, encoded_region)); + } else if("route-target".equals(splitKey[0])){ + String cloudRegionId = requestProperties.getProperty("route-target.route-target-role"); + aaiService.LOGwriteDateTrace("route-target-role", cloudRegionId); + String token = String.format("%s/{%s}/{route-target-role}", splitKey[0], splitKey[1] ); + String encoded_owner = encodeQuery(value); + String encoded_region = encodeQuery(cloudRegionId); + request_url = request_url.replace(token, String.format("%s/%s/%s", splitKey[0], encoded_owner, encoded_region)); + } else if("service-capability".equals(splitKey[0])){ + String cloudRegionId = requestProperties.getProperty("service-capability.vnf-type"); + aaiService.LOGwriteDateTrace("vnf-type", cloudRegionId); + String token = String.format("%s/{%s}/{vnf-type}", splitKey[0], splitKey[1] ); + String encoded_owner = encodeQuery(value); + String encoded_region = encodeQuery(cloudRegionId); + request_url = request_url.replace(token, String.format("%s/%s/%s", splitKey[0], encoded_owner, encoded_region)); + } else if("ctag-pool".equals(splitKey[0])){ + String cloudRegionId = requestProperties.getProperty("ctag-pool.availability-zone-name"); + aaiService.LOGwriteDateTrace("availability-zone-name", cloudRegionId); + String token = String.format("%s/{%s}/{availability-zone-name}", splitKey[0], splitKey[1] ); + String encoded_owner = encodeQuery(value); + String encoded_region = encodeQuery(cloudRegionId); + request_url = request_url.replace(token, String.format("%s/%s/%s", splitKey[0], encoded_owner, encoded_region)); } else { Class clazz = null; try { @@ -164,111 +187,8 @@ public class GenericRequest extends AAIRequest { String queryString = mapJoiner.join(queryParams); request_url = String.format("%s?%s", request_url, queryString); } - - URL http_req_url = new URL(request_url); - - aaiService.LOGwriteFirstTrace(method, http_req_url.toString()); - - - return http_req_url; - } - - - public URL OriginalgetRequestUrl(String method, String resourceVersion) throws UnsupportedEncodingException, MalformedURLException { - - String request_url = null; - - request_url = target_uri + getRequestPath(); - - Map keyValuepairs = new HashMap (); - Set uniqueResources = extractUniqueResourceSetFromKeys(requestProperties.stringPropertyNames()); - - String[] keys = requestProperties.keySet().toArray(new String[0]); - for(String key : keys) { - if("cloud-region.cloud-region-id".equals(key)) - continue; - if("entitlement.resource-uuid".equals(key)) - continue; - if("license.resource-uuid".equals(key)) - continue; - - - String value = requestProperties.getProperty(key); - if(key.contains(".")) { - String[] splitKey = key.split("\\."); - if("cloud-region".equals(splitKey[0])){ - String cloudRegionId = requestProperties.getProperty("cloud-region.cloud-region-id"); - aaiService.LOGwriteDateTrace("cloud-region-id", cloudRegionId); - String token = String.format("%s/{%s}/{cloud-region-id}", splitKey[0], splitKey[1] ); - String encoded_owner = encodeQuery(value); - String encoded_region = encodeQuery(cloudRegionId); - request_url = request_url.replace(token, String.format("%s/%s/%s", splitKey[0], encoded_owner, encoded_region)); - } else if("entitlement".equals(splitKey[0])){ - String cloudRegionId = requestProperties.getProperty("entitlement.resource-uuid"); - aaiService.LOGwriteDateTrace("resource-uuid", cloudRegionId); - String token = String.format("%s/{%s}/{resource-uuid}", splitKey[0], splitKey[1] ); - String encoded_owner = encodeQuery(value); - String encoded_region = encodeQuery(cloudRegionId); - request_url = request_url.replace(token, String.format("%s/%s/%s", splitKey[0], encoded_owner, encoded_region)); - } else if("license".equals(splitKey[0])){ - String cloudRegionId = requestProperties.getProperty("license.resource-uuid"); - aaiService.LOGwriteDateTrace("resource-uuid", cloudRegionId); - String token = String.format("%s/{%s}/{resource-uuid}", splitKey[0], splitKey[1] ); - String encoded_owner = encodeQuery(value); - String encoded_region = encodeQuery(cloudRegionId); - request_url = request_url.replace(token, String.format("%s/%s/%s", splitKey[0], encoded_owner, encoded_region)); - } else { - Class clazz = null; - try { - clazz = getClassFromResource(splitKey[0]); - } catch (ClassNotFoundException exc) { - LOG.warn("AAIRequest does not support class: " + exc.getMessage()); - return null; - } - - if(clazz != null) { - if(clazz == this.model) { - Field[] fields = this.model.getDeclaredFields(); - Field field = fields[0]; - String fieldName = field.getName(); - XmlElement annotation = field.getAnnotation(XmlElement.class); - String primaryId = annotation.name(); - if("##default".equals(primaryId)) { - primaryId = fieldName; - } - - String token = String.format("%s/{%s}", splitKey[0], primaryId); - - if(splitKey[1].equals(primaryId)) { - String encoded_vnf = encodeQuery(value); - request_url = request_url.replace(token, String.format("%s/%s", splitKey[0], encoded_vnf)); - } else { - String replacement = String.format("%s?%s=%s", splitKey[0], splitKey[1], encodeQuery(value)); - if(request_url.contains(token)) - request_url = request_url.replace(token, replacement); - } - } else { - String token = String.format("%s/{%s}", splitKey[0], splitKey[1]); - String encoded_vnf = encodeQuery(value); - request_url = request_url.replace(token, String.format("%s/%s", splitKey[0], encoded_vnf)); - } - } - - } - aaiService.LOGwriteDateTrace(splitKey[1], value); - } - } - - - if(resourceVersion != null) { - request_url = request_url +"?resource-version="+resourceVersion; - } - URL http_req_url = new URL(request_url); - - aaiService.LOGwriteFirstTrace(method, http_req_url.toString()); - - - return http_req_url; + + return request_url; } @Override -- cgit 1.2.3-korg