Merge automation from ECOMP's repository
[vid.git] / vid-automation / src / main / java / org / onap / simulator / presetGenerator / presets / aai / PresetAAIGetNetworkCollectionDetails.java
1 package org.onap.simulator.presetGenerator.presets.aai;
2
3 import com.google.common.collect.ImmutableList;
4 import com.google.common.collect.ImmutableMap;
5 import java.util.Collections;
6 import java.util.List;
7 import java.util.Map;
8 import org.onap.simulator.presetGenerator.presets.BasePresets.BaseAAIPreset;
9 import org.springframework.http.HttpMethod;
10
11 public class PresetAAIGetNetworkCollectionDetails extends BaseAAIPreset {
12
13
14     private String serviceInstanceId;
15
16     public PresetAAIGetNetworkCollectionDetails(String serviceInstanceId) {
17         this.serviceInstanceId = serviceInstanceId;
18     }
19
20     @Override
21     public HttpMethod getReqMethod() {
22         return HttpMethod.PUT;
23     }
24
25     @Override
26     public String getReqPath() {
27         return getRootPath() + "/query";
28     }
29
30     @Override
31     public Map<String, List> getQueryParams() {
32         return ImmutableMap.of(
33                 "format", Collections.singletonList("resource")
34         );
35     }
36
37     @Override
38     public Object getRequestBody() {
39         return ImmutableMap.of(
40                 "start", ImmutableList.of("nodes/service-instances/service-instance/" + getServiceInstanceId()),
41                 "query", "query/network-collection-ByServiceInstance"
42         );
43     }
44
45     public String getServiceInstanceId() {
46         return serviceInstanceId;
47     }
48
49
50     @Override
51     public Object getResponseBody() {
52         return "{\n" +
53                 "  \"results\": [\n" +
54                 "    {\n" +
55                 "      \"service-instance\": {\n" +
56                 "        \"service-instance-id\": \"2UJZZ01777-rs804s\",\n" +
57                 "        \"resource-version\": \"1521662813382\",\n" +
58                 "        \"relationship-list\": {\n" +
59                 "          \"relationship\": [\n" +
60                 "            {\n" +
61                 "              \"related-to\": \"collection\",\n" +
62                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
63                 "              \"related-link\": \"/aai/v13/network/collections/collection/collection-1-2018-rs804s\",\n" +
64                 "              \"relationship-data\": [\n" +
65                 "                {\n" +
66                 "                  \"relationship-key\": \"collection.collection-id\",\n" +
67                 "                  \"relationship-value\": \"collection-1-2018-rs804s\"\n" +
68                 "                }\n" +
69                 "              ]\n" +
70                 "            }\n" +
71                 "          ]\n" +
72                 "        }\n" +
73                 "      }\n" +
74                 "    },\n" +
75                 "    {\n" +
76                 "      \"collection\": {\n" +
77                 "        \"collection-id\": \"collection-1-2018-rs804s\",\n" +
78                 "        \"model-invariant-id\": \"5761e0a7-defj777\",\n" +
79                 "        \"model-version-id\": \"5761e0a7-defj232\",\n" +
80                 "        \"collection-name\": \"collection-name\",\n" +
81                 "        \"collection-type\": \"L3-NETWORK\",\n" +
82                 "        \"collection-role\": \"SUB-INTERFACE\",\n" +
83                 "        \"collection-function\": \"collection-function\",\n" +
84                 "        \"collection-customization-id\": \"custom-unique-data-id\",\n" +
85                 "        \"relationship-list\": {\n" +
86                 "          \"relationship\": [\n" +
87                 "            {\n" +
88                 "              \"related-to\": \"service-instance\",\n" +
89                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
90                 "              \"related-link\": \"/aai/v13/business/customers/customer/customer-1-2017-rs804s/service-subscriptions/service-subscription/service-value7-rs804s/service-instances/service-instance/2UJZZ01777-rs804s\",\n" +
91                 "              \"relationship-data\": [\n" +
92                 "                {\n" +
93                 "                  \"relationship-key\": \"customer.global-customer-id\",\n" +
94                 "                  \"relationship-value\": \"customer-1-2017-rs804s\"\n" +
95                 "                },\n" +
96                 "                {\n" +
97                 "                  \"relationship-key\": \"service-subscription.service-type\",\n" +
98                 "                  \"relationship-value\": \"service-value7-rs804s\"\n" +
99                 "                },\n" +
100                 "                {\n" +
101                 "                  \"relationship-key\": \"service-instance.service-instance-id\",\n" +
102                 "                  \"relationship-value\": \"2UJZZ01777-rs804s\"\n" +
103                 "                }\n" +
104                 "              ],\n" +
105                 "              \"related-to-property\": [\n" +
106                 "                {\n" +
107                 "                  \"property-key\": \"service-instance.service-instance-name\"\n" +
108                 "                }\n" +
109                 "              ]\n" +
110                 "            },\n" +
111                 "            {\n" +
112                 "              \"related-to\": \"instance-group\",\n" +
113                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
114                 "              \"related-link\": \"/aai/v13/network/instance-groups/instance-group/instanceGroup-2018-rs804s\",\n" +
115                 "              \"relationship-data\": [\n" +
116                 "                {\n" +
117                 "                  \"relationship-key\": \"instance-group.id\",\n" +
118                 "                  \"relationship-value\": \"instanceGroup-2018-rs804s\"\n" +
119                 "                }\n" +
120                 "              ],\n" +
121                 "              \"related-to-property\": [\n" +
122                 "                {\n" +
123                 "                  \"property-key\": \"instance-group.description\",\n" +
124                 "                  \"property-value\": \"zr6h\"\n" +
125                 "                },\n" +
126                 "                {\n" +
127                 "                  \"property-key\": \"instance-group.instance-group-name\",\n" +
128                 "                  \"property-value\": \"wKmBXiO1xm8bK\"\n" +
129                 "                }\n" +
130                 "              ]\n" +
131                 "            }\n" +
132                 "          ]\n" +
133                 "        },\n" +
134                 "        \"resource-version\": \"1521662811309\"\n" +
135                 "      }\n" +
136                 "    },\n" +
137                 "    {\n" +
138                 "      \"instance-group\": {\n" +
139                 "        \"instance-group-role\": \"JZmha7QSS4tJ\",\n" +
140                 "        \"model-invariant-id\": \"5761e0a7-defj777\",\n" +
141                 "        \"model-version-id\": \"5761e0a7-defj22\",\n" +
142                 "        \"id\": \"instanceGroup-2018-rs804s\",\n" +
143                 "        \"description\": \"zr6h\",\n" +
144                 "        \"instance-group-type\": \"7DDjOdNL\",\n" +
145                 "        \"resource-version\": \"1521662814023\",\n" +
146                 "        \"instance-group-name\": \"wKmBXiO1xm8bK\",\n" +
147                 "        \"instance-group-function\": \"testfunction2\",\n" +
148                 "        \"relationship-list\": {\n" +
149                 "          \"relationship\": [\n" +
150                 "            {\n" +
151                 "              \"related-to\": \"l3-network\",\n" +
152                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
153                 "              \"related-link\": \"/aai/v13/network/l3-networks/l3-network/l3network-id-rs804s\",\n" +
154                 "              \"relationship-data\": [\n" +
155                 "                {\n" +
156                 "                  \"relationship-key\": \"l3-network.network-id\",\n" +
157                 "                  \"relationship-value\": \"l3network-id-rs804s\"\n" +
158                 "                }\n" +
159                 "              ],\n" +
160                 "              \"related-to-property\": [\n" +
161                 "                {\n" +
162                 "                  \"property-key\": \"l3-network.network-name\",\n" +
163                 "                  \"property-value\": \"oam-net\"\n" +
164                 "                }\n" +
165                 "              ]\n" +
166                 "            },\n" +
167                 "            {\n" +
168                 "              \"related-to\": \"collection\",\n" +
169                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
170                 "              \"related-link\": \"/aai/v13/network/collections/collection/collection-1-2018-rs804s\",\n" +
171                 "              \"relationship-data\": [\n" +
172                 "                {\n" +
173                 "                  \"relationship-key\": \"collection.collection-id\",\n" +
174                 "                  \"relationship-value\": \"collection-1-2018-rs804s\"\n" +
175                 "                }\n" +
176                 "              ]\n" +
177                 "            },\n" +
178                 "            {\n" +
179                 "              \"related-to\": \"l3-network\",\n" +
180                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
181                 "              \"related-link\": \"/aai/v13/network/l3-networks/l3-network/l3network-id-3-rs804s\",\n" +
182                 "              \"relationship-data\": [\n" +
183                 "                {\n" +
184                 "                  \"relationship-key\": \"l3-network.network-id\",\n" +
185                 "                  \"relationship-value\": \"l3network-id-3-rs804s\"\n" +
186                 "                }\n" +
187                 "              ],\n" +
188                 "              \"related-to-property\": [\n" +
189                 "                {\n" +
190                 "                  \"property-key\": \"l3-network.network-name\",\n" +
191                 "                  \"property-value\": \"oam-net\"\n" +
192                 "                }\n" +
193                 "              ]\n" +
194                 "            },\n" +
195                 "            {\n" +
196                 "              \"related-to\": \"l3-network\",\n" +
197                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
198                 "              \"related-link\": \"/aai/v13/network/l3-networks/l3-network/l3network-id-2-rs804s\",\n" +
199                 "              \"relationship-data\": [\n" +
200                 "                {\n" +
201                 "                  \"relationship-key\": \"l3-network.network-id\",\n" +
202                 "                  \"relationship-value\": \"l3network-id-2-rs804s\"\n" +
203                 "                }\n" +
204                 "              ],\n" +
205                 "              \"related-to-property\": [\n" +
206                 "                {\n" +
207                 "                  \"property-key\": \"l3-network.network-name\",\n" +
208                 "                  \"property-value\": \"oam-net\"\n" +
209                 "                }\n" +
210                 "              ]\n" +
211                 "            }\n" +
212                 "          ]\n" +
213                 "        }\n" +
214                 "      }\n" +
215                 "    },\n" +
216                 "    {\n" +
217                 "      \"l3-network\": {\n" +
218                 "        \"network-id\": \"l3network-id-rs804s\",\n" +
219                 "        \"network-name\": \"oam-net\",\n" +
220                 "        \"network-type\": \"Tenant_Layer_3\",\n" +
221                 "        \"network-role\": \"RosemaProtectedOam.OAM\",\n" +
222                 "        \"network-technology\": \"Contrail\",\n" +
223                 "        \"is-bound-to-vpn\": false,\n" +
224                 "        \"resource-version\": \"1521662814627\",\n" +
225                 "        \"orchestration-status\": \"Created\",\n" +
226                 "        \"is-provider-network\": false,\n" +
227                 "        \"is-shared-network\": false,\n" +
228                 "        \"is-external-network\": false,\n" +
229                 "        \"relationship-list\": {\n" +
230                 "          \"relationship\": [\n" +
231                 "            {\n" +
232                 "              \"related-to\": \"instance-group\",\n" +
233                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
234                 "              \"related-link\": \"/aai/v13/network/instance-groups/instance-group/instanceGroup-2018-rs804s\",\n" +
235                 "              \"relationship-data\": [\n" +
236                 "                {\n" +
237                 "                  \"relationship-key\": \"instance-group.id\",\n" +
238                 "                  \"relationship-value\": \"instanceGroup-2018-rs804s\"\n" +
239                 "                }\n" +
240                 "              ],\n" +
241                 "              \"related-to-property\": [\n" +
242                 "                {\n" +
243                 "                  \"property-key\": \"instance-group.description\",\n" +
244                 "                  \"property-value\": \"zr6h\"\n" +
245                 "                },\n" +
246                 "                {\n" +
247                 "                  \"property-key\": \"instance-group.instance-group-name\",\n" +
248                 "                  \"property-value\": \"wKmBXiO1xm8bK\"\n" +
249                 "                }\n" +
250                 "              ]\n" +
251                 "            }\n" +
252                 "          ]\n" +
253                 "        }\n" +
254                 "      }\n" +
255                 "    },\n" +
256                 "    {\n" +
257                 "      \"l3-network\": {\n" +
258                 "        \"network-id\": \"l3network-id-3-rs804s\",\n" +
259                 "        \"network-name\": \"oam-net\",\n" +
260                 "        \"network-type\": \"Tenant_Layer_3\",\n" +
261                 "        \"network-role\": \"RosemaProtectedOam.OAM\",\n" +
262                 "        \"network-technology\": \"Contrail\",\n" +
263                 "        \"is-bound-to-vpn\": false,\n" +
264                 "        \"resource-version\": \"1521662816043\",\n" +
265                 "        \"orchestration-status\": \"Created\",\n" +
266                 "        \"is-provider-network\": false,\n" +
267                 "        \"is-shared-network\": false,\n" +
268                 "        \"is-external-network\": false,\n" +
269                 "        \"relationship-list\": {\n" +
270                 "          \"relationship\": [\n" +
271                 "            {\n" +
272                 "              \"related-to\": \"instance-group\",\n" +
273                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
274                 "              \"related-link\": \"/aai/v13/network/instance-groups/instance-group/instanceGroup-2018-rs804s\",\n" +
275                 "              \"relationship-data\": [\n" +
276                 "                {\n" +
277                 "                  \"relationship-key\": \"instance-group.id\",\n" +
278                 "                  \"relationship-value\": \"instanceGroup-2018-rs804s\"\n" +
279                 "                }\n" +
280                 "              ],\n" +
281                 "              \"related-to-property\": [\n" +
282                 "                {\n" +
283                 "                  \"property-key\": \"instance-group.description\",\n" +
284                 "                  \"property-value\": \"zr6h\"\n" +
285                 "                },\n" +
286                 "                {\n" +
287                 "                  \"property-key\": \"instance-group.instance-group-name\",\n" +
288                 "                  \"property-value\": \"wKmBXiO1xm8bK\"\n" +
289                 "                }\n" +
290                 "              ]\n" +
291                 "            }\n" +
292                 "          ]\n" +
293                 "        }\n" +
294                 "      }\n" +
295                 "    },\n" +
296                 "    {\n" +
297                 "      \"l3-network\": {\n" +
298                 "        \"network-id\": \"l3network-id-2-rs804s\",\n" +
299                 "        \"network-name\": \"oam-net\",\n" +
300                 "        \"network-type\": \"Tenant_Layer_3\",\n" +
301                 "        \"network-role\": \"RosemaProtectedOam.OAM\",\n" +
302                 "        \"network-technology\": \"Contrail\",\n" +
303                 "        \"is-bound-to-vpn\": false,\n" +
304                 "        \"resource-version\": \"1521662815304\",\n" +
305                 "        \"orchestration-status\": \"Created\",\n" +
306                 "        \"is-provider-network\": false,\n" +
307                 "        \"is-shared-network\": false,\n" +
308                 "        \"is-external-network\": false,\n" +
309                 "        \"relationship-list\": {\n" +
310                 "          \"relationship\": [\n" +
311                 "            {\n" +
312                 "              \"related-to\": \"instance-group\",\n" +
313                 "              \"relationship-label\": \"org.onap.relationships.inventory.MemberOf\",\n" +
314                 "              \"related-link\": \"/aai/v13/network/instance-groups/instance-group/instanceGroup-2018-rs804s\",\n" +
315                 "              \"relationship-data\": [\n" +
316                 "                {\n" +
317                 "                  \"relationship-key\": \"instance-group.id\",\n" +
318                 "                  \"relationship-value\": \"instanceGroup-2018-rs804s\"\n" +
319                 "                }\n" +
320                 "              ],\n" +
321                 "              \"related-to-property\": [\n" +
322                 "                {\n" +
323                 "                  \"property-key\": \"instance-group.description\",\n" +
324                 "                  \"property-value\": \"zr6h\"\n" +
325                 "                },\n" +
326                 "                {\n" +
327                 "                  \"property-key\": \"instance-group.instance-group-name\",\n" +
328                 "                  \"property-value\": \"wKmBXiO1xm8bK\"\n" +
329                 "                }\n" +
330                 "              ]\n" +
331                 "            }\n" +
332                 "          ]\n" +
333                 "        }\n" +
334                 "      }\n" +
335                 "    }\n" +
336                 "  ]\n" +
337                 "}";
338     }
339
340 }