aboutsummaryrefslogtreecommitdiffstats
path: root/vid-automation/src/main/java/org/onap/simulator/presetGenerator/presets/aai/PresetAAIServiceInstanceDSLPut.java
diff options
context:
space:
mode:
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"
+ + "}}]}}]}}]}";
+
+ }
+}