bugfixes jan 24th
Fix null pointer exception when no requestParameters are specified
Add configurable timer in ActivateVfModuleBB to delay call to SDNC
activate - Use raw slf4j logger - use {} formatting
Add configurable timer in ActivateVfModuleBB to delay call to SDNC
activate - Use raw slf4j logger
Add configurable timer in ActivateVfModuleBB to delay call to SDNC
activate - removed unused references in test class
Add configurable timer in ActivateVfModuleBB to delay call to SDNC
activate
Update PortGroup objects separately from the parent VCE object -
restore setVariable calls back into vce object - they might be needed
later.
Update PortGroup objects separately from the parent VCE object -
updated test class
extra call to get PortGroups
Update PortGroup objects separately from the parent VCE object - use
PortGroup.getInterfaceRole() getter method instead of accessing field
directly.
Update PortGroup objects separately from the parent VCE object
Added back required headers for tenant isolation.
removed workflow exception from outmapping in execute
Fix possible null ptr exception, fix to add braces.
Default networkTechnology in Update as done in Create
Fix failing junits, mapper force upper case nwtech
update exception builder to properly throw exception error message
supporting assign service instance a la carte as well
adding in proper exception handling in network rest v1
add the unassign action to R macro data file
Change-Id: Ide420514f81b8083b4c76c762c064de199624cf7
Issue-ID: SO-1424
Signed-off-by: Benjamin, Max (mb388a) <mb388a@us.att.com>
diff --git a/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/CreateNetworkRequest.java b/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/CreateNetworkRequest.java
index 3e4d18c..153ee78 100644
--- a/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/CreateNetworkRequest.java
+++ b/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/CreateNetworkRequest.java
@@ -54,7 +54,7 @@
private String networkType;
private String networkTypeVersion;
private String modelCustomizationUuid;
- private NetworkTechnology networkTechnology = NetworkTechnology.NEUTRON;
+ private String networkTechnology = "NEUTRON";
private List<Subnet> subnets;
private ProviderVlanNetwork providerVlanNetwork;
private ContrailNetwork contrailNetwork;
@@ -62,7 +62,6 @@
private Boolean backout = true;
private Map<String,String> networkParams = new HashMap<>();
private MsoRequest msoRequest = new MsoRequest();
- @JsonProperty
private boolean contrailRequest;
public CreateNetworkRequest() {
@@ -125,13 +124,12 @@
this.networkTypeVersion = networkTypeVersion;
}
- public NetworkTechnology getNetworkTechnology() {
+ public String getNetworkTechnology() {
return networkTechnology;
}
- public void setNetworkTechnology(NetworkTechnology networkTechnology) {
+ public void setNetworkTechnology(String networkTechnology) {
this.networkTechnology = networkTechnology;
- this.contrailRequest = determineContrail();
}
public List<Subnet> getSubnets() {
@@ -156,7 +154,6 @@
public void setContrailNetwork(ContrailNetwork contrailNetwork) {
this.contrailNetwork = contrailNetwork;
- this.contrailRequest = determineContrail();
}
public Boolean getFailIfExists() {
@@ -195,12 +192,8 @@
return this.contrailRequest;
}
- @JsonIgnore
- protected void setContrailRequest(boolean contrailRequest) {
+ public void setContrailRequest(boolean contrailRequest) {
this.contrailRequest = contrailRequest;
}
- private boolean determineContrail() {
- return (networkTechnology == NetworkTechnology.CONTRAIL && (contrailNetwork != null));
- }
}
diff --git a/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/UpdateNetworkRequest.java b/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/UpdateNetworkRequest.java
index a797684..5956622 100644
--- a/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/UpdateNetworkRequest.java
+++ b/adapters/mso-adapters-rest-interface/src/main/java/org/onap/so/adapters/nwrest/UpdateNetworkRequest.java
@@ -52,7 +52,7 @@
private String networkType;
private String networkTypeVersion;
private String modelCustomizationUuid;
- private NetworkTechnology networkTechnology = NetworkTechnology.NEUTRON;
+ private String networkTechnology = "NEUTRON";
private List<Subnet> subnets;
private ProviderVlanNetwork providerVlanNetwork;
private ContrailNetwork contrailNetwork;
@@ -130,13 +130,12 @@
this.networkTypeVersion = networkTypeVersion;
}
- public NetworkTechnology getNetworkTechnology() {
+ public String getNetworkTechnology() {
return networkTechnology;
}
- public void setNetworkTechnology(NetworkTechnology networkTechnology) {
+ public void setNetworkTechnology(String networkTechnology) {
this.networkTechnology = networkTechnology;
- this.contrailRequest = determineContrail();
}
public List<Subnet> getSubnets() {
@@ -161,7 +160,6 @@
public void setContrailNetwork(ContrailNetwork contrailNetwork) {
this.contrailNetwork = contrailNetwork;
- this.contrailRequest = determineContrail();
}
public Boolean getBackout() {
@@ -195,8 +193,4 @@
return contrailRequest;
}
- private boolean determineContrail() {
- return (networkTechnology == NetworkTechnology.CONTRAIL && (contrailNetwork != null));
- }
-
}
diff --git a/adapters/mso-adapters-rest-interface/src/test/java/org/onap/so/adapters/nwrest/NetworkRequestTest.java b/adapters/mso-adapters-rest-interface/src/test/java/org/onap/so/adapters/nwrest/NetworkRequestTest.java
index 08851c2..5e04fc4 100644
--- a/adapters/mso-adapters-rest-interface/src/test/java/org/onap/so/adapters/nwrest/NetworkRequestTest.java
+++ b/adapters/mso-adapters-rest-interface/src/test/java/org/onap/so/adapters/nwrest/NetworkRequestTest.java
@@ -38,13 +38,4 @@
assertEquals(true, networkResponse.isSynchronous());
}
- @Test
- public void isContrailRequest() {
- CreateNetworkRequest networkResponse = new CreateNetworkRequest();
- assertEquals(false, networkResponse.isContrailRequest());
- networkResponse.setNetworkTechnology(NetworkTechnology.CONTRAIL);
- assertEquals(false, networkResponse.isContrailRequest());
- networkResponse.setContrailNetwork(new ContrailNetwork());
- assertEquals(true, networkResponse.isContrailRequest());
- }
}
diff --git a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapter.java b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapter.java
index 27829a6..6e2fcb0 100644
--- a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapter.java
+++ b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapter.java
@@ -55,9 +55,12 @@
@WebParam(name="networkName") @XmlElement(required=true) String networkName,
@WebParam(name="physicalNetworkName") String physicalNetworkName,
@WebParam(name="vlans") List<Integer> vlans,
+ @WebParam(name="shared") String shared,
+ @WebParam(name="external") String external,
@WebParam(name="failIfExists") Boolean failIfExists,
@WebParam(name="backout") Boolean backout,
@WebParam(name="subnets") List<Subnet> subnets,
+ @WebParam(name="networkParams") Map<String, String> networkParams,
@WebParam(name="request") MsoRequest msoRequest,
@WebParam(name="networkId", mode=Mode.OUT) Holder<String> networkId,
@WebParam(name="neutronNetworkId", mode=Mode.OUT) Holder<String> neutronNetworkId,
@@ -77,6 +80,7 @@
@WebParam(name="failIfExists") Boolean failIfExists,
@WebParam(name="backout") Boolean backout,
@WebParam(name="subnets") List<Subnet> subnets,
+ @WebParam(name="networkParams") Map<String, String> networkParams,
@WebParam(name="policyFqdns") List<String> policyFqdns,
@WebParam(name="routeTableFqdns") List<String> routeTableFqdns,
@WebParam(name="request") MsoRequest msoRequest,
@@ -100,7 +104,10 @@
@WebParam(name="networkName") @XmlElement(required=true) String networkName,
@WebParam(name="physicalNetworkName") @XmlElement(required=true) String physicalNetworkName,
@WebParam(name="vlans") @XmlElement(required=true) List<Integer> vlans,
+ @WebParam(name="shared") String shared,
+ @WebParam(name="external") String external,
@WebParam(name="subnets") List<Subnet> subnets,
+ @WebParam(name="networkParams") Map<String,String> networkParams,
@WebParam(name="request") MsoRequest msoRequest,
@WebParam(name="subnetIdMap", mode=Mode.OUT) Holder<Map<String, String>> subnetIdMap,
@WebParam(name="rollback", mode=Mode.OUT) Holder<NetworkRollback> rollback )
@@ -117,6 +124,7 @@
@WebParam(name="shared") String shared,
@WebParam(name="external") String external,
@WebParam(name="subnets") List<Subnet> subnets,
+ @WebParam(name="networkParams") Map<String,String> networkParams,
@WebParam(name="policyFqdns") List<String> policyFqdns,
@WebParam(name="routeTableFqdns") List<String> routeTableFqdns,
@WebParam(name="request") MsoRequest msoRequest,
diff --git a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsync.java b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsync.java
index 99f590b..a85da58 100644
--- a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsync.java
+++ b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsync.java
@@ -22,6 +22,7 @@
import java.util.List;
+import java.util.Map;
import javax.jws.Oneway;
import javax.jws.WebMethod;
@@ -56,6 +57,7 @@
@WebParam(name="failIfExists") Boolean failIfExists,
@WebParam(name="backout") Boolean backout,
@WebParam(name="subnets") List<Subnet> subnets,
+ @WebParam(name="networkParams") Map<String, String> networkParams,
@WebParam(name="messageId") @XmlElement(required=true) String messageId,
@WebParam(name="request") MsoRequest msoRequest,
@WebParam(name="notificationUrl") @XmlElement(required=true) String notificationUrl );
@@ -71,6 +73,7 @@
@WebParam(name="physicalNetworkName") @XmlElement(required=true) String physicalNetworkName,
@WebParam(name="vlans") @XmlElement(required=true) List<Integer> vlans,
@WebParam(name="subnets") List<Subnet> subnets,
+ @WebParam(name="networkParams") Map<String, String> networkParams,
@WebParam(name="messageId") @XmlElement(required=true) String messageId,
@WebParam(name="request") MsoRequest msoRequest,
@WebParam(name="notificationUrl") @XmlElement(required=true) String notificationUrl );
diff --git a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImpl.java b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImpl.java
index 608f39a..8181714 100644
--- a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImpl.java
+++ b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImpl.java
@@ -122,6 +122,7 @@
Boolean failIfExists,
Boolean backout,
List <Subnet> subnets,
+ Map<String,String> networkParams,
String messageId,
MsoRequest msoRequest,
String notificationUrl) {
@@ -145,6 +146,16 @@
Holder <String> neutronNetworkId = new Holder <> ();
Holder <NetworkRollback> networkRollback = new Holder <> ();
Holder <Map <String, String>> subnetIdMap = new Holder <> ();
+
+ HashMap<String, String> params = (HashMap<String,String>) networkParams;
+ if (params == null)
+ params = new HashMap<String,String>();
+ String shared = null;
+ String external = null;
+ if (params.containsKey("shared"))
+ shared = params.get("shared");
+ if (params.containsKey("external"))
+ external = params.get("external");
try {
networkAdapter.createNetwork (cloudSiteId,
@@ -154,9 +165,12 @@
networkName,
physicalNetworkName,
vlans,
+ shared,
+ external,
failIfExists,
backout,
subnets,
+ params,
msoRequest,
networkId,
neutronNetworkId,
@@ -239,6 +253,7 @@
String physicalNetworkName,
List <Integer> vlans,
List <Subnet> subnets,
+ Map <String,String> networkParams,
String messageId,
MsoRequest msoRequest,
String notificationUrl) {
@@ -261,6 +276,16 @@
// Synchronous Web Service Outputs
Holder <NetworkRollback> networkRollback = new Holder <> ();
Holder <Map <String, String>> subnetIdMap = new Holder <> ();
+
+ HashMap<String, String> params = (HashMap<String,String>) networkParams;
+ if (params == null)
+ params = new HashMap<String,String>();
+ String shared = null;
+ String external = null;
+ if (params.containsKey("shared"))
+ shared = params.get("shared");
+ if (params.containsKey("external"))
+ external = params.get("external");
try {
networkAdapter.updateNetwork (cloudSiteId,
@@ -271,7 +296,10 @@
networkName,
physicalNetworkName,
vlans,
+ shared,
+ external,
subnets,
+ params,
msoRequest,
subnetIdMap,
networkRollback);
diff --git a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterImpl.java b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterImpl.java
index 45285d0..d250561 100644
--- a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterImpl.java
+++ b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/MsoNetworkAdapterImpl.java
@@ -138,9 +138,12 @@
String networkName,
String physicalNetworkName,
List <Integer> vlans,
+ String shared,
+ String external,
Boolean failIfExists,
Boolean backout,
List <Subnet> subnets,
+ Map<String, String> networkParams,
MsoRequest msoRequest,
Holder <String> networkId,
Holder <String> neutronNetworkId,
@@ -155,8 +158,8 @@
physicalNetworkName,
vlans,
null,
- null,
- null,
+ shared,
+ external,
failIfExists,
backout,
subnets,
@@ -182,6 +185,7 @@
Boolean failIfExists,
Boolean backout,
List <Subnet> subnets,
+ Map<String, String> networkParams,
List <String> policyFqdns,
List<String> routeTableFqdns,
MsoRequest msoRequest,
@@ -660,7 +664,10 @@
String networkName,
String physicalNetworkName,
List <Integer> vlans,
+ String shared,
+ String external,
List <Subnet> subnets,
+ Map<String,String> networkParams,
MsoRequest msoRequest,
Holder <Map <String, String>> subnetIdMap,
Holder <NetworkRollback> rollback) throws NetworkException {
@@ -673,8 +680,8 @@
physicalNetworkName,
vlans,
null,
- null,
- null,
+ shared,
+ external,
subnets,
null,
null,
@@ -695,6 +702,7 @@
String shared,
String external,
List <Subnet> subnets,
+ Map<String, String> networkParams,
List <String> policyFqdns,
List<String> routeTableFqdns,
MsoRequest msoRequest,
diff --git a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/NetworkAdapterRest.java b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/NetworkAdapterRest.java
index effe7a8..8d08b3b 100644
--- a/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/NetworkAdapterRest.java
+++ b/adapters/mso-openstack-adapters/src/main/java/org/onap/so/adapters/network/NetworkAdapterRest.java
@@ -168,6 +168,13 @@
Holder<String> networkFqdn = new Holder<>();
Holder<Map<String, String>> subnetIdMap = new Holder<>();
Holder<NetworkRollback> rollback = new Holder<>();
+
+ HashMap<String, String> params = (HashMap<String, String>) req.getNetworkParams();
+ if (params == null) {
+ params = new HashMap<String,String>();
+ }
+ String shared = null;
+ String external = null;
String cloudsite = req.getCloudSiteId();
if (cloudsite != null && cloudsite.equals(TESTING_KEYWORD)) {
@@ -186,6 +193,20 @@
ctn = new ContrailNetwork();
req.setContrailNetwork(ctn);
}
+ if (params.containsKey("shared")) {
+ shared = params.get("shared");
+ } else {
+ if (ctn.getShared() != null) {
+ shared = ctn.getShared();
+ }
+ }
+ if (params.containsKey("external")) {
+ external = params.get("external");
+ } else {
+ if (ctn.getExternal() != null) {
+ external = ctn.getExternal();
+ }
+ }
adapter.createNetworkContrail(
req.getCloudSiteId(),
req.getTenantId(),
@@ -193,11 +214,12 @@
req.getModelCustomizationUuid(),
req.getNetworkName(),
req.getContrailNetwork().getRouteTargets(),
- req.getContrailNetwork().getShared(),
- req.getContrailNetwork().getExternal(),
+ shared,
+ external,
req.getFailIfExists(),
req.getBackout(),
req.getSubnets(),
+ params,
req.getContrailNetwork().getPolicyFqdns(),
req.getContrailNetwork().getRouteTableFqdns(),
req.getMsoRequest(),
@@ -212,6 +234,10 @@
pvn = new ProviderVlanNetwork();
req.setProviderVlanNetwork(pvn);
}
+ if (params.containsKey("shared"))
+ shared = params.get("shared");
+ if (params.containsKey("external"))
+ external = params.get("external");
adapter.createNetwork(
req.getCloudSiteId(),
req.getTenantId(),
@@ -220,9 +246,12 @@
req.getNetworkName(),
req.getProviderVlanNetwork().getPhysicalNetworkName(),
req.getProviderVlanNetwork().getVlans(),
+ shared,
+ external,
req.getFailIfExists(),
req.getBackout(),
req.getSubnets(),
+ params,
req.getMsoRequest(),
networkId,
neutronNetworkId,
@@ -593,6 +622,12 @@
try {
Holder<Map<String, String>> subnetIdMap = new Holder<>();
Holder<NetworkRollback> rollback = new Holder<> ();
+ HashMap<String, String> params = (HashMap<String, String>) req.getNetworkParams();
+ if (params == null) {
+ params = new HashMap<String,String>();
+ }
+ String shared = null;
+ String external = null;
if (req.getCloudSiteId().equals(TESTING_KEYWORD)) {
subnetIdMap.value = testMap();
@@ -607,6 +642,20 @@
ctn = new ContrailNetwork();
req.setContrailNetwork(ctn);
}
+ if (params.containsKey("shared")) {
+ shared = params.get("shared");
+ } else {
+ if (ctn.getShared() != null) {
+ shared = ctn.getShared();
+ }
+ }
+ if (params.containsKey("external")) {
+ external = params.get("external");
+ } else {
+ if (ctn.getExternal() != null) {
+ external = ctn.getExternal();
+ }
+ }
adapter.updateNetworkContrail(
req.getCloudSiteId(),
req.getTenantId(),
@@ -615,9 +664,10 @@
req.getNetworkStackId(),
req.getNetworkName(),
req.getContrailNetwork().getRouteTargets(),
- req.getContrailNetwork().getShared(),
- req.getContrailNetwork().getExternal(),
+ shared,
+ external,
req.getSubnets(),
+ params,
req.getContrailNetwork().getPolicyFqdns(),
req.getContrailNetwork().getRouteTableFqdns(),
req.getMsoRequest(),
@@ -629,6 +679,12 @@
pvn = new ProviderVlanNetwork();
req.setProviderVlanNetwork(pvn);
}
+ if (params.containsKey("shared")) {
+ shared = params.get("shared");
+ }
+ if (params.containsKey("external")) {
+ external = params.get("external");
+ }
adapter.updateNetwork(
req.getCloudSiteId(),
req.getTenantId(),
@@ -638,7 +694,10 @@
req.getNetworkName(),
req.getProviderVlanNetwork().getPhysicalNetworkName(),
req.getProviderVlanNetwork().getVlans(),
+ shared,
+ external,
req.getSubnets(),
+ params,
req.getMsoRequest(),
subnetIdMap,
rollback);
diff --git a/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImplTest.java b/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImplTest.java
index 094d308..f8dcddd 100644
--- a/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImplTest.java
+++ b/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/MsoNetworkAdapterAsyncImplTest.java
@@ -25,10 +25,12 @@
import org.onap.so.adapters.vnf.BaseRestTestUtils;
import org.onap.so.entity.MsoRequest;
import org.onap.so.openstack.beans.NetworkRollback;
+import org.onap.so.openstack.beans.Subnet;
import org.springframework.beans.factory.annotation.Autowired;
import java.io.IOException;
import java.util.ArrayList;
+import java.util.HashMap;
import static com.github.tomakehurst.wiremock.client.WireMock.aResponse;
import static com.github.tomakehurst.wiremock.client.WireMock.containing;
@@ -184,8 +186,11 @@
" </soapenv:Body>\n" +
"</soapenv:Envelope>")
.withStatus(HttpStatus.SC_OK)));
+ HashMap<String,String> networkParams = new HashMap<String,String>();
+ networkParams.put("shared", "true");
+ networkParams.put("external", "false");
impl.updateNetworkA("mtn13", "tenantId", "networkType", "3bdbb104-476c-483e-9f8b-c095b3d3068c", "dvspg-VCE_VPE-mtjnj40avbc",
- "dvspg-VCE_VPE-mtjnj40avbc", "physicalNetworkName", new ArrayList<>(), new ArrayList<>(), "messageId",
+ "dvspg-VCE_VPE-mtjnj40avbc", "physicalNetworkName", new ArrayList<>(), new ArrayList<Subnet>(), networkParams, "messageId",
new MsoRequest(), "http://localhost:"+wireMockPort+"/notificationUrl");
}
@@ -199,14 +204,17 @@
mockOpenStackGetStackCreated_200("OpenstackResponse_Stack_Created.json", "dvspg-VCE_VPE-mtjnj40avbc");
mockOpenStackGetStackDeleteOrUpdateComplete_200("OpenstackResponse_Stack_UpdateComplete.json");
mockOpenStackPutPublicUrlStackByNameAndID_NETWORK2_200();
+ HashMap<String,String> networkParams = new HashMap<String,String>();
+ networkParams.put("shared", "true");
+ networkParams.put("external", "false");
impl.updateNetworkA("mtn13", "tenantId", "networkType", "3bdbb104-476c-483e-9f8b-c095b3d3068c", "dvspg-VCE_VPE-mtjnj40avbc",
- "dvspg-VCE_VPE-mtjnj40avbc", "physicalNetworkName", new ArrayList<>(), new ArrayList<>(), "messageId",
+ "dvspg-VCE_VPE-mtjnj40avbc", "physicalNetworkName", new ArrayList<>(), new ArrayList<>(), networkParams, "messageId",
new MsoRequest(), "http://localhost:"+wireMockPort+"/notificationUrl"); }
@Test
public void updateNetworkATest_NetworkException() {
impl.updateNetworkA("cloudSiteId", "tenantId", "networkType", "3bdbb104-476c-483e-9f8b-c095b3d3068c", "networkId",
- "dvspg-VCE_VPE-mtjnj40avbc", "physicalNetworkName", new ArrayList<>(), new ArrayList<>(), "messageId",
+ "dvspg-VCE_VPE-mtjnj40avbc", "physicalNetworkName", new ArrayList<>(), new ArrayList<>(), new HashMap<String,String>(), "messageId",
new MsoRequest(), "http://localhost:"+wireMockPort+"/notificationUrl");
}
@@ -237,8 +245,10 @@
.withStatus(HttpStatus.SC_OK)));
mockOpenStackGetStackCreatedVUSP_200();
mockOpenStackPostStacks_200();
+ mockOpenStackPostStacks_200();
+ HashMap<String,String> networkParams = new HashMap<String,String>();
impl.createNetworkA("mtn13", "tenantId", "networkType", "3bdbb104-476c-483e-9f8b-c095b3d3068c", "vUSP-23804-T-01-dpa2b_EVUSP-CORE-VIF-TSIG0_net_0",
- "physicalNetworkName", new ArrayList<>(), false, false, new ArrayList<>(), "messageId",
+ "physicalNetworkName", new ArrayList<>(), false, false, new ArrayList<>(), networkParams, "messageId",
new MsoRequest(), "http://localhost:"+wireMockPort+"/notificationUrl");
}
@@ -251,15 +261,18 @@
.withStatus(HttpStatus.SC_OK)));
mockOpenStackGetStackCreatedVUSP_200();
mockOpenStackPostStacks_200();
+ HashMap<String,String> networkParams = new HashMap<String,String>();
+ networkParams.put("shared", "true");
+ networkParams.put("external", "false");
impl.createNetworkA("mtn13", "tenantId", "networkType", "3bdbb104-476c-483e-9f8b-c095b3d3068c", "vUSP-23804-T-01-dpa2b_EVUSP-CORE-VIF-TSIG0_net_0",
- "physicalNetworkName", new ArrayList<>(), false, false, new ArrayList<>(), "messageId",
+ "physicalNetworkName", new ArrayList<>(), false, false, new ArrayList<>(), networkParams, "messageId",
new MsoRequest(), "http://localhost:"+wireMockPort+"/notificationUrl");
}
@Test
public void createNetworkATest_NetworkException() {
impl.createNetworkA("mtn13", "tenantId", "networkType", "3bdbb104-476c-483e-9f8b-c095b3d3068c", "vUSP-23804-T-01-dpa2b_EVUSP-CORE-VIF-TSIG0_net_0",
- "physicalNetworkName", new ArrayList<>(), false, false, new ArrayList<>(), "messageId",
+ "physicalNetworkName", new ArrayList<>(), false, false, new ArrayList<>(), new HashMap<String,String>(), "messageId",
new MsoRequest(), "http://localhost:"+wireMockPort+"/notificationUrl");
}
}
diff --git a/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/NetworkAdapterRestTest.java b/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/NetworkAdapterRestTest.java
index 6123415..3910d9e 100644
--- a/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/NetworkAdapterRestTest.java
+++ b/adapters/mso-openstack-adapters/src/test/java/org/onap/so/adapters/network/NetworkAdapterRestTest.java
@@ -88,7 +88,7 @@
request.setSkipAAI(true);
request.setFailIfExists(false);
MsoRequest msoReq = new MsoRequest();
- NetworkTechnology networkTechnology = NetworkTechnology.CONTRAIL;
+ String networkTechnology = "CONTRAIL";
msoReq.setRequestId(MSO_REQUEST_ID);
msoReq.setServiceInstanceId(MSO_SERVICE_INSTANCE_ID);
@@ -296,6 +296,33 @@
assertThat(response.getBody(), sameBeanAs(expectedResponse));
}
+ @Test
+ public void testCreateNetworkNC_Shared_JSON() throws JSONException, JsonParseException, JsonMappingException, IOException {
+
+ mockOpenStackResponseAccess(wireMockPort);
+
+ mockOpenStackPostPublicUrlWithBodyFile_200();
+
+ mockOpenStackGetStackCreatedAppC_200();
+
+ mockOpenStackGetStackAppC_404();
+
+ headers.add("Content-Type", MediaType.APPLICATION_JSON);
+ headers.add("Accept", MediaType.APPLICATION_JSON);
+
+ String request = readJsonFileAsString("src/test/resources/CreateNetwork4.json");
+ HttpEntity<String> entity = new HttpEntity<String>(request, headers);
+
+ ResponseEntity<CreateNetworkResponse> response = restTemplate.exchange(
+ createURLWithPort("/services/rest/v1/networks"), HttpMethod.POST, entity, CreateNetworkResponse.class);
+
+ CreateNetworkResponse expectedResponse = jettisonTypeObjectMapper.getMapper().readValue(
+ new File("src/test/resources/__files/CreateNetworkResponse4.json"), CreateNetworkResponse.class);
+
+ assertEquals(Response.Status.OK.getStatusCode(), response.getStatusCode().value());
+ assertThat(response.getBody(), sameBeanAs(expectedResponse));
+ }
+
@Override
protected String readJsonFileAsString(String fileLocation) throws JsonParseException, JsonMappingException, IOException{
return new String(Files.readAllBytes(Paths.get(fileLocation)));
diff --git a/adapters/mso-openstack-adapters/src/test/resources/CreateNetwork4.json b/adapters/mso-openstack-adapters/src/test/resources/CreateNetwork4.json
new file mode 100644
index 0000000..3a116a6
--- /dev/null
+++ b/adapters/mso-openstack-adapters/src/test/resources/CreateNetwork4.json
@@ -0,0 +1,46 @@
+{
+ "createNetworkRequest": {
+ "skipAAI": true,
+ "messageId": "c4c44af4-4310-4d8b-a1eb-656fc99fe709",
+ "synchronous": true,
+ "cloudSiteId": "mtn13",
+ "tenantId": "ba38bc24a2ef4fb2ad2810c894f1938f",
+ "networkId": "da886914-efb2-4917-b335-c8381528d90b",
+ "networkName": "APP-C-24595-T-IST-04AShared_untrusted_vDBE_net_3",
+ "networkType": "CONTRAIL30_BASIC",
+ "modelCustomizationUuid": "3bdbb104-ffff-483e-9f8b-c095b3d30844",
+ "networkTechnology": "NEUTRON",
+ "subnets": [{
+ "subnetName": "APP-C-24595-T-IST-04AShared_untrusted_vDBE_net_3_subnet_1",
+ "subnetId": "da60501d-9aa8-48d2-99b7-26644fa01093",
+ "cidr": "20",
+ "gatewayIp": "",
+ "ipVersion": "4",
+ "enableDHCP": false,
+ "addrFromStart": true,
+ "hostRoutes": []
+ }],
+ "providerVlanNetwork": {
+ "physicalNetworkName": "FALSE",
+ "vlans": []
+ },
+ "contrailNetwork": {
+ "shared": "false",
+ "external": "false",
+ "routeTargets": [],
+ "policyFqdns": [],
+ "routeTableFqdns": []
+ },
+ "failIfExists": true,
+ "backout": false,
+ "networkParams": {
+ "shared": "true",
+ "external": "false"
+ },
+ "msoRequest": {
+ "requestId": "5349f419-b3e9-4546-b3a1-094bd568d6b7",
+ "serviceInstanceId": "cf965caf-a003-4189-abf9-e0ed77056dd6"
+ },
+ "contrailRequest": false
+ }
+}
\ No newline at end of file
diff --git a/adapters/mso-openstack-adapters/src/test/resources/__files/CreateNetworkResponse4.json b/adapters/mso-openstack-adapters/src/test/resources/__files/CreateNetworkResponse4.json
new file mode 100644
index 0000000..2e5517c
--- /dev/null
+++ b/adapters/mso-openstack-adapters/src/test/resources/__files/CreateNetworkResponse4.json
@@ -0,0 +1,25 @@
+{
+ "createNetworkResponse": {
+ "networkId": "da886914-efb2-4917-b335-c8381528d90b",
+ "neutronNetworkId": null,
+ "networkStackId": "stackname/stackId",
+ "networkFqdn": null,
+ "networkCreated": true,
+ "subnetMap": {
+
+ },
+ "rollback": {
+ "networkStackId": "stackname/stackId",
+ "tenantId": "ba38bc24a2ef4fb2ad2810c894f1938f",
+ "cloudId": "mtn13",
+ "networkType": "CONTRAIL30_BASIC",
+ "modelCustomizationUuid": "3bdbb104-ffff-483e-9f8b-c095b3d30844",
+ "networkCreated": true,
+ "msoRequest": {
+ "requestId": "5349f419-b3e9-4546-b3a1-094bd568d6b7",
+ "serviceInstanceId": "cf965caf-a003-4189-abf9-e0ed77056dd6"
+ }
+ },
+ "messageId": "c4c44af4-4310-4d8b-a1eb-656fc99fe709"
+ }
+}
\ No newline at end of file