Realize thirdparty sdnc register API.
[aai/esr-server.git] / esr-mgr / src / main / java / org / onap / aai / esr / externalservice / aai / ExternalSystemProxy.java
1 /**
2  * Copyright 2017 ZTE Corporation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.onap.aai.esr.externalservice.aai;
17
18 import org.glassfish.jersey.client.ClientConfig;
19 import org.onap.aai.esr.entity.aai.EsrThirdpartySdncDetail;
20 import org.onap.aai.esr.entity.aai.EsrVnfmDetail;
21
22 import com.eclipsesource.jaxrs.consumer.ConsumerFactory;
23
24 public class ExternalSystemProxy {
25
26   private static IExternalSystem externalSystemproxy;
27
28   private static String transactionId = "9999";
29   private static String fromAppId = "esr-server";
30   private static String authorization = AaiCommon.getAuthenticationCredentials();
31   static {
32     ClientConfig config = new ClientConfig();
33     externalSystemproxy = ConsumerFactory.createConsumer(AaiAdapterConfig.getExternalSystemAddr(),
34         config, IExternalSystem.class);
35   }
36
37   public static void registerVnfm(String vnfmId, EsrVnfmDetail esrVnfmDetail) throws Exception {
38     ClientConfig config = new ClientConfig(new VnfmRegisterProvider());
39     IExternalSystem registerVnfmServiceproxy = ConsumerFactory
40         .createConsumer(AaiAdapterConfig.getExternalSystemAddr(), config, IExternalSystem.class);
41     registerVnfmServiceproxy.registerVNFM(transactionId, fromAppId, authorization, vnfmId,
42         esrVnfmDetail);
43   }
44   
45   public static String queryVnfmDetail(String vnfmId) throws Exception {
46     return externalSystemproxy.queryVNFMDetail(transactionId, fromAppId, authorization, vnfmId);
47   }
48   
49   public static String queryVnfmList() throws Exception {
50     return externalSystemproxy.queryVNFMList(transactionId, fromAppId, authorization);
51   }
52   
53   public static void deleteVnfm(String vnfmId, String resourceVersion) throws Exception {
54     externalSystemproxy.deleteVNFM(transactionId, fromAppId, authorization, vnfmId, resourceVersion);
55   }
56   
57   public static void registerSdnc(String thirdpartySdncId, EsrThirdpartySdncDetail esrSdncDetail) throws Exception {
58     ClientConfig config = new ClientConfig(new ThirdpartySdncRegisterProvider());
59     IExternalSystem registerVnfmServiceproxy = ConsumerFactory
60         .createConsumer(AaiAdapterConfig.getExternalSystemAddr(), config, IExternalSystem.class);
61     registerVnfmServiceproxy.registerThirdpartySdnc(transactionId, fromAppId, authorization, thirdpartySdncId,
62         esrSdncDetail);
63   }
64 }