aboutsummaryrefslogtreecommitdiffstats
path: root/vid-app-common/src/main/java/org/onap/vid/mso
diff options
context:
space:
mode:
authorMateusz Gołuchowski <mateusz.goluchowski@nokia.com>2020-11-05 15:47:23 +0100
committerIkram Ikramullah <ikram@research.att.com>2020-11-27 15:14:17 +0000
commit164596ffc56c1f9a4418a2f3b8f3941896b124f7 (patch)
tree6b622ce09273cad1e73735f77dd650624a54e5f1 /vid-app-common/src/main/java/org/onap/vid/mso
parent3e558222d300ff70ff490914cc2245cf2a59e72a (diff)
Update VID SO API call generation - include PNF instanceName parameter in SO API call (macro)
Creation of functionality to prepare service with PNF request which call SO. Issue-ID: VID-695 Signed-off-by: Mateusz Goluchowski <mateusz.goluchowski@nokia.com> Change-Id: I5285ac2ab5e95665244ca18c6549249d9330b1ed
Diffstat (limited to 'vid-app-common/src/main/java/org/onap/vid/mso')
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/mso/model/Resources.java43
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/mso/model/ServiceInstantiationRequestDetails.java38
2 files changed, 76 insertions, 5 deletions
diff --git a/vid-app-common/src/main/java/org/onap/vid/mso/model/Resources.java b/vid-app-common/src/main/java/org/onap/vid/mso/model/Resources.java
new file mode 100644
index 000000000..f0504cdde
--- /dev/null
+++ b/vid-app-common/src/main/java/org/onap/vid/mso/model/Resources.java
@@ -0,0 +1,43 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * VID
+ * ================================================================================
+ * Copyright (C) 2020 Nokia Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.vid.mso.model;
+
+import java.util.List;
+
+public class Resources {
+
+ private final List<ServiceInstantiationRequestDetails.ServiceInstantiationVnf> vnfs;
+ private final List<ServiceInstantiationRequestDetails.ServiceInstantiationPnf> pnfs;
+
+ public Resources(List<ServiceInstantiationRequestDetails.ServiceInstantiationVnf> vnfs, List<ServiceInstantiationRequestDetails.ServiceInstantiationPnf> pnfs) {
+ this.vnfs = vnfs;
+ this.pnfs = pnfs;
+ }
+
+ public List<ServiceInstantiationRequestDetails.ServiceInstantiationVnf> getVnfs() {
+ return vnfs;
+ }
+
+ public List<ServiceInstantiationRequestDetails.ServiceInstantiationPnf> getPnfs() {
+ return pnfs;
+ }
+}
+
diff --git a/vid-app-common/src/main/java/org/onap/vid/mso/model/ServiceInstantiationRequestDetails.java b/vid-app-common/src/main/java/org/onap/vid/mso/model/ServiceInstantiationRequestDetails.java
index acbf778ea..d769aac54 100644
--- a/vid-app-common/src/main/java/org/onap/vid/mso/model/ServiceInstantiationRequestDetails.java
+++ b/vid-app-common/src/main/java/org/onap/vid/mso/model/ServiceInstantiationRequestDetails.java
@@ -175,8 +175,8 @@ public class ServiceInstantiationRequestDetails {
public static class ServiceInstantiationService implements UserParamTypes {
private final ServiceInstantiationServiceInner serviceInstantiationServiceInner;
- public ServiceInstantiationService(ModelInfo modelInfo, String instanceName, List<Map<String, String>> instanceParams, ServiceInstantiationVnfList vnfs) {
- serviceInstantiationServiceInner = new ServiceInstantiationServiceInner(modelInfo, instanceName, instanceParams, vnfs);
+ public ServiceInstantiationService(ModelInfo modelInfo, String instanceName, List<Map<String, String>> instanceParams, List<ServiceInstantiationVnf> vnfs, List<ServiceInstantiationPnf> pnfs) {
+ serviceInstantiationServiceInner = new ServiceInstantiationServiceInner(modelInfo, instanceName, instanceParams, vnfs, pnfs);
}
@JsonProperty("service")
@@ -189,15 +189,15 @@ public class ServiceInstantiationRequestDetails {
@JsonInclude(NON_EMPTY)
public String instanceName;
public List<Map<String, String>> instanceParams;
- public ServiceInstantiationVnfList resources;
+ public Resources resources;
- public ServiceInstantiationServiceInner(ModelInfo modelInfo, String instanceName, List<Map<String, String>> instanceParams, ServiceInstantiationVnfList vnfs) {
+ public ServiceInstantiationServiceInner(ModelInfo modelInfo, String instanceName, List<Map<String, String>> instanceParams, List<ServiceInstantiationVnf> vnfs, List<ServiceInstantiationPnf> pnfs) {
this.modelInfo.setModelType(modelInfo.getModelType());
this.modelInfo.setModelName(modelInfo.getModelName());
this.modelInfo.setModelVersionId(modelInfo.getModelVersionId());
this.instanceName = instanceName;
this.instanceParams = instanceParams;
- this.resources = vnfs;
+ this.resources = new Resources(vnfs, pnfs);
}
}
}
@@ -210,6 +210,15 @@ public class ServiceInstantiationRequestDetails {
}
}
+ public static class ServiceInstantiationPnfList{
+
+ public final List<ServiceInstantiationPnf> pnfs;
+
+ public ServiceInstantiationPnfList(List<ServiceInstantiationPnf> pnfList) {
+ this.pnfs = pnfList;
+ }
+ }
+
public static class ServiceInstantiationVnf{
public final ModelInfo modelInfo;
public final CloudConfiguration cloudConfiguration;
@@ -232,6 +241,25 @@ public class ServiceInstantiationRequestDetails {
}
}
+ public static class ServiceInstantiationPnf{
+
+ public final ModelInfo modelInfo;
+ public final Platform platform;
+ public final LineOfBusiness lineOfBusiness;
+ public final String productFamilyId;
+ public final List<Map<String, String>> instanceParams;
+ @JsonInclude(NON_EMPTY) public final String instanceName;
+
+ public ServiceInstantiationPnf(ModelInfo modelInfo, String platform, String lineOfBusiness, String productFamilyId, List<Map<String, String>> instanceParams, String instanceName) {
+ this.modelInfo = modelInfo;
+ this.platform = new Platform(platform);
+ this.lineOfBusiness = new LineOfBusiness(lineOfBusiness);
+ this.productFamilyId = productFamilyId;
+ this.instanceParams = instanceParams;
+ this.instanceName = instanceName;
+ }
+ }
+
public static class Platform{
public final String platformName;