summaryrefslogtreecommitdiffstats
path: root/esr-mgr
diff options
context:
space:
mode:
authorlizi00164331 <li.zi30@zte.com.cn>2017-09-16 14:56:30 +0800
committerlizi00164331 <li.zi30@zte.com.cn>2017-09-16 14:56:30 +0800
commit66596a09241e9548bb2a286f2341705a3ddf26f2 (patch)
tree488febf5e8462fe7264bd8d3667fd7cd685fbfae /esr-mgr
parentc7951d5bca29746e3ca27bc334add16393587ea9 (diff)
Realize the query VNFM list API.
Change-Id: I502f0cad40eb1d4857671d11a059743ccf332bf8 Issue-ID: AAI-312 Signed-off-by: lizi00164331 <li.zi30@zte.com.cn>
Diffstat (limited to 'esr-mgr')
-rw-r--r--esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfm.java73
-rw-r--r--esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmDetail.java2
-rw-r--r--esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmList.java38
-rw-r--r--esr-mgr/src/main/java/org/onap/aai/esr/externalservice/aai/ExternalSystemProxy.java4
-rw-r--r--esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VnfmManagerWrapper.java52
5 files changed, 157 insertions, 12 deletions
diff --git a/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfm.java b/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfm.java
new file mode 100644
index 0000000..660dedf
--- /dev/null
+++ b/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfm.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright 2017 ZTE 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.aai.esr.entity.aai;
+
+import java.io.Serializable;
+
+import com.google.gson.annotations.SerializedName;
+
+public class EsrVnfm implements Serializable {
+
+ public static final long serialVersionUID = 1L;
+
+ @SerializedName("vnfm-id")
+ private String vnfmId;
+
+ @SerializedName("vim-id")
+ private String vimId;
+
+ @SerializedName("certificate-id")
+ private String certificateUrl;
+
+ @SerializedName("resouce-version")
+ private String resouceVersion;
+
+ public String getVnfmId() {
+ return vnfmId;
+ }
+
+ public void setVnfmId(String vnfmId) {
+ this.vnfmId = vnfmId;
+ }
+
+ public String getVimId() {
+ return vimId;
+ }
+
+ public void setVimId(String vimId) {
+ this.vimId = vimId;
+ }
+
+ public String getCertificateUrl() {
+ return certificateUrl;
+ }
+
+ public void setCertificateUrl(String certificateUrl) {
+ this.certificateUrl = certificateUrl;
+ }
+
+ public String getResouceVersion() {
+ return resouceVersion;
+ }
+
+ public void setResouceVersion(String resouceVersion) {
+ this.resouceVersion = resouceVersion;
+ }
+
+ public static long getSerialversionuid() {
+ return serialVersionUID;
+ }
+}
diff --git a/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmDetail.java b/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmDetail.java
index 24f3423..238f03f 100644
--- a/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmDetail.java
+++ b/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmDetail.java
@@ -29,7 +29,7 @@ public class EsrVnfmDetail implements Serializable {
@SerializedName("vim-id")
private String vimId;
- @SerializedName("certificate-id")
+ @SerializedName("certificate-url")
private String certificateUrl;
@SerializedName("resouce-version")
diff --git a/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmList.java b/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmList.java
new file mode 100644
index 0000000..0193147
--- /dev/null
+++ b/esr-mgr/src/main/java/org/onap/aai/esr/entity/aai/EsrVnfmList.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright 2017 ZTE 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.aai.esr.entity.aai;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+
+import com.google.gson.annotations.SerializedName;
+
+public class EsrVnfmList implements Serializable {
+
+ public static final long serialVersionUID = 1L;
+
+ @SerializedName("esr-vnfm")
+ private ArrayList<EsrVnfm> esrVnfm;
+
+ public ArrayList<EsrVnfm> getEsrVnfm() {
+ return esrVnfm;
+ }
+
+ public void setEsrVnfm(ArrayList<EsrVnfm> esrVnfm) {
+ this.esrVnfm = esrVnfm;
+ }
+
+}
diff --git a/esr-mgr/src/main/java/org/onap/aai/esr/externalservice/aai/ExternalSystemProxy.java b/esr-mgr/src/main/java/org/onap/aai/esr/externalservice/aai/ExternalSystemProxy.java
index 2f790cd..ea7c805 100644
--- a/esr-mgr/src/main/java/org/onap/aai/esr/externalservice/aai/ExternalSystemProxy.java
+++ b/esr-mgr/src/main/java/org/onap/aai/esr/externalservice/aai/ExternalSystemProxy.java
@@ -44,4 +44,8 @@ public class ExternalSystemProxy {
public static String queryVnfmDetail(String vnfmId) throws Exception {
return externalSystemproxy.queryVNFMDetail(transactionId, fromAppId, authorization, vnfmId);
}
+
+ public static String queryVnfmList() throws Exception {
+ return externalSystemproxy.queryVNFMList(transactionId, fromAppId, authorization);
+ }
}
diff --git a/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VnfmManagerWrapper.java b/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VnfmManagerWrapper.java
index 0b629bd..5127371 100644
--- a/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VnfmManagerWrapper.java
+++ b/esr-mgr/src/main/java/org/onap/aai/esr/wrapper/VnfmManagerWrapper.java
@@ -19,13 +19,11 @@ import java.util.ArrayList;
import javax.ws.rs.core.Response;
-import org.onap.aai.esr.entity.aai.CloudRegionDetail;
import org.onap.aai.esr.entity.aai.EsrVnfmDetail;
+import org.onap.aai.esr.entity.aai.EsrVnfmList;
import org.onap.aai.esr.entity.rest.CommonRegisterResponse;
import org.onap.aai.esr.entity.rest.VnfmRegisterInfo;
-import org.onap.aai.esr.externalservice.aai.CloudRegionProxy;
import org.onap.aai.esr.externalservice.aai.ExternalSystemProxy;
-import org.onap.aai.esr.util.VimManagerUtil;
import org.onap.aai.esr.util.VnfmManagerUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -69,27 +67,59 @@ public class VnfmManagerWrapper {
public Response queryVnfmList() {
ArrayList<VnfmRegisterInfo> vnfmList = new ArrayList<VnfmRegisterInfo>();
- //TODO
- return Response.ok(vnfmList).build();
+ EsrVnfmList esrVnfm = new EsrVnfmList();
+ try {
+ String esrVnfmStr = ExternalSystemProxy.queryVnfmList();
+ esrVnfm = new Gson().fromJson(esrVnfmStr, EsrVnfmList.class);
+ vnfmList = getVnfmDetailList(esrVnfm);
+ return Response.ok(vnfmList).build();
+ } catch (Exception e) {
+ LOG.error("Query VNFM list failed !");
+ return Response.serverError().build();
+ }
+
}
public Response queryVnfmById(String vnfmId) {
VnfmRegisterInfo vnfm = new VnfmRegisterInfo();
+ vnfm = queryVnfmDetail(vnfmId);
+ if (vnfm != null) {
+ return Response.ok(vnfm).build();
+ } else {
+ return Response.serverError().build();
+ }
+ }
+
+ public Response delVnfm(String vnfmId) {
+ //TODO
+ return Response.noContent().build();
+ }
+
+ private VnfmRegisterInfo queryVnfmDetail(String vnfmId) {
+ VnfmRegisterInfo vnfm = new VnfmRegisterInfo();
EsrVnfmDetail esrVnfmDetail = new EsrVnfmDetail();
try {
String esrVnfmstr = ExternalSystemProxy.queryVnfmDetail(vnfmId);
LOG.info("Response from AAI by query VNFM: " + esrVnfmstr);
esrVnfmDetail = new Gson().fromJson(esrVnfmstr, EsrVnfmDetail.class);
vnfm = VnfmManagerUtil.esrVnfm2VnfmRegisterInfo(esrVnfmDetail);
- return Response.ok(vnfm).build();
+ return vnfm;
} catch (Exception e) {
- e.printStackTrace();
- return Response.serverError().build();
+ LOG.error("Query VNFM detail failed! VNFM ID: " + vnfmId, e.getMessage());
+ return null;
}
}
- public Response delVnfm(String vnfmId) {
- //TODO
- return Response.noContent().build();
+ private ArrayList<VnfmRegisterInfo> getVnfmDetailList(EsrVnfmList esrVnfm) {
+ ArrayList<VnfmRegisterInfo> vnfmInfoList = new ArrayList<VnfmRegisterInfo>();
+ VnfmRegisterInfo vnfmInfo = new VnfmRegisterInfo();
+ for (int i=0; i<esrVnfm.getEsrVnfm().size(); i++) {
+ String vnfmId = esrVnfm.getEsrVnfm().get(i).getVnfmId();
+ vnfmInfo = queryVnfmDetail(vnfmId);
+ if(vnfmInfo != null) {
+ vnfmInfoList.add(vnfmInfo);
+ }
+ }
+ return vnfmInfoList;
}
}