1 package org.onap.vid.model.serviceInstantiation;
3 import com.fasterxml.jackson.annotation.JsonProperty;
4 import org.onap.vid.job.JobAdapter;
5 import org.onap.vid.mso.model.ModelInfo;
7 import java.util.Collections;
11 public class ServiceInstantiation extends BaseResource implements JobAdapter.AsyncJobRequest {
13 private final String owningEntityId;
15 private final String owningEntityName;
17 private final String projectName;
19 private final String subscriberName;
21 private final String globalSubscriberId;
23 private final String productFamilyId;
25 private final String subscriptionServiceType;
27 private final String tenantName;
29 private final String aicZoneId;
31 private final String aicZoneName;
33 private final Map<String, Vnf> vnfs;
35 private final Map<String, Network> networks;
37 private final Map<String, InstanceGroup> vnfGroups;
39 private final boolean isPause;
41 private final int bulkSize;
43 private final String testApi;
45 private final boolean isALaCarte;
47 public ServiceInstantiation(@JsonProperty("modelInfo") ModelInfo modelInfo,
48 @JsonProperty("owningEntityId") String owningEntityId,
49 @JsonProperty("owningEntityName") String owningEntityName,
50 @JsonProperty("projectName") String projectName,
51 @JsonProperty("globalSubscriberId") String globalSubscriberId,
52 @JsonProperty("subscriberName") String subscriberName,
53 @JsonProperty("productFamilyId") String productFamilyId,
54 @JsonProperty("instanceName") String instanceName,
55 @JsonProperty("subscriptionServiceType") String subscriptionServiceType,
56 @JsonProperty("lcpCloudRegionId") String lcpCloudRegionId,
57 @JsonProperty("legacyRegion") String legacyRegion,
58 @JsonProperty("tenantId") String tenantId,
59 @JsonProperty("tenantName") String tenantName,
60 @JsonProperty("aicZoneId") String aicZoneId,
61 @JsonProperty("aicZoneName") String aicZoneName,
62 @JsonProperty("vnfs") Map<String, Vnf> vnfs,
63 @JsonProperty("networks") Map<String, Network> networks,
64 @JsonProperty("vnfGroups") Map<String, InstanceGroup> vnfGroups,
65 @JsonProperty("instanceParams") List<Map<String, String>> instanceParams,
66 @JsonProperty("pause") boolean isPause,
67 @JsonProperty("bulkSize") int bulkSize,
68 @JsonProperty("rollbackOnFailure") boolean rollbackOnFailure,
69 @JsonProperty("isALaCarte") boolean isALaCarte,
70 @JsonProperty("testApi") String testApi,
71 @JsonProperty("instanceId") String instanceId,
72 @JsonProperty("action") String action
74 super(modelInfo, instanceName, action, lcpCloudRegionId, legacyRegion, tenantId, instanceParams, rollbackOnFailure, instanceId);
75 this.owningEntityId = owningEntityId;
76 this.owningEntityName = owningEntityName;
77 this.projectName = projectName;
78 this.globalSubscriberId = globalSubscriberId;
79 this.subscriberName = subscriberName;
80 this.productFamilyId = productFamilyId;
81 this.subscriptionServiceType = subscriptionServiceType;
82 this.tenantName = tenantName;
83 this.aicZoneId = aicZoneId;
84 this.aicZoneName = aicZoneName;
86 this.networks = networks;
87 this.vnfGroups = vnfGroups;
88 this.isPause = isPause;
89 this.bulkSize = bulkSize;
90 this.isALaCarte = isALaCarte;
91 this.testApi = isALaCarte ? testApi : null;
94 public String getOwningEntityId() {
95 return owningEntityId;
98 public String getOwningEntityName() {
99 return owningEntityName;
102 public String getProjectName() {
106 public String getGlobalSubscriberId() {
107 return globalSubscriberId;
110 public String getSubscriberName() {
111 return subscriberName;
114 public String getProductFamilyId() {
115 return productFamilyId;
118 public String getSubscriptionServiceType() {
119 return subscriptionServiceType;
122 public String getTenantName() {
126 public String getAicZoneId() {
130 public String getAicZoneName() {
134 public Map<String, Vnf> getVnfs() {
135 return vnfs == null ? Collections.emptyMap() : vnfs;
138 public Map<String, Network> getNetworks() {
139 return networks == null ? Collections.emptyMap() : networks;
142 public Map<String, InstanceGroup> getVnfGroups() {
143 return vnfGroups == null ? Collections.emptyMap() : vnfGroups;
146 public boolean isPause() {
150 public int getBulkSize() { return bulkSize; }
153 protected String getModelType() {
157 @JsonProperty("isALaCarte")
158 public boolean isALaCarte() {
162 public String getTestApi() {