Merge automation from ECOMP's repository
[vid.git] / vid-automation / src / main / java / org / onap / simulator / presetGenerator / presets / aai / PresetAAIGetSubDetailsGetSpecificService.java
1 package org.onap.simulator.presetGenerator.presets.aai;
2
3 import static vid.automation.test.infra.ModelInfo.serviceFabricSriovService;
4
5 import com.google.common.collect.ImmutableMap;
6 import java.util.Collections;
7 import java.util.List;
8 import java.util.Map;
9 import org.onap.simulator.presetGenerator.presets.BasePresets.BaseAAIPreset;
10 import org.springframework.http.HttpMethod;
11 import vid.automation.test.infra.ModelInfo;
12
13 public class PresetAAIGetSubDetailsGetSpecificService extends BaseAAIPreset {
14     private String subscriberId;
15     private String subscriberName = "Emanuel";
16     private String orchStatus;
17
18     private String serviceInstanceId = "c187e9fe-40c3-4862-b73e-84ff056205f61234";
19     private String serviceInstanceName = "test_fabric_config";
20     private ModelInfo modelInfo = serviceFabricSriovService;
21
22     public PresetAAIGetSubDetailsGetSpecificService(String subscriberId) {
23         this.subscriberId = subscriberId == null ? "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb" : subscriberId;
24     }
25
26     public PresetAAIGetSubDetailsGetSpecificService(String subscriberId, String subscriberName, String orchStatus, ModelInfo modelInfo, String serviceInstanceId) {
27         this(subscriberId);
28         this.subscriberName = subscriberName;
29         this.orchStatus = orchStatus;
30         this.modelInfo = modelInfo;
31         this.serviceInstanceId = serviceInstanceId;
32     }
33
34     @Override
35     public Map<String, List> getQueryParams() {
36         return ImmutableMap.of("depth",  Collections.singletonList("2"));
37     }
38
39     @Override
40     public HttpMethod getReqMethod() {
41         return HttpMethod.GET;
42     }
43
44     @Override
45     public String getReqPath() {
46         return getRootPath() + "/business/customers/customer/" + getSubscriberId();
47     }
48
49     public String getSubscriberId() {
50         return subscriberId;
51     }
52
53     @Override
54     public Object getResponseBody() {
55         return "{" +
56                 "  \"global-customer-id\":\""+this.subscriberId+"\"," +
57                 "  \"subscriber-name\":\""+this.subscriberName+"\"," +
58                 "  \"subscriber-type\":\"INFRA\"," +
59                 "  \"resource-version\":\"1494255056308\"," +
60                 "  \"service-subscriptions\":{" +
61                 "    \"service-subscription\":[" +
62                 "      {" +
63                 "        \"service-type\":\"vFlowLogic\"," +
64                 "        \"resource-version\":\"1501700976809\"," +
65                 "        \"service-instances\":{" +
66                 "          \"service-instance\":[" +
67                 "            {" +
68                 "              \"service-instance-id\":\"414db2d4-18d0-415e-aac2-f255b586cfb5\"," +
69                 "              \"service-instance-name\":\"vFlowLogic-vflf_080117\"," +
70                 "              \"persona-model-id\":null," +
71                 "              \"persona-model-version\":null," +
72                 "              \"resource-version\":\"1502391806301\"," +
73                 "              \"orchestration-status\":\"Active\"," +
74                 "              \"model-invariant-id\":\"64dbe153-48c6-4d6f-95e7-12ff4cce9871\"," +
75                 "              \"model-version-id\":\"4e8b6372-dea3-4028-81d0-16eba59c94fb\"" +
76                 "            }," +
77                 "            {" +
78                 "              \"service-instance-id\":\"769be44e-981a-4da8-af3b-ca5fa76b7fb1\"," +
79                 "              \"service-instance-name\":\"vFlowLogic-vflp_080117\"," +
80                 "              \"persona-model-id\":null," +
81                 "              \"persona-model-version\":null," +
82                 "              \"resource-version\":\"1501712783617\"," +
83                 "              \"orchestration-status\":\"Active\"," +
84                 "              \"model-invariant-id\":\"14a99b56-dfb6-4300-97e1-ef10198ec936\"," +
85                 "              \"model-version-id\":\"9c6eee3b-8bd6-4a01-8afc-39441b63ecc9\"" +
86                 "            }" +
87                 "          ]" +
88                 "        }," +
89                 "        \"is-permitted\":false" +
90                 "      }," +
91                 "      {" +
92                 "        \"service-type\":\"TYLER SILVIA\"," +
93                 "        \"resource-version\":\"1501700976809\"," +
94                 "        \"service-instances\":{" +
95                 "          \"service-instance\":[" +
96                 "            {" +
97                 "              \"service-instance-id\": \""+this.serviceInstanceId+"\"," +
98                 "              \"service-instance-name\": \""+this.serviceInstanceName+"\"," +
99                 "              \"model-invariant-id\": \""+this.modelInfo.modelInvariantId+"\"," +
100                 "              \"model-version-id\": \""+this.modelInfo.modelVersionId+"\"," +
101                 "              \"resource-version\": \"1500789244674\"," +
102                 "              \"orchestration-status\": \""+this.orchStatus+"\"" +
103                 "            }" +
104                 "          ]" +
105                 "        }," +
106                 "        \"is-permitted\":false" +
107                 "      }" +
108                 "    ]" +
109                 "  }" +
110                 "}";
111     }
112
113 }
114