1 /*******************************************************************************
2 * Copyright 2017 ZTE, Inc. and others.
4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5 * in compliance with the License. You may obtain a copy of the License at
7 * http://www.apache.org/licenses/LICENSE-2.0
9 * Unless required by applicable law or agreed to in writing, software distributed under the License
10 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11 * or implied. See the License for the specific language governing permissions and limitations under
13 ******************************************************************************/
17 package org.onap.msb.sdk.httpclient.handler.impl;
19 import org.onap.msb.sdk.httpclient.ServiceHttpEndPointBeanObject;
20 import org.onap.msb.sdk.httpclient.annotaion.ServiceHttpEndPoint;
21 import org.onap.msb.sdk.httpclient.exception.RetrofitServiceRuntimeException;
22 import org.onap.msb.sdk.httpclient.handler.HandlerContextBuilder;
23 import org.onap.msb.sdk.httpclient.handler.RetrofitServiceHandlerContext;
29 public class ServiceHttpEndPointBeanObjectBuilder implements HandlerContextBuilder {
35 * com.zte.ums.zenap.versey.rpc.retrofit2.service.impl.handler.HandlerContextBuilder#build(com.zte
36 * .ums.zenap.versey.rpc.retrofit2.service.impl.handler.RetrofitServiceHandlerContext)
39 public void build(RetrofitServiceHandlerContext ctx) throws RetrofitServiceRuntimeException {
41 if (ctx.getServiceHttpEndPointBeanObject() == null) {
43 ServiceHttpEndPointBeanObject beanObject =
44 buildBeanObjectFromClassAnnotion(ctx.getRetrofitSrvInterfaceClazz());
45 ctx.setServiceHttpEndPointBeanObject(beanObject);
52 private ServiceHttpEndPointBeanObject buildBeanObjectFromClassAnnotion(
53 Class<?> retrofitSrvInterfaceClazz) {
55 ServiceHttpEndPointBeanObject resultBeanObject = new ServiceHttpEndPointBeanObject();
56 ServiceHttpEndPoint srvhttpEndPoint =
57 retrofitSrvInterfaceClazz.getAnnotation(ServiceHttpEndPoint.class);
58 resultBeanObject.setServerType(srvhttpEndPoint.serverType());
59 resultBeanObject.setServiceName(srvhttpEndPoint.serviceName());
60 resultBeanObject.setServiceVersion(srvhttpEndPoint.serviceVersion());
62 resultBeanObject.setClientProtocl(srvhttpEndPoint.clientProtocl());
63 resultBeanObject.setMsbProtocl(srvhttpEndPoint.msbProtocl());
64 if ("null".equals(srvhttpEndPoint.nameSpace())) {
65 resultBeanObject.setNameSpace(null);
67 resultBeanObject.setNameSpace(srvhttpEndPoint.nameSpace());
70 resultBeanObject.setVisualRange(srvhttpEndPoint.visualRange());
73 return resultBeanObject;