summaryrefslogtreecommitdiffstats
path: root/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc
diff options
context:
space:
mode:
Diffstat (limited to 'nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc')
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Cbam2DriverResponseConverter.java18
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Driver2CbamRequestConverter.java44
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/VnfmDriverMgmrImpl.java22
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMCreateSubscriptionRequest.java2
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/impl/CbamMgmrImpl.java7
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/init/CbamNofiticationSubscription.java93
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/bo/CreateSubscriptionRequest.java37
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/bo/CreateSubscriptionResponse.java (renamed from nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMOperExecutVnfRequest.java)20
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/controller/VnfmDriverController.java79
-rw-r--r--nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/inf/VnfmDriverMgmrInf.java4
10 files changed, 192 insertions, 134 deletions
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Cbam2DriverResponseConverter.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Cbam2DriverResponseConverter.java
index 6034b55b..9f39c18b 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Cbam2DriverResponseConverter.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Cbam2DriverResponseConverter.java
@@ -15,6 +15,7 @@
*/
package org.onap.vfc.nfvo.driver.vnfm.svnfm.adaptor;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateSubscriptionResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMHealVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMQueryVnfResponse;
@@ -28,6 +29,7 @@ import org.onap.vfc.nfvo.driver.vnfm.svnfm.constant.CommonEnum;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.constant.ScaleType;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.bean.VnfmJobExecutionInfo;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.mapper.VnfmJobExecutionMapper;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.CreateSubscriptionResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.HealVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.InstantiateVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.OperStatusVnfResponse;
@@ -155,11 +157,11 @@ public class Cbam2DriverResponseConverter {
if (OperationType.INSTANTIATE == oper.getOperationType()) {
double instantiateProgress = (nowTime - jobInfo.getOperateStartTime())
- / (double)(adaptorEnv.getInstantiateTimeInterval());
+ / adaptorEnv.getInstantiateTimeInterval();
initialProgress = (int) (instantiateProgress + initialProgress);
} else if (OperationType.TERMINATE == oper.getOperationType()) {
double terminateProgress = (nowTime - jobInfo.getOperateStartTime())
- / (double)(adaptorEnv.getTerminateTimeInterval());
+ / adaptorEnv.getTerminateTimeInterval();
initialProgress = (int) (terminateProgress + initialProgress);
} else {
initialProgress = 0;
@@ -172,4 +174,16 @@ public class Cbam2DriverResponseConverter {
this.adaptorEnv = adaptorEnv;
}
+ public CreateSubscriptionResponse queryRspConvert(CBAMCreateSubscriptionResponse cbamResponse) {
+ CreateSubscriptionResponse response = new CreateSubscriptionResponse();
+
+ response.set_links(cbamResponse.get_links());
+ response.setId(cbamResponse.getId());
+ response.setCallbackUri(cbamResponse.getCallbackUrl());
+ response.setCallbackUrl(cbamResponse.getCallbackUrl());
+ response.setFilter(cbamResponse.getFilter());
+
+ return response;
+ }
+
}
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Driver2CbamRequestConverter.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Driver2CbamRequestConverter.java
index 8c60cc67..39b3f7cf 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Driver2CbamRequestConverter.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/Driver2CbamRequestConverter.java
@@ -54,11 +54,11 @@ public class Driver2CbamRequestConverter {
}
public CBAMInstantiateVnfRequest instantiateRequestConvert(InstantiateVnfRequest driverRequest,
- NslcmGrantVnfResponse nslc, GrantInfo grant, VimComputeResourceFlavour vimco) throws IOException{
- Gson gson = new Gson();
+ NslcmGrantVnfResponse nslc, GrantInfo grant, VimComputeResourceFlavour vimco) throws Exception {
+ Gson gson = new Gson();
String inputJson = readcbamInputInfoFromJsonFile();
CBAMInstantiateVnfRequest request = gson.fromJson(inputJson, CBAMInstantiateVnfRequest.class);
-
+
return request;
}
@@ -96,5 +96,41 @@ public class Driver2CbamRequestConverter {
request.setAdditionalParams(driverRequest.getAdditionalParam());
return request;
}
-
+
+// public static void main(String[] argv) throws IOException {
+// Gson gson = new Gson();
+// String filePath = "D:\\cbam_input.json";
+// String inputJson = readcbamInputInfo(filePath);
+// CBAMInstantiateVnfRequest request = gson.fromJson(inputJson, CBAMInstantiateVnfRequest.class);
+// System.out.println(gson.toJson(request));
+// }
+//
+// public static String readcbamInputInfo(String filePath) throws IOException {
+// InputStream ins = null;
+// BufferedInputStream bins = null;
+// String fileContent = "";
+// String fileName = filePath;
+//
+// try {
+// ins = new FileInputStream(fileName);
+// bins = new BufferedInputStream(ins);
+//
+// byte[] contentByte = new byte[ins.available()];
+// int num = bins.read(contentByte);
+//
+// if(num > 0) {
+// fileContent = new String(contentByte);
+// }
+// } catch(FileNotFoundException e) {
+// e.printStackTrace();;
+// } finally {
+// if(ins != null) {
+// ins.close();
+// }
+// if(bins != null) {
+// bins.close();
+// }
+// }
+// return fileContent;
+// }
}
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/VnfmDriverMgmrImpl.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/VnfmDriverMgmrImpl.java
index 251c4638..69d36efe 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/VnfmDriverMgmrImpl.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/adaptor/VnfmDriverMgmrImpl.java
@@ -24,6 +24,7 @@ import org.onap.vfc.nfvo.driver.vnfm.svnfm.aai.bo.AaiVnfmInfo;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.aai.bo.entity.EsrSystemInfo;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.aai.inf.AaiMgmrInf;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.catalog.inf.CatalogMgmrInf;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateSubscriptionResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateVnfRequest;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMQueryVnfResponse;
@@ -37,8 +38,11 @@ import org.onap.vfc.nfvo.driver.vnfm.svnfm.constant.ScaleType;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.bean.VnfmJobExecutionInfo;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.mapper.VnfcResourceInfoMapper;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.mapper.VnfmJobExecutionMapper;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.mapper.VnfmSubscriptionsMapper;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.exception.VnfmDriverException;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.nslcm.inf.NslcmMgmrInf;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.CreateSubscriptionRequest;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.CreateSubscriptionResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.HealVnfRequest;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.HealVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.InstantiateVnfRequest;
@@ -85,6 +89,9 @@ public class VnfmDriverMgmrImpl implements VnfmDriverMgmrInf {
@Autowired
private VnfcResourceInfoMapper vnfcDbMgmr;
+
+ @Autowired
+ private VnfmSubscriptionsMapper subscriptionsMapper;
@Autowired
AdaptorEnv adaptorEnv;
@@ -345,4 +352,19 @@ public class VnfmDriverMgmrImpl implements VnfmDriverMgmrInf {
this.responseConverter = responseConverter;
}
+ @Override
+ public CreateSubscriptionResponse createSubscription(CreateSubscriptionRequest request) throws VnfmDriverException {
+ CreateSubscriptionResponse driverResponse;
+ try {
+ CBAMCreateSubscriptionResponse cbamResponse = cbamMgmr.createSubscription(request);
+ driverResponse = responseConverter.queryRspConvert(cbamResponse);
+ subscriptionsMapper.insert(cbamResponse.getId());
+ } catch (Exception e) {
+ logger.error("error VnfmDriverMgmrImpl --> createSubscripiton. ", e);
+ throw new VnfmDriverException(HttpStatus.SC_INTERNAL_SERVER_ERROR, CommonConstants.HTTP_ERROR_DESC_500);
+ }
+
+ return driverResponse;
+ }
+
}
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMCreateSubscriptionRequest.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMCreateSubscriptionRequest.java
index 29085c14..e0069771 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMCreateSubscriptionRequest.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMCreateSubscriptionRequest.java
@@ -28,7 +28,7 @@ public class CBAMCreateSubscriptionRequest {
@JsonProperty("callbackUrl")
private String callbackUrl;
- @JsonProperty("description")
+ @JsonProperty("authentication")
private SubscriptionAuthentication authentication;
public SubscriptionFilter getFilter() {
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/impl/CbamMgmrImpl.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/impl/CbamMgmrImpl.java
index 4211dee3..3f3ae57b 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/impl/CbamMgmrImpl.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/impl/CbamMgmrImpl.java
@@ -474,15 +474,17 @@ public class CbamMgmrImpl implements CbamMgmrInf {
logger.info("CbamMgmrImpl -> createSubscription, requestStr is " + gson.toJson(subscriptionRequest));
HttpResult httpResult = operateCbamHttpTask(subscriptionRequest, httpPath, method);
String responseStr = httpResult.getContent();
+
+ CBAMCreateSubscriptionResponse response = null;
logger.info("CbamMgmrImpl -> createSubscription, responseStr is " + responseStr);
int code = httpResult.getStatusCode();
if (code == 201) {
logger.info("CbamMgmrImpl -> createSubscription success ");
+ response = gson.fromJson(responseStr, CBAMCreateSubscriptionResponse.class);
} else {
logger.error("CbamMgmrImpl -> createSubscription error , statusCode = " + code);
}
- CBAMCreateSubscriptionResponse response = gson.fromJson(responseStr, CBAMCreateSubscriptionResponse.class);
return response;
}
@@ -527,7 +529,4 @@ public class CbamMgmrImpl implements CbamMgmrInf {
return response;
}
-
-
-
}
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/init/CbamNofiticationSubscription.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/init/CbamNofiticationSubscription.java
deleted file mode 100644
index 32cb2fa0..00000000
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/init/CbamNofiticationSubscription.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright 2016-2017, Nokia Corporation
- *
- * 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.
- */
-
-package org.onap.vfc.nfvo.driver.vnfm.svnfm.init;
-
-import java.io.IOException;
-import java.util.List;
-
-import org.apache.http.client.ClientProtocolException;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateSubscriptionRequest;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateSubscriptionResponse;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.entity.Subscription;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.inf.CbamMgmrInf;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.common.bo.AdaptorEnv;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.bean.VnfmSubscriptionInfo;
-import org.onap.vfc.nfvo.driver.vnfm.svnfm.db.mapper.VnfmSubscriptionsMapper;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.ApplicationArguments;
-import org.springframework.boot.ApplicationRunner;
-import org.springframework.core.annotation.Order;
-import org.springframework.stereotype.Component;
-
-//@Order(3)
-//@Component
-public class CbamNofiticationSubscription implements ApplicationRunner {
- private static final Logger logger = LoggerFactory.getLogger(CbamNofiticationSubscription.class);
-
- @Autowired
- AdaptorEnv adaptorEnv;
-
- @Autowired
- private CbamMgmrInf cbamMgmr;
-
- @Autowired
- private VnfmSubscriptionsMapper subscriptionsMapper;
-
- @Override
- public void run(ApplicationArguments args){
- boolean subscribed = false;
- List<VnfmSubscriptionInfo> allSubscripions = subscriptionsMapper.getAll();
- if(allSubscripions != null && !allSubscripions.isEmpty())
- {
- for(VnfmSubscriptionInfo subscriptionInfo : allSubscripions)
- {
- try {
- Subscription subscription = cbamMgmr.getSubscription(subscriptionInfo.getId());
- if(subscription != null)
- {
- subscribed = true;
- logger.info("CBAM Notification has already been subscribed with id = " + subscriptionInfo.getId());
- }
- else
- {
- subscriptionsMapper.delete(subscriptionInfo.getId());
- }
- } catch (Exception e) {
- logger.error("Query or delete subscription error.", e);
- }
- }
- }
-
- if(!subscribed)
- {
- CBAMCreateSubscriptionRequest subscriptionRequest = new CBAMCreateSubscriptionRequest();
- subscriptionRequest.setCallbackUrl(adaptorEnv.getDriverApiUriFront() + "/api/nokiavnfmdriver/v1/notifications");
- try {
- CBAMCreateSubscriptionResponse createSubscription = cbamMgmr.createSubscription(subscriptionRequest);
- if(createSubscription != null)
- {
- subscriptionsMapper.insert(createSubscription.getId());
- logger.info("CBAM Notification is successfully subscribed with id = " + createSubscription.getId());
- }
- } catch (Exception e) {
- logger.error("Subscribe notification error.", e);
- }
- }
- }
-}
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/bo/CreateSubscriptionRequest.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/bo/CreateSubscriptionRequest.java
new file mode 100644
index 00000000..2834cd2c
--- /dev/null
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/bo/CreateSubscriptionRequest.java
@@ -0,0 +1,37 @@
+/*
+ * Copyright 2016-2017, Nokia Corporation
+ *
+ * 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.
+ */
+
+package org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo;
+
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.CBAMCreateSubscriptionRequest;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class CreateSubscriptionRequest extends CBAMCreateSubscriptionRequest{
+
+
+ //the attribute callbackUri is for SOL003 driver, while callbackUrl is for CBAM
+ @JsonProperty("callbackUri")
+ private String callbackUri;
+
+ public String getCallbackUri() {
+ return callbackUri;
+ }
+
+ public void setCallbackUri(String callbackUri) {
+ this.callbackUri = callbackUri;
+ }
+}
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMOperExecutVnfRequest.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/bo/CreateSubscriptionResponse.java
index 0c748cfd..0f6f563a 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/cbam/bo/CBAMOperExecutVnfRequest.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/bo/CreateSubscriptionResponse.java
@@ -13,10 +13,22 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo;
+package org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo;
-public class CBAMOperExecutVnfRequest {
-
-
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.bo.entity.Subscription;
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+public class CreateSubscriptionResponse extends Subscription{
+ //the attribute callbackUri is for SOL003 driver, while callbackUrl is for CBAM
+ @JsonProperty("callbackUri")
+ private String callbackUri;
+
+ public String getCallbackUri() {
+ return callbackUri;
+ }
+
+ public void setCallbackUri(String callbackUri) {
+ this.callbackUri = callbackUri;
+ }
}
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/controller/VnfmDriverController.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/controller/VnfmDriverController.java
index b6bf3eb0..cb429149 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/controller/VnfmDriverController.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/controller/VnfmDriverController.java
@@ -18,14 +18,14 @@ package org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.controller;
import java.io.IOException;
-import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils;
import org.apache.http.HttpStatus;
-import org.apache.http.client.ClientProtocolException;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.cbam.inf.CbamMgmrInf;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.exception.VnfmDriverException;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.CreateSubscriptionRequest;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.CreateSubscriptionResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.HealVnfRequest;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.HealVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.InstantiateVnfRequest;
@@ -196,30 +196,30 @@ public class VnfmDriverController {
return null;
}
-// @RequestMapping(value = "/notifications", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
-// public CBAMVnfNotificationResponse notificationVnf(@RequestBody CBAMVnfNotificationRequest request, HttpServletResponse httpResponse) throws ClientProtocolException, Exception
- @RequestMapping(value = "/notifications")
-// @ResponseBody
- public void notificationVnf(HttpServletRequest request, HttpServletResponse httpResponse) throws ClientProtocolException, Exception
- {
-
-// String jsonString = gson.toJson(request);
-// logger.info("notificationVnf request: bodyMessage is " + jsonString);
- logger.info("notificationVnf request: bodyMessage is " + request.getMethod() + ",");
-
- try {
-// CBAMVnfNotificationResponse response = cbamMgmr.getNotification(request);
- httpResponse.setStatus(204);
-// logger.info("cbamController --> notificationVnf response is " + gson.toJson(response));
-// return response;
- }
- catch(VnfmDriverException e)
- {
- processControllerException(httpResponse, e);
- }
-
-// return null;
- }
+//// @RequestMapping(value = "/notifications", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
+//// public CBAMVnfNotificationResponse notificationVnf(@RequestBody CBAMVnfNotificationRequest request, HttpServletResponse httpResponse) throws ClientProtocolException, Exception
+// @RequestMapping(value = "/notifications")
+//// @ResponseBody
+// public void notificationVnf(HttpServletRequest request, HttpServletResponse httpResponse) throws ClientProtocolException, Exception
+// {
+//
+//// String jsonString = gson.toJson(request);
+//// logger.info("notificationVnf request: bodyMessage is " + jsonString);
+// logger.info("notificationVnf request: bodyMessage is " + request.getMethod() + ",");
+//
+// try {
+//// CBAMVnfNotificationResponse response = cbamMgmr.getNotification(request);
+// httpResponse.setStatus(204);
+//// logger.info("cbamController --> notificationVnf response is " + gson.toJson(response));
+//// return response;
+// }
+// catch(VnfmDriverException e)
+// {
+// processControllerException(httpResponse, e);
+// }
+//
+//// return null;
+// }
private void processControllerException(HttpServletResponse httpResponse, VnfmDriverException e) {
try {
@@ -230,4 +230,31 @@ public class VnfmDriverController {
logger.error("VnfmDriverController --> processControllerException error to sendError ", e1);
}
}
+
+// -- The following VNFM Driver APIs are compliant to ETSI SOL003 -- Begin
+
+ @RequestMapping(value = "/createSubscripiton", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
+ @ResponseBody
+ public CreateSubscriptionResponse createSubscripiton(@RequestBody CreateSubscriptionRequest request, HttpServletResponse httpResponse)
+ {
+ String jsonString = gson.toJson(request);
+ logger.info("VnfmDriverController --> createSubscripiton, bodyMessage is " + jsonString);
+
+ try {
+ request.setCallbackUrl(request.getCallbackUri());
+ CreateSubscriptionResponse response = vnfmDriverMgmr.createSubscription(request);
+ httpResponse.setStatus(HttpStatus.SC_CREATED);
+ logger.info("VnfmDriverController --> createSubscripiton end ");
+ return response;
+ }
+ catch(VnfmDriverException e)
+ {
+ processControllerException(httpResponse, e);
+ }
+
+ return null;
+ }
+
+// -- The following VNFM Driver APIs are compliant to ETSI SOL003 -- End
}
+
diff --git a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/inf/VnfmDriverMgmrInf.java b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/inf/VnfmDriverMgmrInf.java
index 01e7155f..1c718978 100644
--- a/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/inf/VnfmDriverMgmrInf.java
+++ b/nokia/vnfmdriver/vfcadaptorservice/vfcadaptor/src/main/java/org/onap/vfc/nfvo/driver/vnfm/svnfm/vnfmdriver/inf/VnfmDriverMgmrInf.java
@@ -17,6 +17,8 @@
package org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.inf;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.exception.VnfmDriverException;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.CreateSubscriptionRequest;
+import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.CreateSubscriptionResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.HealVnfRequest;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.HealVnfResponse;
import org.onap.vfc.nfvo.driver.vnfm.svnfm.vnfmdriver.bo.InstantiateVnfRequest;
@@ -41,4 +43,6 @@ public interface VnfmDriverMgmrInf {
public ScaleVnfResponse scaleVnf(ScaleVnfRequest request, String vnfmId, String vnfInstanceId) throws VnfmDriverException;
public HealVnfResponse healVnf(HealVnfRequest request, String vnfmId, String vnfInstanceId) throws VnfmDriverException;
+
+ public CreateSubscriptionResponse createSubscription(CreateSubscriptionRequest request) throws VnfmDriverException;
}