diff options
Diffstat (limited to 'vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIStandardQueryGet.java')
-rw-r--r-- | vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIStandardQueryGet.java | 156 |
1 files changed, 125 insertions, 31 deletions
diff --git a/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIStandardQueryGet.java b/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIStandardQueryGet.java index 13ee91e2b..642f941e8 100644 --- a/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIStandardQueryGet.java +++ b/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIStandardQueryGet.java @@ -1,18 +1,23 @@ package org.onap.simulator.presetGenerator.presets.aai; -import static org.apache.commons.lang3.ObjectUtils.defaultIfNull; -import static org.apache.commons.text.StringEscapeUtils.escapeJson; - import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableMultimap; import com.google.common.collect.Multimap; -import java.util.UUID; -import java.util.stream.Collectors; import org.apache.commons.lang3.RandomStringUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.commons.text.StrSubstitutor; import org.onap.simulator.presetGenerator.presets.BasePresets.BaseAAIPreset; import org.springframework.http.HttpMethod; +import java.util.UUID; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import static org.apache.commons.lang3.ObjectUtils.defaultIfNull; +import static org.apache.commons.text.StringEscapeUtils.escapeJson; +import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.ATT_AIC; +import static org.onap.simulator.presetGenerator.presets.aai.PresetAAIGetCloudOwnersByCloudRegionId.hvf6; + public class PresetAAIStandardQueryGet extends BaseAAIPreset { private final String instanceId; private final String instanceName; @@ -22,8 +27,9 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { private final String uri; private final String typeInResponse; private final Multimap<String, String> relationshipsUris; + private Placement placement; - private PresetAAIStandardQueryGet(String typeInResponse, String instanceId, String instanceName, String instanceType, String instanceRole, String uri, Multimap<String, String> relationshipsUris, String additionalProperties) { + private PresetAAIStandardQueryGet(String typeInResponse, String instanceId, String instanceName, String instanceType, String instanceRole, String uri, Multimap<String, String> relationshipsUris, String additionalProperties, Placement placement) { this.instanceId = defaultIfNull(instanceId, randomUUID()); this.instanceName = defaultIfNull(instanceName, randomAlphanumeric()); this.instanceType = defaultIfNull(instanceType, randomAlphanumeric()); @@ -32,15 +38,23 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { this.typeInResponse = typeInResponse; this.additionalProperties = additionalProperties; this.relationshipsUris = relationshipsUris; + this.placement = placement; } - private PresetAAIStandardQueryGet(String typeInResponse, String instanceId, String uri, Multimap<String, String> relationshipsUris, String additionalProperties) { - this(typeInResponse, instanceId, randomAlphanumeric(), randomAlphanumeric(), randomAlphanumeric(), uri, relationshipsUris, additionalProperties); + private PresetAAIStandardQueryGet(String typeInResponse, String instanceId, String uri, Multimap<String, String> relationshipsUris, String additionalProperties, Placement placement) { + this(typeInResponse, instanceId, randomAlphanumeric(), randomAlphanumeric(), randomAlphanumeric(), uri, relationshipsUris, additionalProperties, placement); } public static PresetAAIStandardQueryGet ofServiceInstance(String instanceId, final String modelVersionId, final String modelInvariantId, String subscriberId, String serviceType, Multimap<String, String> relationshipsUris) { + return ofServiceInstance(instanceId, "", "", modelVersionId, modelInvariantId, subscriberId, serviceType, "GARBAGE DATA", relationshipsUris); + } + + public static PresetAAIStandardQueryGet ofServiceInstance(String instanceId, String instanceType, String instanceRole, final String modelVersionId, final String modelInvariantId, String subscriberId, String serviceType, String orchStatus, Multimap<String, String> relationshipsUris) { return new PresetAAIStandardQueryGet( "service-instance", instanceId, + randomAlphanumeric(), + instanceType, + instanceRole, new StrSubstitutor(ImmutableMap.of( "global-customer-id", subscriberId, "service-type", serviceType, @@ -53,37 +67,44 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { "\"model-invariant-id\": \"" + modelInvariantId + "\", " + "\"model-version-id\": \"" + modelVersionId + "\", " + "\"resource-version\": \"GARBAGE DATA\", " + - "\"orchestration-status\": \"GARBAGE DATA\", " + "\"orchestration-status\": \"" + orchStatus + "\", ", null ); } public static PresetAAIStandardQueryGet ofInstanceGroup(String groupType, String groupRole, Multimap<String, String> relationshipsUris) { + return ofInstanceGroup(groupType, groupRole, relationshipsUris, "4bb2e27e-ddab-4790-9c6d-1f731bc14a45", "daeb6568-cef8-417f-9075-ed259ce59f48"); + } + + public static PresetAAIStandardQueryGet ofInstanceGroup(String groupType, String groupRole, Multimap<String, String> relationshipsUris, String modelInvariantId, String modelVersionId) { final String instanceId = randomUUID(); return new PresetAAIStandardQueryGet( "instance-group", instanceId, randomAlphanumeric(), groupType, groupRole, "/network/instance-groups/instance-group/" + instanceId, relationshipsUris, "" + " \"id\": \"" + instanceId + "\"," + - " \"model-invariant-id\": \"4bb2e27e-ddab-4790-9c6d-1f731bc14a45\"," + - " \"model-version-id\": \"daeb6568-cef8-417f-9075-ed259ce59f48\"," + + addModelIds(modelInvariantId, modelVersionId) + " \"description\": \"vTSBC Customer Landing Network Collection Desc\"," + " \"resource-version\": \"1536169790853\"," + - " \"instance-group-function\": \"vTSBC Customer Landing Network Collection\"," + " \"instance-group-function\": \"vTSBC Customer Landing Network Collection\",", null ); } - public static PresetAAIStandardQueryGet ofVnf(String instanceId, Multimap<String, String> relationshipsUris) { - return ofVnf(instanceId, "vnf-instance-model-version-id", "vnf-instance-model-customization-id", "", relationshipsUris); + public static PresetAAIStandardQueryGet ofVnf(String instanceId, Multimap<String, String> relationshipsUris, Placement placement) { + return ofVnf(instanceId, "vnf-instance-model-version-id", "vnf-instance-model-customization-id", "", relationshipsUris, placement); + } + + public static Placement defaultPlacement() { + return new Placement(ATT_AIC, hvf6, "bae71557c5bb4d5aac6743a4e5f1d054"); } - public static PresetAAIStandardQueryGet ofVnf(String instanceId, String modelVersionId,String modelCustomizationId, String additionalProperties, Multimap<String, String> relationshipsUris) { + public static PresetAAIStandardQueryGet ofVnf(String instanceId, String modelVersionId, String modelCustomizationId, String additionalProperties, Multimap<String, String> relationshipsUris, Placement placement) { return new PresetAAIStandardQueryGet( "vnf", instanceId, "/network/generic-vnfs/generic-vnf/" + instanceId, relationshipsUris, additionalProperties + "\"model-invariant-id\": \"vnf-instance-model-invariant-id\", " + - "\"model-customization-id\": \"" + modelCustomizationId + "\", "+ - "\"model-version-id\": \"" + modelVersionId + "\", " + "\"model-customization-id\": \"" + modelCustomizationId + "\", " + + "\"model-version-id\": \"" + modelVersionId + "\", ", placement ); } @@ -93,7 +114,7 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { "/network/generic-vnfs/generic-vnf/" + instanceId, relationshipsUris, additionalProperties + "\"model-invariant-id\": \"vnf-instance-model-invariant-id\", " + - "\"model-version-id\": \"" + modelVersionId + "\", " + "\"model-version-id\": \"" + modelVersionId + "\", ", null ); } @@ -109,7 +130,7 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { return ofL3Network(randomUUID(), randomAlphanumeric(), instanceType, relationshipsUris, orchStatus, "prov", "network-instance-model-version-id", "network-instance-model-customization-id"); } - public static PresetAAIStandardQueryGet ofL3Network(String instanceType, String orchStatus, String provStatus, String modelVersionId, String modelCustomizationId,Multimap<String, String> relationshipsUris) { + public static PresetAAIStandardQueryGet ofL3Network(String instanceType, String orchStatus, String provStatus, String modelVersionId, String modelCustomizationId, Multimap<String, String> relationshipsUris) { return ofL3Network(randomUUID(), randomAlphanumeric(), instanceType, relationshipsUris, orchStatus, provStatus, modelVersionId, modelCustomizationId); } @@ -130,7 +151,7 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { "\"is-external-network\": true, " + "\"model-invariant-id\": \"network-instance-model-invariant-id\", " + "\"model-customization-id\": \"" + modelCustomizationId + "\", " + - "\"model-version-id\": \"" + modelVersionId + "\", " + "\"model-version-id\": \"" + modelVersionId + "\", ", null ); } @@ -144,19 +165,59 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { " \"orchestration-status\": \"Active\"," + " \"model-customization-id\": \"bc3bbdcc-42f3-4682-b151-99c308d15255\"," + " \"vf-module-model-customization-id\": \"bc3bbdcc-42f3-4682-b151-99c308d15255\"," + - " \"resource-version\": \"1533679899735\"," + " \"resource-version\": \"1533679899735\",", null ); } - public static PresetAAIStandardQueryGet ofCollectionResource(String orchStatus, Multimap<String, String> relationshipsUris) { + + public static PresetAAIStandardQueryGet ofCollectionResource(String orchStatus, Multimap<String, String> relationshipsUris, String modelInvariantId, String modelVersionId) { final String instanceId = randomUUID(); return new PresetAAIStandardQueryGet( "collection", instanceId, randomAlphanumeric(), "L3-NETWORK", randomAlphanumeric(), "/network/collections/collection/" + instanceId, relationshipsUris, "" + "\"orchestration-status\": \"" + orchStatus + "\", " + - "\"model-invariant-id\": \"081ceb56-eb71-4566-a72d-3e7cbee5cdf1\", " + - "\"model-version-id\": \"ce8c98bc-4691-44fb-8ff0-7a47487c11c4\", " + addModelIds(modelInvariantId, modelVersionId), null + ); + } + + private static String addModelIds(String modelInvariantId, String modelVersionId) { + return "\"model-invariant-id\": \"" + modelInvariantId + "\", " + + "\"model-version-id\": \"" + modelVersionId + "\", "; + } + + public static PresetAAIStandardQueryGet ofVrf(String orchStatus, Multimap<String, String> relationshipsUris) { + final String instanceId = randomUUID(); + return new PresetAAIStandardQueryGet( + "configuration", instanceId, randomAlphanumeric(), "COLLECTION", randomAlphanumeric(), + "/network/configurations/configuration/" + instanceId, + relationshipsUris, "" + + "\"orchestration-status\": \"" + orchStatus + "\", " + + "\"model-invariant-id\": \"b67a289b-1688-496d-86e8-1583c828be0a\", " + + "\"model-customization-id\": \"dd024d73-9bd1-425d-9db5-476338d53433\", " + + "\"model-version-id\": \"9cac02be-2489-4374-888d-2863b4511a59\", ", null + ); + } + + public static PresetAAIStandardQueryGet ofVpn(String orchStatus, Multimap<String, String> relationshipsUris, String globalRoutTarget, String routeTargetRole, String customerId, String region) { + final String instanceId = randomUUID(); + return new PresetAAIStandardQueryGet( + "vpn", instanceId, randomAlphanumeric(), "SERVICE-INFRASTRUCTURE", randomAlphanumeric(), + "/network/collections/collection/" + instanceId, + relationshipsUris, "" + + "\"orchestration-status\": \"" + orchStatus + "\", " + + "\"prov-status\": \"" + "prov" + "\"," + + "\"model-invariant-id\": \"vpn-model-invariant-id\", " + + "\"model-customization-id\": \"vpn-model-customization-id\", " + + "\"customer-vpn-id\": \"" + customerId + "\", " + + "\"vpn-region\": \"" + region + "\", " + + "\"route-targets\" : [" + + " {" + + " \"global-route-target\":\"" + globalRoutTarget + "\"," + + " \"route-target-role\" : \"" + routeTargetRole + "\"" + + " }" + + " ],"+ + "\"model-version-id\": \"vpn-model-version-id\", ", null ); } @@ -171,7 +232,7 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { "\"vlan-id-outer\": " + vlanIdOuter + ", " + "\"resource-version\": \"1518934744675\", " + "\"in-maint\": false, " + - "\"is-ip-unnumbered\": false, " + "\"is-ip-unnumbered\": false, ", null ); } @@ -202,9 +263,10 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { additionalProperties + " \"relationship-list\": { " + " \"relationship\": [ " + - relationshipsUris.entries().stream().map( - entry -> buildRelationship(entry.getKey(), entry.getValue()) - ).collect(Collectors.joining(",")) + + Stream.concat( + placement !=null ? Stream.of(buildPlacementRelationship()) : Stream.empty(), + relationshipsUris.entries().stream().map(entry -> buildRelationship(entry.getKey(), entry.getValue()) + )).collect(Collectors.joining(",")) + " ] " + " } " + "} "; @@ -225,6 +287,40 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { "}"; } + private String buildPlacementRelationship() { + String relatedTo = StringUtils.equals(instanceType,"vf-module")? "vserver": "tenant"; + return "" + + " {" + + " \"related-to\": \"" + relatedTo + "\"," + + " \"relationship-label\": \"org.onap.relationships.inventory.Uses\"," + + " \"related-link\": \"/aai/v12/cloud-infrastructure/cloud-regions/cloud-region/irma-aic/" + this.placement.lcpRegionId + "/tenants/tenant/" + this.placement.tenantId+ "/vservers/vserver/5eef9f6d-9933-4bc6-9a1a-862d61309437\"," + + " \"relationship-data\": [" + + " {" + + " \"relationship-key\": \"cloud-region.cloud-owner\"," + + " \"relationship-value\": \""+ this.placement.cloudOwner+"\"" + + " }," + + " {" + + " \"relationship-key\": \"cloud-region.cloud-region-id\"," + + " \"relationship-value\": \"" + this.placement.lcpRegionId + "\"" + + " }," + + " {" + + " \"relationship-key\": \"tenant.tenant-id\"," + + " \"relationship-value\": \"" + this.placement.tenantId + "\"" + + " }," + + " {" + + " \"relationship-key\": \"vserver.vserver-id\"," + + " \"relationship-value\": \"5eef9f6d-9933-4bc6-9a1a-862d61309437\"" + + " }" + + " ]," + + " \"related-to-property\": [" + + " {" + + " \"property-key\": \"vserver.vserver-name\"," + + " \"property-value\": \"zolson5bfapn01dns002\"" + + " }" + + " ]" + + " }" ; + } + @Override public HttpMethod getReqMethod() { return HttpMethod.GET; @@ -234,6 +330,4 @@ public class PresetAAIStandardQueryGet extends BaseAAIPreset { public String getReqPath() { return getRootPath() + uri; } - - -} +}
\ No newline at end of file |