Merge from ECOMP's repository
[vid.git] / vid-app-common / src / main / java / org / onap / vid / mso / model / NetworkInstantiationRequestDetails.java
1 package org.onap.vid.mso.model;
2
3 import com.fasterxml.jackson.annotation.JsonProperty;
4
5 import java.util.List;
6
7 /* Based on this model:
8
9
10 // {
11 //   "requestDetails": {
12 //       "modelInfo": {
13 //          “modelType”: “network”,
14 //          “modelInvariantId”: “ff5256d1-5a33-55df-13ab-12abad84e7ff”,
15 //          “modelVersionId”: “fe042c22-ba82-43c6-b2f6-8f1fc4164091”,
16 //          “modelName”: “vSAMP12”,
17 //          "modelVersion": "1.0",
18 //          “modelCustomizationName”: “vSAMP12 1”,
19 //          “modelCustomizationId”: “a7f1d08e-b02d-11e6-80f5-76304dec7eb7”
20 //       },
21 //       “cloudConfiguration”: {
22 //           “lcpCloudRegionId”: “mdt1”,
23 //           “tenantId”: “88a6ca3ee0394ade9403f075db23167e”
24 //       },
25 //       "requestInfo": {
26 //           “instanceName”: “MSOTEST103a”,
27 //           “productFamilyId”: “a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb”,
28 //           “source”: “VID”,
29 //           “suppressRollback”: false,
30 //           “requestorId”: “az2016”
31 //       },
32 //      "platform": {
33 //        "platformName": "{some platformName}"
34 //      },
35 //      "lineOfBusiness": {
36 //        "lineOfBusinessName": "{some string}"
37 //      },
38 //       "relatedInstanceList": [
39 //          {
40 //             “relatedInstance”: {
41 //                “instanceId”: “{serviceInstanceId}”,
42 //                “modelInfo”: {
43 //                   “modelType”: “service”,
44 //                   “modelInvariantId”: “ff3514e3-5a33-55df-13ab-12abad84e7ff”,
45 //                   “modelVersionId”: “fe6985cd-ea33-3346-ac12-ab121484a3fe”,
46 //                   “modelName”: “{parent service model name}”,
47 //                   "modelVersion": "1.0"
48 //                }
49 //             }
50 //          },
51 //          {
52 //             “relatedInstance”: {
53 //                “instanceId”: “{instanceGroupId}”,
54 //                “modelInfo”: {
55 //                   “modelType”: “networkCollection”,
56 //                   “modelInvariantId”: “9ea660dc-155f-44d3-b45c-cc7648b4f31c”,
57 //                   “modelVersionId”: “bb07aad1-ce2d-40c1-85cb-5392f76bb1ef”,
58 //                   “modelName”: “{network collection model name}”,
59 //                   "modelVersion": "1.0"
60 //                }
61 //             }
62 //          }
63
64 //       ],
65 //       “requestParameters”: {
66 //             “userParams”: []
67 //       }
68 //   }
69 // }
70
71  */
72
73 public class NetworkInstantiationRequestDetails extends BaseResourceInstantiationRequestDetails {
74
75     public NetworkInstantiationRequestDetails(@JsonProperty(value = "modelInfo", required = true) ModelInfo modelInfo,
76                                               @JsonProperty(value = "cloudConfiguration", required = true) CloudConfiguration cloudConfiguration,
77                                               @JsonProperty(value = "requestInfo", required = true) RequestInfo requestInfo,
78                                               @JsonProperty(value = "platform", required = true) Platform platform,
79                                               @JsonProperty(value = "lineOfBusiness", required = true) LineOfBusiness lineOfBusiness,
80                                               @JsonProperty(value = "relatedInstanceList", required = true) List<RelatedInstance> relatedInstanceList,
81                                               @JsonProperty(value = "requestParameters", required = true) RequestParameters requestParameters)
82     {
83         super(modelInfo, cloudConfiguration, requestInfo, platform, lineOfBusiness, relatedInstanceList, requestParameters);
84     }
85 }
86