From: lizi00164331 Date: Sat, 16 Sep 2017 06:56:30 +0000 (+0800) Subject: Realize the query VNFM list API. X-Git-Tag: v1.0.0~67 X-Git-Url: https://gerrit.onap.org/r/gitweb?p=aai%2Fesr-server.git;a=commitdiff_plain;h=66596a09241e9548bb2a286f2341705a3ddf26f2 Realize the query VNFM list API. Change-Id: I502f0cad40eb1d4857671d11a059743ccf332bf8 Issue-ID: AAI-312 Signed-off-by: lizi00164331 --- 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; + + public ArrayList getEsrVnfm() { + return esrVnfm; + } + + public void setEsrVnfm(ArrayList 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,11 +67,35 @@ public class VnfmManagerWrapper { public Response queryVnfmList() { ArrayList vnfmList = new ArrayList(); - //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 { @@ -81,15 +103,23 @@ public class VnfmManagerWrapper { 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 getVnfmDetailList(EsrVnfmList esrVnfm) { + ArrayList vnfmInfoList = new ArrayList(); + VnfmRegisterInfo vnfmInfo = new VnfmRegisterInfo(); + for (int i=0; i