aboutsummaryrefslogtreecommitdiffstats
path: root/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java
diff options
context:
space:
mode:
authorPATTANAYAK, SAUMYA SWARUP (sp931a) <sp931a@att.com>2021-09-22 10:22:53 -0400
committerPATTANAYAK, SAUMYA SWARUP (sp931a) <sp931a@att.com>2021-09-29 10:28:22 -0400
commitf78df9f30d5b7bda1b291bff34dd85bdd9411c12 (patch)
tree3bdcae2f31ebdbb6bb2ff21e13a26d83f2e74a00 /vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java
parenta1d209deac01bc0f8f7be96a585bdbef9cc0cdb9 (diff)
AAI Query optimization for VID
Issue-ID: VID-986 Change-Id: Ia3e012c41df4e9049ce9a1ae56ec83b276e11611 Signed-off-by: PATTANAYAK, SAUMYA SWARUP (sp931a) <sp931a@att.com>
Diffstat (limited to 'vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java')
-rw-r--r--vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java105
1 files changed, 105 insertions, 0 deletions
diff --git a/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java b/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java
new file mode 100644
index 000000000..3ab5a4bbd
--- /dev/null
+++ b/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java
@@ -0,0 +1,105 @@
+package org.onap.simulator.presetGenerator.presets.aai;
+
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMap;
+import org.onap.simulator.presetGenerator.presets.BasePresets.BaseAAIPreset;
+import org.springframework.http.HttpMethod;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+
+public class PresetAAIServiceInstanceDSLPut extends BaseAAIPreset {
+
+ public PresetAAIServiceInstanceDSLPut(String globalCustomerId, String serviceInstanceIdentifier, String instanceIdentifierType) {
+ this.serviceInstanceIdentifier = serviceInstanceIdentifier;
+ this.globalCustomerId = globalCustomerId;
+ this.instanceIdentifierType = instanceIdentifierType;
+ }
+
+ public String getInstanceIdentifierType() {
+ return instanceIdentifierType;
+ }
+
+ private final String instanceIdentifierType;
+ private final String globalCustomerId;
+
+ public String getGlobalCustomerId() {
+ return globalCustomerId;
+ }
+
+ public String getServiceInstanceIdentifier() {
+ return serviceInstanceIdentifier;
+ }
+
+ private final String serviceInstanceIdentifier;
+
+ @Override
+ public HttpMethod getReqMethod() {
+ return HttpMethod.PUT;
+ }
+
+ @Override
+ public String getReqPath() {
+ return getRootPath() + "/dsl";
+ }
+
+ @Override
+ public Map<String, List> getQueryParams() {
+ return ImmutableMap.of(
+ "format", Collections.singletonList("resource"),
+ "nodesOnly", Collections.singletonList("true"),
+ "depth", Collections.singletonList("0"),
+ "as-tree", Collections.singletonList("true")
+ );
+ }
+
+ @Override
+ public Object getRequestBody() {
+ String requestBody = null;
+ String query = null;
+ if(getInstanceIdentifierType().equals("Service Instance Id")) {
+ query = "customer*('global-customer-id','" + getGlobalCustomerId() + "')>" +
+ "service-subscription>service-instance*('service-instance-id','" + getServiceInstanceIdentifier() + "')";
+ requestBody = "{\"dsl\":\"" + query + "\"}";
+ } else {
+ query = "customer*('global-customer-id','" + getGlobalCustomerId() + "')>" +
+ "service-subscription>service-instance*('service-instance-name','" + getServiceInstanceIdentifier() + "')";
+ requestBody = "{\"dsl\":\"" + query + "\"}";
+ }
+ return requestBody;
+ }
+
+
+ @Override
+ public Object getResponseBody() {
+ return "{\"results\": [\n"
+ + "{\n"
+ + "\"customer\": {\n"
+ + "\"global-customer-id\": \"a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb\",\n"
+ + "\"subscriber-name\": \"Mobility\",\n"
+ + "\"subscriber-type\": \"INFRA\",\n"
+ + "\"resource-version\": \"1602518417955\",\n"
+ + "\"related-nodes\": [\n"
+ + "{\n"
+ + "\"service-subscription\": {\n"
+ + "\"service-type\": \"VPMS\",\n"
+ + "\"resource-version\": \"1629183620246\",\n"
+ + "\"related-nodes\": [\n"
+ + "{\n"
+ + "\"service-instance\": {\n"
+ + "\"service-instance-id\": \"5d942bc7-3acf-4e35-836a-393619ebde66\",\n"
+ + "\"service-instance-name\": \"dpa2actsf5001v_Port_Mirroring_dpa2a_SVC\",\n"
+ + "\"service-type\": \"PORT-MIRROR\",\n"
+ + "\"service-role\": \"VPROBE\",\n"
+ + "\"environment-context\": \"General_Revenue-Bearing\",\n"
+ + "\"workload-context\": \"Production\",\n"
+ + "\"model-invariant-id\": \"0757d856-a9c6-450d-b494-e1c0a4aab76f\",\n"
+ + "\"model-version-id\": \"a9088517-efe8-4bed-9c54-534462cb08c2\",\n"
+ + "\"resource-version\": \"1615330529236\",\n"
+ + "\"selflink\": \"SOME_SELF_LINK\",\n"
+ + "\"orchestration-status\": \"Active\"\n"
+ + "}}]}}]}}]}";
+
+ }
+}