--- /dev/null
+driver.war
_build
.DS_Store
-
+internal.rst
{
- "nsInstanceId": "e7d79bd8-8e97-48fa-bbb8-fe2e8166b61c",
+ "nsInstanceId": "69c095e8-e24f-4e0b-821e-f6f8d342a929",
"additionalParamForNs": {
"location": "Nokia_RegionOne",
- "vnfs": {
- "669e8f94-b3a4-47ff-9245-c023c9fd5657": {
- "computeResourceFlavours": [
- {
- "vnfdVirtualComputeDescId": "server_compute",
- "resourceId": "m1.small"
- }
- ],
- "extVirtualLinks": [
- {
- "extCps": [
- {
- "cpdId": "comuniversal_ecp"
- }
- ],
- "resourceId": "external"
- }
- ],
- "zones": [
- {
- "resourceId": "nova",
- "id": "zoneInfoId"
- }
- ],
- "flavourId": "scalable",
- "vimType": "OPENSTACK_V2_INFO",
- "instantiationLevel": "default",
- "softwareImages": [
- {
- "resourceId": "ubuntu-16.04",
- "vnfdSoftwareImageId": "server_image"
- }
- ]
- }
- }
+ "61fbe643-8c92-4b95-a90a-d65f1ba359a9": "{ \"computeResourceFlavours\": [ { \"vnfdVirtualComputeDescId\": \"server_compute\", \"resourceId\": \"m1.small\" } ], \"extVirtualLinks\": [ { \"extCps\": [ { \"cpdId\": \"universal_ecp\" } ], \"resourceId\": \"pub_net\" } ], \"zones\": [ { \"resourceId\": \"compute-a\", \"id\": \"zoneInfoId\" } ], \"flavourId\": \"scalable\", \"vimType\": \"OPENSTACK_V3_INFO\", \"instantiationLevel\": \"default\", \"softwareImages\": [ { \"resourceId\": \"ubuntu.16.04\", \"vnfdSoftwareImageId\": \"server_image\" } ] }"
}
}
\ No newline at end of file
"nsInstanceId": "b65572a1-4f2e-4787-950d-bb489e970623",
"additionalParamForNs": {
"location": "Nokia_RegionOne",
- "vnfs": {
- "f85f054f-0928-4fab-ac76-b47b8fba0d6d": {
- "computeResourceFlavours": [
- {
- "vnfdVirtualComputeDescId": "server_compute",
- "resourceId": "m1.small"
- }
- ],
- "extVirtualLinks": [
- {
- "extCps": [
- {
- "cpdId": "commisioning_ecp"
- }
- ],
- "resourceId": "pub_net"
- }
- ],
- "zones": [
- {
- "resourceId": "compute-a",
- "id": "zoneInfoId"
- }
- ],
- "flavourId": "scalable",
- "vimType": "OPENSTACK_V2_INFO",
- "instantiationLevel": "default",
- "softwareImages": [
- {
- "resourceId": "ubuntu.16.04",
- "vnfdSoftwareImageId": "server_image"
- }
- ]
- }
- }
+ "f85f054f-0928-4fab-ac76-b47b8fba0d6d": "{ \"computeResourceFlavours\": [ { \"vnfdVirtualComputeDescId\": \"server_compute\", \"resourceId\": \"m1.small\" } ], \"extVirtualLinks\": [ { \"extCps\": [ { \"cpdId\": \"commisioning_ecp\" } ], \"resourceId\": \"pub_net\" } ], \"zones\": [ { \"resourceId\": \"compute-a\", \"id\": \"zoneInfoId\" } ], \"flavourId\": \"scalable\", \"vimType\": \"OPENSTACK_V2_INFO\", \"instantiationLevel\": \"default\", \"softwareImages\": [ { \"resourceId\": \"ubuntu.16.04\", \"vnfdSoftwareImageId\": \"server_image\" } ] }"
}
}
\ No newline at end of file
import com.google.gson.Gson;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
+import com.google.gson.JsonParser;
import com.nokia.cbam.catalog.v1.model.CatalogAdapterVnfpackage;
import com.nokia.cbam.lcm.v32.model.*;
import com.nokia.cbam.lcm.v32.model.ScaleDirection;
}
private AdditionalParameters convertInstantiationAdditionalParams(String csarId, Object additionalParams) {
- JsonObject vnfParameters = child(child(new Gson().toJsonTree(additionalParams).getAsJsonObject(), "inputs"), "vnfs");
- if (!vnfParameters.has(csarId)) {
+ JsonObject inputs = child(new Gson().toJsonTree(additionalParams).getAsJsonObject(), "inputs");
+ if (!inputs.has(csarId)) {
throw buildFatalFailure(logger, "The additional parameter section does not contain setting for VNF with " + csarId + " CSAR id");
}
- JsonElement additionalParamsForVnf = vnfParameters.get(csarId);
+ JsonElement additionalParamsForVnf = new JsonParser().parse(inputs.get(csarId).getAsString());
return new Gson().fromJson(additionalParamsForVnf, AdditionalParameters.class);
}
*/
package org.onap.vfc.nfvo.driver.vnfm.svnfm.nokia.vnfm;
-import com.google.gson.Gson;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonObject;
-import com.google.gson.JsonParser;
+import com.google.gson.*;
+import com.google.gson.annotations.SerializedName;
import com.nokia.cbam.catalog.v1.model.CatalogAdapterVnfpackage;
import com.nokia.cbam.lcm.v32.model.*;
import com.nokia.cbam.lcm.v32.model.OperationType;
import static junit.framework.TestCase.*;
import static org.mockito.Mockito.*;
import static org.onap.vfc.nfvo.driver.vnfm.svnfm.nokia.util.CbamUtils.child;
+import static org.onap.vfc.nfvo.driver.vnfm.svnfm.nokia.util.CbamUtils.childElement;
import static org.onap.vfc.nfvo.driver.vnfm.svnfm.nokia.util.SystemFunctions.systemFunctions;
import static org.onap.vfc.nfvo.driver.vnfm.svnfm.nokia.vnfm.CbamRestApiProvider.NOKIA_LCM_API_VERSION;
import static org.springframework.test.util.ReflectionTestUtils.setField;
ArgumentCaptor<InstantiateVnfRequest> actualInstantiationRequest = ArgumentCaptor.forClass(InstantiateVnfRequest.class);
when(vnfApi.vnfsVnfInstanceIdInstantiatePost(eq(VNF_ID), actualInstantiationRequest.capture(), eq(NOKIA_LCM_API_VERSION))).thenReturn(buildObservable(instantiationOperationExecution));
JsonObject inputs = child((JsonObject) instantiationRequest.getAdditionalParam(), "inputs");
- JsonObject vnfs = child(child(inputs, "vnfs"), ONAP_CSAR_ID);
- vnfs.remove("additionalParams");
+ JsonObject vnf = new JsonParser().parse(childElement(inputs, ONAP_CSAR_ID).getAsString()).getAsJsonObject();
+ vnf.remove("additionalParams");
+ inputs.add(ONAP_CSAR_ID, new JsonPrimitive(new Gson().toJson(vnf)));
//when
VnfInstantiateResponse response = lifecycleManager.createAndInstantiate(VNFM_ID, instantiationRequest, restResponse);
waitForJobToFinishInJobManager(finished);
}
}
+ public static class X{
+ public Map<String, String> getInputs() {
+ return inputs;
+ }
+
+ public void setInputs(Map<String, String> inputs) {
+ this.inputs = inputs;
+ }
+
+ @SerializedName("inputs")
+ public Map<String,String> inputs = new HashMap<String,String>();
+
+ public String vimId;
+ }
+
private VnfInstantiateRequest prepareInstantiationRequest(VimInfo.VimInfoTypeEnum cloudType) {
VnfInstantiateRequest instantiationRequest = new VnfInstantiateRequest();
instantiationRequest.setVnfPackageId(ONAP_CSAR_ID);
additionalParam.getSoftwareImages().add(image);
additionalParam.setAdditionalParams(new JsonParser().parse("{ \"a\" : \"b\" }"));
String params = new Gson().toJson(additionalParam);
- String src = "{ \"inputs\" : { \"vnfs\" : { \"" + ONAP_CSAR_ID + "\" : " + params + "}}, \"vimId\" : \"" + VIM_ID + "\"}";
- instantiationRequest.setAdditionalParam(new JsonParser().parse(src));
+ X x = new X();
+ x.inputs.put(ONAP_CSAR_ID, params);
+ x.vimId = VIM_ID;
+ JsonElement additionalParam = new Gson().toJsonTree(x);
+ instantiationRequest.setAdditionalParam(additionalParam);
return instantiationRequest;
}