From 420780dab3e2a16dcdb7d6018268f1e9ff770221 Mon Sep 17 00:00:00 2001 From: HuabingZhao Date: Mon, 21 Aug 2017 02:37:49 +0000 Subject: HTTP Client Refactory Issue-Id: MSB-22 Change-Id: I1fab2a3b8cabf6da817fe57bc4ac71f63c5167a8 Signed-off-by: HuabingZhao --- .../onap/msb/sdk/example/client/ExampleClient.java | 13 ++- .../msb/sdk/httpclient/RestServiceCreater.java | 114 +++++++++++++++++++++ .../msb/sdk/httpclient/RetrofitServiceCreater.java | 113 -------------------- 3 files changed, 120 insertions(+), 120 deletions(-) create mode 100644 src/main/java/org/onap/msb/sdk/httpclient/RestServiceCreater.java delete mode 100644 src/main/java/org/onap/msb/sdk/httpclient/RetrofitServiceCreater.java diff --git a/example/src/main/java/org/onap/msb/sdk/example/client/ExampleClient.java b/example/src/main/java/org/onap/msb/sdk/example/client/ExampleClient.java index 2bcbae1..4d7ea68 100644 --- a/example/src/main/java/org/onap/msb/sdk/example/client/ExampleClient.java +++ b/example/src/main/java/org/onap/msb/sdk/example/client/ExampleClient.java @@ -16,8 +16,7 @@ package org.onap.msb.sdk.example.client; import java.io.IOException; import org.onap.msb.sdk.example.common.Animal; -import org.onap.msb.sdk.httpclient.RetrofitServiceCreater; -import org.onap.msb.sdk.httpclient.conf.HttpClientConf; +import org.onap.msb.sdk.httpclient.RestServiceCreater; import org.onap.msb.sdk.httpclient.msb.MSBServiceClient; @@ -31,14 +30,14 @@ public class ExampleClient { String MSB_IP="127.0.0.1"; int MSB_Port=10081; - HttpClientConf globalHttpClientConf = new HttpClientConf(); MSBServiceClient msbClient = new MSBServiceClient(MSB_IP, MSB_Port); - - RetrofitServiceCreater retrofitServiceCreater = - new RetrofitServiceCreater(globalHttpClientConf, msbClient); + + RestServiceCreater restServiceCreater = + new RestServiceCreater(msbClient); AnimalServiceClient implProxy = - retrofitServiceCreater.createRetrofitService(AnimalServiceClient.class); + restServiceCreater.createService(AnimalServiceClient.class); + Animal animal = implProxy.queryAnimal1("panda").execute().body(); System.out.println("animal:" + animal); } diff --git a/src/main/java/org/onap/msb/sdk/httpclient/RestServiceCreater.java b/src/main/java/org/onap/msb/sdk/httpclient/RestServiceCreater.java new file mode 100644 index 0000000..fed85a9 --- /dev/null +++ b/src/main/java/org/onap/msb/sdk/httpclient/RestServiceCreater.java @@ -0,0 +1,114 @@ +/******************************************************************************* + * Copyright 2017 ZTE, Inc. and others. + * + * 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.msb.sdk.httpclient; + +import java.lang.reflect.InvocationHandler; +import java.lang.reflect.Proxy; +import java.util.ArrayList; +import java.util.List; + +import org.onap.msb.sdk.httpclient.conf.HttpClientConf; +import org.onap.msb.sdk.httpclient.handler.RetrofitServiceHandlerContext; +import org.onap.msb.sdk.httpclient.handler.RetrofitServiceHandlerFactory; +import org.onap.msb.sdk.httpclient.msb.MSBServiceClient; + +public class RestServiceCreater { + + + private RetrofitServiceHandlerFactory factory = new RetrofitServiceHandlerFactory(); + + private MSBServiceClient msbClient; + + public RestServiceCreater(MSBServiceClient msbClient) { + this(new HttpClientConf(), msbClient); + } + + public RestServiceCreater(HttpClientConf globalHttpClientConf, + MSBServiceClient msbClient) { + + RetrofitServiceHandlerContext.setGlobalHttpClientConf(globalHttpClientConf); + this.msbClient = msbClient; + + factory.init(); + } + + public T createService(Class retrofitSrvInterfaceClazz, + ServiceHttpEndPointBeanObject serviceHttpEndPointBeanObject) { + + InvocationHandler handler = factory.buildInvocationHandler(retrofitSrvInterfaceClazz, + serviceHttpEndPointBeanObject, null, msbClient); + + List> clazzList = new ArrayList<>(); + clazzList.add(retrofitSrvInterfaceClazz); + + Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), + clazzList.toArray(new Class[] {}), handler); + + return (T) targetInterface; + } + + + public T createService(Class retrofitSrvInterfaceClazz, + ServiceHttpEndPointBeanObject serviceHttpEndPointBeanObject, HttpClientConf httpClientConf) { + + + InvocationHandler handler = factory.buildInvocationHandler(retrofitSrvInterfaceClazz, + serviceHttpEndPointBeanObject, httpClientConf, msbClient); + + List> clazzList = new ArrayList<>(); + clazzList.add(retrofitSrvInterfaceClazz); + + Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), + clazzList.toArray(new Class[] {}), handler); + + return (T) targetInterface; + } + + public T createService(Class retrofitSrvInterfaceClazz, + HttpClientConf httpClientConf) { + + + InvocationHandler handler = + factory.buildInvocationHandler(retrofitSrvInterfaceClazz, null, httpClientConf, msbClient); + + List> clazzList = new ArrayList<>(); + clazzList.add(retrofitSrvInterfaceClazz); + + Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), + clazzList.toArray(new Class[] {}), handler); + + return (T) targetInterface; + } + + + public T createService(Class retrofitSrvInterfaceClazz) { + + + InvocationHandler handler = + factory.buildInvocationHandler(retrofitSrvInterfaceClazz, null, null, msbClient); + + List> clazzList = new ArrayList<>(); + clazzList.add(retrofitSrvInterfaceClazz); + + Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), + clazzList.toArray(new Class[] {}), handler); + + return (T) targetInterface; + } + + +} diff --git a/src/main/java/org/onap/msb/sdk/httpclient/RetrofitServiceCreater.java b/src/main/java/org/onap/msb/sdk/httpclient/RetrofitServiceCreater.java deleted file mode 100644 index fba8518..0000000 --- a/src/main/java/org/onap/msb/sdk/httpclient/RetrofitServiceCreater.java +++ /dev/null @@ -1,113 +0,0 @@ -/******************************************************************************* - * Copyright 2017 ZTE, Inc. and others. - * - * 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.msb.sdk.httpclient; - -import java.lang.reflect.InvocationHandler; -import java.lang.reflect.Proxy; -import java.util.ArrayList; -import java.util.List; - -import org.onap.msb.sdk.httpclient.conf.HttpClientConf; -import org.onap.msb.sdk.httpclient.handler.RetrofitServiceHandlerContext; -import org.onap.msb.sdk.httpclient.handler.RetrofitServiceHandlerFactory; -import org.onap.msb.sdk.httpclient.msb.MSBServiceClient; - -public class RetrofitServiceCreater { - - - private RetrofitServiceHandlerFactory factory = new RetrofitServiceHandlerFactory(); - - private MSBServiceClient msbClient; - - - public RetrofitServiceCreater(HttpClientConf globalHttpClientConf, - MSBServiceClient msbClient) { - - RetrofitServiceHandlerContext.setGlobalHttpClientConf(globalHttpClientConf); - this.msbClient = msbClient; - - factory.init(); - - - } - - public T createRetrofitService(Class retrofitSrvInterfaceClazz, - ServiceHttpEndPointBeanObject serviceHttpEndPointBeanObject) { - - InvocationHandler handler = factory.buildInvocationHandler(retrofitSrvInterfaceClazz, - serviceHttpEndPointBeanObject, null, msbClient); - - List> clazzList = new ArrayList<>(); - clazzList.add(retrofitSrvInterfaceClazz); - - Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), - clazzList.toArray(new Class[] {}), handler); - - return (T) targetInterface; - } - - - public T createRetrofitService(Class retrofitSrvInterfaceClazz, - ServiceHttpEndPointBeanObject serviceHttpEndPointBeanObject, HttpClientConf httpClientConf) { - - - InvocationHandler handler = factory.buildInvocationHandler(retrofitSrvInterfaceClazz, - serviceHttpEndPointBeanObject, httpClientConf, msbClient); - - List> clazzList = new ArrayList<>(); - clazzList.add(retrofitSrvInterfaceClazz); - - Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), - clazzList.toArray(new Class[] {}), handler); - - return (T) targetInterface; - } - - public T createRetrofitService(Class retrofitSrvInterfaceClazz, - HttpClientConf httpClientConf) { - - - InvocationHandler handler = - factory.buildInvocationHandler(retrofitSrvInterfaceClazz, null, httpClientConf, msbClient); - - List> clazzList = new ArrayList<>(); - clazzList.add(retrofitSrvInterfaceClazz); - - Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), - clazzList.toArray(new Class[] {}), handler); - - return (T) targetInterface; - } - - - public T createRetrofitService(Class retrofitSrvInterfaceClazz) { - - - InvocationHandler handler = - factory.buildInvocationHandler(retrofitSrvInterfaceClazz, null, null, msbClient); - - List> clazzList = new ArrayList<>(); - clazzList.add(retrofitSrvInterfaceClazz); - - Object targetInterface = Proxy.newProxyInstance(retrofitSrvInterfaceClazz.getClassLoader(), - clazzList.toArray(new Class[] {}), handler); - - return (T) targetInterface; - } - - -} -- cgit 1.2.3-korg