1 package org.onap.simulator.presetGenerator.presets.aai;
3 import com.google.common.collect.ImmutableList;
4 import com.google.common.collect.ImmutableMap;
5 import org.onap.simulator.presetGenerator.presets.BasePresets.BaseAAIPreset;
6 import org.springframework.http.HttpMethod;
8 import java.util.Collections;
11 import java.util.stream.Collectors;
13 public class PresetAAIServiceDesignAndCreationPut extends BaseAAIPreset {
15 public PresetAAIServiceDesignAndCreationPut(boolean emptyList) {
16 serviceModelIdentifiers = ImmutableList.of();
17 this.emptyList = emptyList;
20 public PresetAAIServiceDesignAndCreationPut(String modelVersionId, String modelInvariantId) {
21 serviceModelIdentifiers = ImmutableList.of(new ServiceModelIdentifiers(modelVersionId, modelInvariantId));
24 public PresetAAIServiceDesignAndCreationPut(List<ServiceModelIdentifiers> serviceModelIdentifiers) {
25 this.serviceModelIdentifiers = serviceModelIdentifiers;
28 public static class ServiceModelIdentifiers {
29 public final String modelVersionId;
30 public final String modelInvariantId;
32 public ServiceModelIdentifiers(String modelVersionId, String modelInvariantId) {
33 this.modelVersionId = modelVersionId;
34 this.modelInvariantId = modelInvariantId;
38 private List<ServiceModelIdentifiers> serviceModelIdentifiers;
42 public HttpMethod getReqMethod() {
43 return HttpMethod.PUT;
47 public String getReqPath() {
48 return getRootPath() + "/query";
52 public Map<String, List> getQueryParams() {
53 return ImmutableMap.of("format", Collections.singletonList("resource"));
57 public Object getRequestBody() {
58 return "{\"start\" : \"service-design-and-creation/models/\", \"query\" : \"query/serviceModels-byDistributionStatus?distributionStatus=DISTRIBUTION_COMPLETE_OK\"}";
63 private String presetModels() {
65 serviceModelIdentifiers.stream().map(identifiers ->
68 " \"model-invariant-id\": \"" + identifiers.modelInvariantId + "\"," +
69 " \"model-type\": \"resource\"," +
70 " \"resource-version\": \"1500138206526\"," +
71 " \"model-vers\": {" +
74 " \"model-version-id\": \"" + identifiers.modelVersionId + "\"," +
75 " \"model-name\": \"action-data\"," +
76 " \"model-version\": \"1.0\"," +
77 " \"model-description\": \"lustre settler sideways volcanic eight cellular\"," +
78 " \"resource-version\": \"1500137463984\"," +
79 " \"relationship-list\": {" +
80 " \"relationship\": [" +
82 " \"related-to\": \"model-element\"," +
83 " \"relationship-label\": \"isA\"," +
84 " \"related-link\": \"/aai/v12/service-design-and-creation/models/model/l2-bridge-for-wan-connector-model-id-ps-02/model-vers/model-ver/l2-bridge-for-wan-connector-resource-id-ps-02/model-elements/model-element/e874da22-729d-47bd-8c08-d596fd9c213d/model-elements/model-element/ccbb65b8-2faf-4f5f-80d9-804bb50f1455\"," +
85 " \"relationship-data\": [" +
87 " \"relationship-key\": \"model.model-invariant-id\"," +
88 " \"relationship-value\": \"l2-bridge-for-wan-connector-model-id-ps-02\"" +
91 " \"relationship-key\": \"model-ver.model-version-id\"," +
92 " \"relationship-value\": \"l2-bridge-for-wan-connector-resource-id-ps-02\"" +
95 " \"relationship-key\": \"model-element.model-element-uuid\"," +
96 " \"relationship-value\": \"e874da22-729d-47bd-8c08-d596fd9c213d\"" +
99 " \"relationship-key\": \"model-element.model-element-uuid\"," +
100 " \"relationship-value\": \"ccbb65b8-2faf-4f5f-80d9-804bb50f1455\"" +
111 ).collect(Collectors.joining());
116 public Object getResponseBody() {
118 return "{\"results\": [{}]}";
120 return "{\"results\": [" +
124 " \"model-invariant-id\": \"00beb8f9-6d39-452f-816d-c709b9cbb87d\"," +
125 " \"model-type\": \"resource\"," +
126 " \"resource-version\": \"4076846985447\"," +
127 " \"model-vers\": {" +
128 " \"model-ver\": [" +
130 " \"model-version-id\": \"0903e1c0-8e03-4936-b5c2-260653b96413\"," +
131 " \"model-name\": \"action-data\"," +
132 " \"model-version\": \"1.0\"," +
133 " \"model-description\": \"honor immunity exile prong below misshapen\"," +
134 " \"resource-version\": \"4076846985447\"" +
142 " \"model-invariant-id\": \"ea78c9e3-514d-4a0a-9162-13837fa54c35\"," +
143 " \"model-type\": \"resource\"," +
144 " \"resource-version\": \"1500137034452\"," +
145 " \"model-vers\": {" +
146 " \"model-ver\": [" +
148 " \"model-version-id\": \"666a06ee-4b57-46df-bacf-908da8f10c3f\"," +
149 " \"model-name\": \"multicast-configuration\"," +
150 " \"model-version\": \"1.0\"," +
151 " \"model-description\": \"python bullwhip appointment computation ambidextrous heaving\"," +
152 " \"resource-version\": \"1500136282691\"" +
160 " \"model-invariant-id\": \"78ca26d0-246d-11e7-93ae-92361f002671\"," +
161 " \"model-type\": \"resource\"," +
162 " \"resource-version\": \"1492627634298\"," +
163 " \"model-vers\": {" +
164 " \"model-ver\": [" +
166 " \"model-version-id\": \"20c4431c-246d-11e7-93ae-92361f002671\"," +
167 " \"model-name\": \"vSAMP10aDEV::base::module-0\"," +
168 " \"model-version\": \"2\"," +
169 " \"model-description\": \"MSO aLaCarte VF vSAMP10aDEV Base\"," +
170 " \"resource-version\": \"1492627634300\"" +
178 " \"model-invariant-id\": \"5b607929-6088-4614-97ef-cac817508e0e\"," +
179 " \"model-type\": \"resource\"," +
180 " \"resource-version\": \"1492814035001\"," +
181 " \"model-vers\": {" +
182 " \"model-ver\": [" +
184 " \"model-version-id\": \"797a6c41-0f80-4d35-a288-3920c4e06baa\"," +
185 " \"model-name\": \"CONTRAIL30_L2NODHCP\"," +
186 " \"model-version\": \"1.0\"," +
187 " \"model-description\": \"contrail 3.0.x L2 network for AIC 3.x sites (and No DHCP).\"," +
188 " \"resource-version\": \"1492814035003\"," +
189 " \"relationship-list\": {" +
190 " \"relationship\": [" +
192 " \"related-to\": \"model-element\"," +
193 " \"relationship-label\": \"isA\"," +
194 " \"related-link\": \"/aai/v12/service-design-and-creation/models/model/52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f/model-vers/model-ver/aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e/model-elements/model-element/2f622421-1c67-4142-be6e-cecad5242af6/model-elements/model-element/2add7556-a23b-46b8-b6b4-ad300b47ceab\"," +
195 " \"relationship-data\": [" +
197 " \"relationship-key\": \"model.model-invariant-id\"," +
198 " \"relationship-value\": \"52b49b5d-3086-4ffd-b5e6-1b1e5e7e062f\"" +
201 " \"relationship-key\": \"model-ver.model-version-id\"," +
202 " \"relationship-value\": \"aed5a5b7-20d3-44f7-90a3-ddbd16f14d1e\"" +
205 " \"relationship-key\": \"model-element.model-element-uuid\"," +
206 " \"relationship-value\": \"2f622421-1c67-4142-be6e-cecad5242af6\"" +
209 " \"relationship-key\": \"model-element.model-element-uuid\"," +
210 " \"relationship-value\": \"2add7556-a23b-46b8-b6b4-ad300b47ceab\"" +
223 " \"model-invariant-id\": \"0143d57b-a517-4de9-a0a1-eb76db51f402\"," +
224 " \"model-type\": \"resource\"," +
225 " \"resource-version\": \"1497897268768\"," +
226 " \"model-vers\": {" +
227 " \"model-ver\": [" +
229 " \"model-version-id\": \"f1bde010-cc5f-4765-941f-75f15b24f9fc\"," +
230 " \"model-name\": \"BkVmxAv061917..base_vPE_AV..module-0\"," +
231 " \"model-version\": \"2\"," +
232 " \"resource-version\": \"1497897268769\"," +
233 " \"relationship-list\": {" +
234 " \"relationship\": [" +
236 " \"related-to\": \"model-element\"," +
237 " \"relationship-label\": \"isA\"," +
238 " \"related-link\": \"/aai/v12/service-design-and-creation/models/model/267ef491-3c1a-4c32-8e69-0e557bfb61e7/model-vers/model-ver/18655c7f-c846-4934-9e25-34378dfd33d6/model-elements/model-element/578492b2-36a4-47da-83dc-91b58c699ad1/model-elements/model-element/6b1fc7a5-fc01-4a9d-a87f-0ad0d8caa13f\"," +
239 " \"relationship-data\": [" +
241 " \"relationship-key\": \"model.model-invariant-id\"," +
242 " \"relationship-value\": \"267ef491-3c1a-4c32-8e69-0e557bfb61e7\"" +
245 " \"relationship-key\": \"model-ver.model-version-id\"," +
246 " \"relationship-value\": \"18655c7f-c846-4934-9e25-34378dfd33d6\"" +
249 " \"relationship-key\": \"model-element.model-element-uuid\"," +
250 " \"relationship-value\": \"578492b2-36a4-47da-83dc-91b58c699ad1\"" +
253 " \"relationship-key\": \"model-element.model-element-uuid\"," +
254 " \"relationship-value\": \"6b1fc7a5-fc01-4a9d-a87f-0ad0d8caa13f\"" +
267 " \"model-invariant-id\": \"ipe-resource-id-ps-02\"," +
268 " \"model-type\": \"resource\"," +
269 " \"resource-version\": \"1493389430122\"," +
270 " \"model-vers\": {" +
271 " \"model-ver\": [" +
273 " \"model-version-id\": \"ipe-resource-id-ps-02\"," +
274 " \"model-name\": \"abc\"," +
275 " \"model-version\": \"v1.0\"," +
276 " \"resource-version\": \"1493389520357\"," +
277 " \"relationship-list\": {" +
278 " \"relationship\": [" +
280 " \"related-to\": \"model-element\"," +
281 " \"relationship-label\": \"isA\"," +
282 " \"related-link\": \"/aai/v12/service-design-and-creation/models/model/l2-bridge-for-wan-connector-model-id-ps-02/model-vers/model-ver/l2-bridge-for-wan-connector-resource-id-ps-02/model-elements/model-element/e874da22-729d-47bd-8c08-d596fd9c213d/model-elements/model-element/ccbb65b8-2faf-4f5f-80d9-804bb50f1455\"," +
283 " \"relationship-data\": [" +
285 " \"relationship-key\": \"model.model-invariant-id\"," +
286 " \"relationship-value\": \"l2-bridge-for-wan-connector-model-id-ps-02\"" +
289 " \"relationship-key\": \"model-ver.model-version-id\"," +
290 " \"relationship-value\": \"l2-bridge-for-wan-connector-resource-id-ps-02\"" +
293 " \"relationship-key\": \"model-element.model-element-uuid\"," +
294 " \"relationship-value\": \"e874da22-729d-47bd-8c08-d596fd9c213d\"" +
297 " \"relationship-key\": \"model-element.model-element-uuid\"," +
298 " \"relationship-value\": \"ccbb65b8-2faf-4f5f-80d9-804bb50f1455\"" +
311 " \"model-invariant-id\": \"lmoser410-connector-model-id\"," +
312 " \"model-type\": \"widget\"," +
313 " \"resource-version\": \"1493389512180\"," +
314 " \"model-vers\": {" +
315 " \"model-ver\": [" +
317 " \"model-version-id\": \"lmoser410-connector-model-version-id\"," +
318 " \"model-name\": \"connector\"," +
319 " \"model-version\": \"v1.0\"," +
320 " \"resource-version\": \"1493389444766\"" +
324 " \"relationship-list\": {" +
325 " \"relationship\": [" +
327 " \"related-to\": \"named-query-element\"," +
328 " \"relationship-label\": \"isA\"," +
329 " \"related-link\": \"/aai/v12/service-design-and-creation/named-queries/named-query/lmoser410-named-query-uuid/named-query-elements/named-query-element/48278a7d-2b1e-454f-89e6-5c0ba145f486\"," +
330 " \"relationship-data\": [" +
332 " \"relationship-key\": \"named-query.named-query-uuid\"," +
333 " \"relationship-value\": \"lmoser410-named-query-uuid\"" +
336 " \"relationship-key\": \"named-query-element.named-query-element-uuid\"," +
337 " \"relationship-value\": \"48278a7d-2b1e-454f-89e6-5c0ba145f486\"" +
347 " \"model-invariant-id\": \"3a97db99-c4bb-498a-a13a-38f65f1ced3d\"," +
348 " \"model-type\": \"resource\"," +
349 " \"resource-version\": \"1492630209768\"," +
350 " \"model-vers\": {" +
351 " \"model-ver\": [" +
353 " \"model-version-id\": \"ff2ae348-214a-11e7-93ae-92361f002673\"," +
354 " \"model-name\": \"vSAMP10aDEV::base::module-0\"," +
355 " \"model-version\": \"1.0\"," +
356 " \"model-description\": \"MACRO_vSAMP_module\"," +
357 " \"resource-version\": \"1492630209769\"" +
365 " \"model-invariant-id\": \"3c504d40-b847-424c-9d25-4fb7e0a3e994\"," +
366 " \"model-type\": \"widget\"," +
367 " \"resource-version\": \"1493389430124\"," +
368 " \"model-vers\": {" +
369 " \"model-ver\": [" +
371 " \"model-version-id\": \"204c641a-3494-48c8-979a-86856f5fd32a\"," +
372 " \"model-name\": \"named-query-element\"," +
373 " \"model-version\": \"1.0\"," +
374 " \"resource-version\": \"1493389423212\"" +
382 " \"model-invariant-id\": \"93e56950-cb19-44e6-ace4-8b50f2d02e45\"," +
383 " \"model-type\": \"resource\"," +
384 " \"resource-version\": \"1497898974232\"," +
385 " \"model-vers\": {" +
386 " \"model-ver\": [" +
388 " \"model-version-id\": \"acba1f72-c6e0-477f-9426-ad190151e100\"," +
389 " \"model-name\": \"RG_6-19_Test\"," +
390 " \"model-version\": \"1.0\"," +
391 " \"model-description\": \"RG_6-19_Test\"," +
392 " \"resource-version\": \"1497898974233\"," +
393 " \"relationship-list\": {" +
394 " \"relationship\": [" +
396 " \"related-to\": \"model-element\"," +
397 " \"relationship-label\": \"isA\"," +
398 " \"related-link\": \"/aai/v12/service-design-and-creation/models/model/a07220ba-954e-422f-86b5-e8b95fe6b116/model-vers/model-ver/bf6dbd68-2c7d-4ba2-ade1-dfd4476aa505/model-elements/model-element/6e10fe2e-6d04-4198-9124-dd051a5ae65f/model-elements/model-element/cb3c22e1-9dc6-467f-9636-0a7aef10d5d0\"," +
399 " \"relationship-data\": [" +
401 " \"relationship-key\": \"model.model-invariant-id\"," +
402 " \"relationship-value\": \"a07220ba-954e-422f-86b5-e8b95fe6b116\"" +
405 " \"relationship-key\": \"model-ver.model-version-id\"," +
406 " \"relationship-value\": \"bf6dbd68-2c7d-4ba2-ade1-dfd4476aa505\"" +
409 " \"relationship-key\": \"model-element.model-element-uuid\"," +
410 " \"relationship-value\": \"6e10fe2e-6d04-4198-9124-dd051a5ae65f\"" +
413 " \"relationship-key\": \"model-element.model-element-uuid\"," +
414 " \"relationship-value\": \"cb3c22e1-9dc6-467f-9636-0a7aef10d5d0\"" +