Support HTTPS service registration 47/32847/1
authorHuabingZhao <zhao.huabing@zte.com.cn>
Mon, 26 Feb 2018 08:33:57 +0000 (16:33 +0800)
committerHuabingZhao <zhao.huabing@zte.com.cn>
Mon, 26 Feb 2018 08:34:14 +0000 (16:34 +0800)
Issue-ID: MSB-147
Change-Id: I2fa11b7869cdc512a64497482e814970b701ce33
Signed-off-by: HuabingZhao <zhao.huabing@zte.com.cn>
src/main/java/org/onap/msb/sdk/discovery/entity/MicroServiceInfo.java
src/main/java/org/onap/msb/sdk/discovery/entity/Service.java
src/main/java/org/onap/msb/sdk/httpclient/builder/impl/ClientRetrofitObjectBuilder.java
src/test/java/org/onap/msb/sdk/discovery/MSBServiceTest.java
src/test/java/org/onap/msb/sdk/httpclient/msb/MSBServiceClientTest.java

index 5b44369..c14d67a 100644 (file)
@@ -33,6 +33,7 @@ public class MicroServiceInfo extends Service<Node> implements Serializable {
         buf.append("url:").append(getUrl()).append("\r\n");
         buf.append("protocol:").append(getProtocol()).append("\r\n");
         buf.append("visualRange:").append(getVisualRange()).append("\r\n");
+        buf.append("enable_ssl:").append(isEnable_ssl()).append("\r\n");
         buf.append("nodes:").append("\r\n");
 
         for (Node nodeInstace : this.getNodes()) {
index 306e59b..6a5a883 100644 (file)
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright 2017 ZTE, Inc. and others.
+ * Copyright 2017-2018 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
@@ -21,164 +21,194 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
 
 @JsonIgnoreProperties(ignoreUnknown = true)
 public class Service<T> implements Serializable {
-  private static final long serialVersionUID = 1L;
-  private String serviceName;
-
-  private String version = "";
-  
-  private String url = "";
-  
-  //REST、UI
-  private String protocol = "";
-  //0: External 1: Internal
-  private String visualRange = "1";
-
-  private String lb_policy = "";
-
-  private String path = "";
-
-  private Set<T> nodes;
-
-  private List<KeyVaulePair> metadata;
-
-  public String getPath() {
-    return path;
-  }
-
-  /**
-   * The customized publish path of this service.
-   * If this parameter is specified when registering the service, the service will be published to api gateway under this path.
-   * Otherwise, the service will be published to api gateway using a fixed format: api/{serviceName} /{version}.
-   * Do not specific a path unless you know what you're doing.
-   * @param path
-   */
-  public void setPath(String path) {
-    this.path = path;
-  }
-
-  /**
-   * Load balancing method used when MSB routes the service requests. Currently, Round robin and IP hash are supported.
-   * @return
-   */
-  public String getLb_policy() {
-    return lb_policy;
-  }
-
-  /**
-   * Load balancing method used when MSB routes the service requests. Currently, Round robin and IP hash are supported.
-   * @param lb_policy (round-robin,ip_hash)
-   * @return void
-   */
-  public void setLb_policy(String lb_policy) {
-    this.lb_policy = lb_policy;
-  }
-
-  public List<KeyVaulePair> getMetadata() {
-    return metadata;
-  }
-
-  public void setMetadata(List<KeyVaulePair> metadata) {
-    this.metadata = metadata;
-  }
-
-  /**
-   * The service instance nodes
-   */
-  public Set<T> getNodes() {
-    return nodes;
-  }
-
-  /**
-   * The service instance nodes
-   * @param nodes
-   * @return void
-   */
-  public void setNodes(Set<T> nodes) {
-    this.nodes = nodes;
-  }
-
-  /**
-   * An unique name of the service, it should be constant so the service consumer can access the service.
-   */
-  public String getServiceName() {
-    return serviceName;
-  }
-
-  /**
-   * An unique name of the service, it should be constant so the service consumer can access the service.
-   * @param serviceName
-   */
-  public void setServiceName(String serviceName) {
-    this.serviceName = serviceName;
-  }
-
-  /**
-   * Service version. Only the major version of service is used in the URI.
-   * @return
-   */
-  public String getVersion() {
-    return version;
-  }
-
-  /**
-   * Service version. Only the major version of service is used in the URI.
-   * @param version
-   */
-  public void setVersion(String version) {
-    this.version = version;
-  }
-
-  /**
-   * The actual URL of the service to be registered.
-   * @return
-   */
-  public String getUrl() {
-    return url;
-  }
-
-  /**
-   * The actual URL of the service to be registered.
-   * @param url
-   * @return void
-   */
-  public void setUrl(String url) {
-    this.url = url;
-  }
-
-  /**
-   * supported protocols: 'REST', 'UI'
-   * @return
-   */
-  public String getProtocol() {
-    return protocol;
-  }
-
-  /**
-   * supported protocols: 'REST', 'UI'
-   * @param protocol
-   */
-  public void setProtocol(String protocol) {
-    this.protocol = protocol;
-  }
-
-  /**
-   * Visibility of the service. 
-   * External(can be accessed by external systems):0
-   * Internal(can only be accessed by ONAP microservices):1
-   */
-  public String getVisualRange() {
-    return visualRange;
-  }
-
-  /**
-   * Visibility of the service. 
-   * External(can be accessed by external systems):0
-   * Internal(can only be accessed by ONAP microservices):1
-   * @param visualRange
-   */
-  public void setVisualRange(String visualRange) {
-    this.visualRange = visualRange;
-  }
+    private static final long serialVersionUID = 1L;
+
+    private String serviceName;
+
+    private String version = "";
+
+    private String url = "";
+
+    // REST、UI
+    private String protocol = "";
+    // 0: External 1: Internal
+    private String visualRange = "1";
+
+    private String lb_policy = "";
+
+    private String path = "";
+
+    private Set<T> nodes;
+
+    private List<KeyVaulePair> metadata;
+
+    private boolean enable_ssl = false;
+
+    /**
+     * @return the enable_ssl
+     */
+    public boolean isEnable_ssl() {
+        return enable_ssl;
+    }
+
+    /**
+     * @param enable_ssl the enable_ssl to set
+     */
+    public void setEnable_ssl(boolean enable_ssl) {
+        this.enable_ssl = enable_ssl;
+    }
+
+    public String getPath() {
+        return path;
+    }
+
+    /**
+     * The customized publish path of this service. If this parameter is specified when registering
+     * the service, the service will be published to api gateway under this path. Otherwise, the
+     * service will be published to api gateway using a fixed format: api/{serviceName} /{version}.
+     * Do not specific a path unless you know what you're doing.
+     * 
+     * @param path
+     */
+    public void setPath(String path) {
+        this.path = path;
+    }
+
+    /**
+     * Load balancing method used when MSB routes the service requests. Currently, Round robin and
+     * IP hash are supported.
+     * 
+     * @return
+     */
+    public String getLb_policy() {
+        return lb_policy;
+    }
+
+    /**
+     * Load balancing method used when MSB routes the service requests. Currently, Round robin and
+     * IP hash are supported.
+     * 
+     * @param lb_policy (round-robin,ip_hash)
+     * @return void
+     */
+    public void setLb_policy(String lb_policy) {
+        this.lb_policy = lb_policy;
+    }
+
+    public List<KeyVaulePair> getMetadata() {
+        return metadata;
+    }
+
+    public void setMetadata(List<KeyVaulePair> metadata) {
+        this.metadata = metadata;
+    }
+
+    /**
+     * The service instance nodes
+     */
+    public Set<T> getNodes() {
+        return nodes;
+    }
+
+    /**
+     * The service instance nodes
+     * 
+     * @param nodes
+     * @return void
+     */
+    public void setNodes(Set<T> nodes) {
+        this.nodes = nodes;
+    }
+
+    /**
+     * An unique name of the service, it should be constant so the service consumer can access the
+     * service.
+     */
+    public String getServiceName() {
+        return serviceName;
+    }
+
+    /**
+     * An unique name of the service, it should be constant so the service consumer can access the
+     * service.
+     * 
+     * @param serviceName
+     */
+    public void setServiceName(String serviceName) {
+        this.serviceName = serviceName;
+    }
+
+    /**
+     * Service version. Only the major version of service is used in the URI.
+     * 
+     * @return
+     */
+    public String getVersion() {
+        return version;
+    }
+
+    /**
+     * Service version. Only the major version of service is used in the URI.
+     * 
+     * @param version
+     */
+    public void setVersion(String version) {
+        this.version = version;
+    }
+
+    /**
+     * The actual URL of the service to be registered.
+     * 
+     * @return
+     */
+    public String getUrl() {
+        return url;
+    }
+
+    /**
+     * The actual URL of the service to be registered.
+     * 
+     * @param url
+     * @return void
+     */
+    public void setUrl(String url) {
+        this.url = url;
+    }
+
+    /**
+     * supported protocols: 'REST', 'UI'
+     * 
+     * @return
+     */
+    public String getProtocol() {
+        return protocol;
+    }
+
+    /**
+     * supported protocols: 'REST', 'UI'
+     * 
+     * @param protocol
+     */
+    public void setProtocol(String protocol) {
+        this.protocol = protocol;
+    }
+
+    /**
+     * Visibility of the service. External(can be accessed by external systems):0 Internal(can only
+     * be accessed by ONAP microservices):1
+     */
+    public String getVisualRange() {
+        return visualRange;
+    }
+
+    /**
+     * Visibility of the service. External(can be accessed by external systems):0 Internal(can only
+     * be accessed by ONAP microservices):1
+     * 
+     * @param visualRange
+     */
+    public void setVisualRange(String visualRange) {
+        this.visualRange = visualRange;
+    }
 
 }
index e7f7cd5..7b7c6af 100644 (file)
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright 2017 ZTE, Inc. and others.
+ * Copyright 2017-2018 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
@@ -41,141 +41,138 @@ import retrofit2.Retrofit;
 public class ClientRetrofitObjectBuilder implements IRetrofitObjectBuilder {
 
 
-  private RetrofitServiceHandlerContext context;
+    private RetrofitServiceHandlerContext context;
 
 
-  public ClientRetrofitObjectBuilder(RetrofitServiceHandlerContext context) {
-    super();
-    this.context = context;
-  }
+    public ClientRetrofitObjectBuilder(RetrofitServiceHandlerContext context) {
+        super();
+        this.context = context;
+    }
 
 
-  /*
-   * (non-Javadoc)
-   * 
-   * @see
-   * com.zte.ums.zenap.httpclient.retrofit.builder.IRetrofitObjectBuilder#buildRetrofitObject(java.
-   * util.concurrent.atomic.AtomicReference)
-   */
-  @Override
-  public Map<ServiceHttpEndPointObject, Object> buildRetrofitObject(
-      AtomicReference<Map<ServiceHttpEndPointObject, Object>> endPointToRetrofitRef,
-      ServiceHttpEndPointObject lastEndPoint) throws RetrofitServiceRuntimeException {
+    /*
+     * (non-Javadoc)
+     
+     * @see
+     * com.zte.ums.zenap.httpclient.retrofit.builder.IRetrofitObjectBuilder#buildRetrofitObject(
+     * java. util.concurrent.atomic.AtomicReference)
+     */
+    @Override
+    public Map<ServiceHttpEndPointObject, Object> buildRetrofitObject(
+                    AtomicReference<Map<ServiceHttpEndPointObject, Object>> endPointToRetrofitRef,
+                    ServiceHttpEndPointObject lastEndPoint) throws RetrofitServiceRuntimeException {
 
-    Map<ServiceHttpEndPointObject, Object> srvEndPointToRetrofit = endPointToRetrofitRef.get();
-    if (srvEndPointToRetrofit == null) {
-      srvEndPointToRetrofit = new LinkedHashMap<>();
-      try {
+        Map<ServiceHttpEndPointObject, Object> srvEndPointToRetrofit = endPointToRetrofitRef.get();
+        if (srvEndPointToRetrofit == null) {
+            srvEndPointToRetrofit = new LinkedHashMap<>();
+            try {
 
 
-        ServiceHttpEndPointBeanObject srvhttpEndPointBeanObject =
-            context.getServiceHttpEndPointBeanObject();
+                ServiceHttpEndPointBeanObject srvhttpEndPointBeanObject = context.getServiceHttpEndPointBeanObject();
 
-        // MsbClientFactory msbClient = context.getLocator().getService(MsbClientFactory.class);
+                // MsbClientFactory msbClient =
+                // context.getLocator().getService(MsbClientFactory.class);
 
-        MicroServiceFullInfo fullInfo = null;
+                MicroServiceFullInfo fullInfo = null;
 
-        fullInfo =
-            context.getMsbClient().queryMicroServiceInfo(srvhttpEndPointBeanObject.getServiceName(),
-                srvhttpEndPointBeanObject.getServiceVersion());
+                fullInfo = context.getMsbClient().queryMicroServiceInfo(srvhttpEndPointBeanObject.getServiceName(),
+                                srvhttpEndPointBeanObject.getServiceVersion());
 
 
-        for (NodeInfo nodeInfo : fullInfo.getNodes()) {
+                for (NodeInfo nodeInfo : fullInfo.getNodes()) {
 
-          MicroServiceFullInfo cloneFullInfo = cloneFullInfo(fullInfo, nodeInfo);
+                    MicroServiceFullInfo cloneFullInfo = cloneFullInfo(fullInfo, nodeInfo);
 
-          ServiceHttpEndPointObject endPointObj =
-              new ServiceHttpEndPointObject(srvhttpEndPointBeanObject.getServiceName(),
-                  srvhttpEndPointBeanObject.getServiceVersion(), nodeInfo, cloneFullInfo);
+                    ServiceHttpEndPointObject endPointObj = new ServiceHttpEndPointObject(
+                                    srvhttpEndPointBeanObject.getServiceName(),
+                                    srvhttpEndPointBeanObject.getServiceVersion(), nodeInfo, cloneFullInfo);
 
-          // 目前支持http
-          String baseUrl = null;
-          if (fullInfo.getUrl() == null || fullInfo.getUrl().trim().length() == 0
-              || fullInfo.getUrl().equals("/")) {
-            baseUrl = String.format("http://%s:%s/", nodeInfo.getIp(), nodeInfo.getPort());
-          } else {
-            baseUrl = String.format("http://%s:%s%s/", nodeInfo.getIp(), nodeInfo.getPort(),
-                fullInfo.getUrl());
-          }
+                    // 目前支持http
+                    String baseUrl = null;
+                    if (fullInfo.getUrl() == null || fullInfo.getUrl().trim().length() == 0
+                                    || fullInfo.getUrl().equals("/")) {
+                        baseUrl = String.format("http://%s:%s/", nodeInfo.getIp(), nodeInfo.getPort());
+                    } else {
+                        baseUrl = String.format("http://%s:%s%s/", nodeInfo.getIp(), nodeInfo.getPort(),
+                                        fullInfo.getUrl());
+                    }
 
-          OkHttpClient httpClient = null;
+                    OkHttpClient httpClient = null;
 
-          if (context.getHttpClientConf() != null) {
-            if (srvhttpEndPointBeanObject.getClientProtocl().toLowerCase().equals("https")) {
-              httpClient =
-                  RetrofitServiceUtils.buildDefaultOkHttpsClient(context.getHttpClientConf());
-            } else {
-              httpClient =
-                  RetrofitServiceUtils.buildDefaultOkHttpClient(context.getHttpClientConf());
-            }
-          } else {
-            if (srvhttpEndPointBeanObject.getClientProtocl().toLowerCase().equals("https")) {
-              httpClient = RetrofitServiceUtils.buildDefaultOkHttpsClient(
-                  RetrofitServiceHandlerContext.getGlobalHttpClientConf());
-            } else {
-              httpClient = RetrofitServiceUtils.buildDefaultOkHttpClient(
-                  RetrofitServiceHandlerContext.getGlobalHttpClientConf());
-            }
-          }
+                    if (context.getHttpClientConf() != null) {
+                        if (srvhttpEndPointBeanObject.getClientProtocl().toLowerCase().equals("https")) {
+                            httpClient = RetrofitServiceUtils.buildDefaultOkHttpsClient(context.getHttpClientConf());
+                        } else {
+                            httpClient = RetrofitServiceUtils.buildDefaultOkHttpClient(context.getHttpClientConf());
+                        }
+                    } else {
+                        if (srvhttpEndPointBeanObject.getClientProtocl().toLowerCase().equals("https")) {
+                            httpClient = RetrofitServiceUtils.buildDefaultOkHttpsClient(
+                                            RetrofitServiceHandlerContext.getGlobalHttpClientConf());
+                        } else {
+                            httpClient = RetrofitServiceUtils.buildDefaultOkHttpClient(
+                                            RetrofitServiceHandlerContext.getGlobalHttpClientConf());
+                        }
+                    }
 
 
 
-          Retrofit retrofit = new Retrofit.Builder().client(httpClient).baseUrl(baseUrl)
-              .addConverterFactory(context.getConverterFactoryBuilder().buildConverterFactory())
-              .build();
+                    Retrofit retrofit = new Retrofit.Builder().client(httpClient).baseUrl(baseUrl)
+                                    .addConverterFactory(context.getConverterFactoryBuilder().buildConverterFactory())
+                                    .build();
 
-          srvEndPointToRetrofit.put(endPointObj,
-              retrofit.create(context.getRetrofitSrvInterfaceClazz()));
+                    srvEndPointToRetrofit.put(endPointObj, retrofit.create(context.getRetrofitSrvInterfaceClazz()));
 
-        }
+                }
 
-        if (srvEndPointToRetrofit.isEmpty()) {
-          throw new RetrofitServiceRuntimeException(
-              "can't find service in msb,serviceName:" + srvhttpEndPointBeanObject.getServiceName()
-                  + ",serviceVersion:" + srvhttpEndPointBeanObject.getServiceVersion());
-        }
+                if (srvEndPointToRetrofit.isEmpty()) {
+                    throw new RetrofitServiceRuntimeException("can't find service in msb,serviceName:"
+                                    + srvhttpEndPointBeanObject.getServiceName() + ",serviceVersion:"
+                                    + srvhttpEndPointBeanObject.getServiceVersion());
+                }
 
-        if (lastEndPoint != null) {
-          srvEndPointToRetrofit.remove(lastEndPoint);
-        }
+                if (lastEndPoint != null) {
+                    srvEndPointToRetrofit.remove(lastEndPoint);
+                }
 
-        if (srvEndPointToRetrofit.isEmpty()) {
-          throw new RetrofitServiceRuntimeException("can't find other service in msb,serviceName:"
-              + srvhttpEndPointBeanObject.getServiceName() + ",serviceVersion:"
-              + srvhttpEndPointBeanObject.getServiceVersion());
-        }
+                if (srvEndPointToRetrofit.isEmpty()) {
+                    throw new RetrofitServiceRuntimeException("can't find other service in msb,serviceName:"
+                                    + srvhttpEndPointBeanObject.getServiceName() + ",serviceVersion:"
+                                    + srvhttpEndPointBeanObject.getServiceVersion());
+                }
+
+                if (endPointToRetrofitRef.compareAndSet(null, srvEndPointToRetrofit)) {
+                    context.setLastUpdateMsbTime(System.currentTimeMillis());
+                }
+
+                return endPointToRetrofitRef.get();
 
-        if (endPointToRetrofitRef.compareAndSet(null, srvEndPointToRetrofit)) {
-          context.setLastUpdateMsbTime(System.currentTimeMillis());
-        }
 
-        return endPointToRetrofitRef.get();
+            } catch (Exception e) {
+                throw new RetrofitServiceRuntimeException("init Retrofit service map fail", e);
+            }
 
+        } else {
+            return endPointToRetrofitRef.get();
+        }
+    }
 
-      } catch (Exception e) {
-        throw new RetrofitServiceRuntimeException("init Retrofit service map fail", e);
-      }
 
-    } else {
-      return endPointToRetrofitRef.get();
+    private MicroServiceFullInfo cloneFullInfo(MicroServiceFullInfo fullInfo, NodeInfo nodeInfo) {
+
+        MicroServiceFullInfo cloneFuleInfo = new MicroServiceFullInfo();
+        cloneFuleInfo.setMetadata(fullInfo.getMetadata());
+        cloneFuleInfo.setProtocol(fullInfo.getProtocol());
+        cloneFuleInfo.setServiceName(fullInfo.getServiceName());
+        cloneFuleInfo.setStatus(fullInfo.getStatus());
+        cloneFuleInfo.setUrl(fullInfo.getUrl());
+        cloneFuleInfo.setVersion(fullInfo.getVersion());
+        cloneFuleInfo.setVisualRange(fullInfo.getVisualRange());
+        cloneFuleInfo.setEnable_ssl(fullInfo.isEnable_ssl());
+        Set<NodeInfo> nodeInfos = new HashSet<>();
+        nodeInfos.add(nodeInfo);
+        cloneFuleInfo.setNodes(nodeInfos);
+        return cloneFuleInfo;
     }
-  }
-
-
-  private MicroServiceFullInfo cloneFullInfo(MicroServiceFullInfo fullInfo, NodeInfo nodeInfo) {
-
-    MicroServiceFullInfo cloneFuleInfo = new MicroServiceFullInfo();
-    cloneFuleInfo.setMetadata(fullInfo.getMetadata());
-    cloneFuleInfo.setProtocol(fullInfo.getProtocol());
-    cloneFuleInfo.setServiceName(fullInfo.getServiceName());
-    cloneFuleInfo.setStatus(fullInfo.getStatus());
-    cloneFuleInfo.setUrl(fullInfo.getUrl());
-    cloneFuleInfo.setVersion(fullInfo.getVersion());
-    cloneFuleInfo.setVisualRange(fullInfo.getVisualRange());
-    Set<NodeInfo> nodeInfos = new HashSet<>();
-    nodeInfos.add(nodeInfo);
-    cloneFuleInfo.setNodes(nodeInfos);
-    return cloneFuleInfo;
-  }
 
 }
index e214bf1..98103e0 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Copyright 2017 ZTE Corporation.
+ * Copyright 2017-2018 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
@@ -43,7 +43,7 @@ public class MSBServiceTest {
                     "http://127.0.0.1:10081/api/microservices/v1/services/aai/version/v8";
 
     private static final String MOCK_REG_SERVICE_JSON =
-                    "{\"serviceName\":\"aai\",\"version\":\"v8\",\"url\":\"/aai/v8\",\"protocol\":\"REST\",\"visualRange\":\"1\",\"lb_policy\":\"\",\"path\":\"/aai/v8\",\"nodes\":[{\"ip\":\"10.74.44.1\",\"port\":\"8443\",\"ttl\":\"20\"}],\"metadata\":[{\"key\":\"key1\",\"value\":\"value1\"}]}";
+                    "{\"serviceName\":\"aai\",\"version\":\"v8\",\"url\":\"/aai/v8\",\"protocol\":\"REST\",\"visualRange\":\"1\",\"lb_policy\":\"\",\"path\":\"/aai/v8\",\"nodes\":[{\"ip\":\"10.74.44.1\",\"port\":\"8443\",\"ttl\":\"20\"}],\"metadata\":[{\"key\":\"key1\",\"value\":\"value1\"}],\"enable_ssl\":false}";
 
     @Test
     public void test_registration_update_true() throws RouteException {
@@ -114,17 +114,16 @@ public class MSBServiceTest {
         MSBService msbService = new MSBService();
         msbService.cancelMicroServiceInfo(msbAddress, "aai", "v8", "10.74.44.1", "8443");
     }
-    
+
     @Test
-    public void test_healthCheckbyTTL(){
-       try{
-       PowerMockito.mockStatic(HttpClientUtil.class);
-        MSBService msbService = new MSBService();
-        msbService.healthCheckbyTTL("127.0.0.1:10081","aai", "v8", "10.74.44.1", "8443");
-       }
-       catch (Exception e) {
-               Assert.assertTrue(e instanceof RouteException);
-               }
+    public void test_healthCheckbyTTL() {
+        try {
+            PowerMockito.mockStatic(HttpClientUtil.class);
+            MSBService msbService = new MSBService();
+            msbService.healthCheckbyTTL("127.0.0.1:10081", "aai", "v8", "10.74.44.1", "8443");
+        } catch (Exception e) {
+            Assert.assertTrue(e instanceof RouteException);
+        }
     }
 
     private MicroServiceFullInfo mockMicroServiceFullInfo(MicroServiceInfo info) {
@@ -136,9 +135,9 @@ public class MSBServiceTest {
         serviceInfo.setVisualRange(info.getVisualRange());
         serviceInfo.setLb_policy(info.getLb_policy());
         serviceInfo.setPath(info.getPath());
-        
-        Set<NodeInfo> nodes=new HashSet<NodeInfo>();
-        NodeInfo node=new NodeInfo();
+
+        Set<NodeInfo> nodes = new HashSet<NodeInfo>();
+        NodeInfo node = new NodeInfo();
         node.setCreated_at(new Date());
         node.setExpiration(new Date());
         node.setIp("10.74.44.1");
@@ -147,7 +146,7 @@ public class MSBServiceTest {
         node.setStatus("1");
         node.setTtl("20");
         node.setUpdated_at(new Date());
-        
+
         nodes.add(node);
         serviceInfo.setNodes(nodes);
         return serviceInfo;
index 403e44b..5ee191b 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Copyright 2017 ZTE Corporation.
+ * Copyright 2017-2018 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
@@ -39,7 +39,7 @@ public class MSBServiceClientTest {
                     "http://127.0.0.1:10081/api/microservices/v1/services/aai/version/v8";
 
     private static final String MOCK_REG_SERVICE_JSON =
-                    "{\"serviceName\":\"aai\",\"version\":\"v8\",\"url\":\"/aai/v8\",\"protocol\":\"REST\",\"visualRange\":\"1\",\"lb_policy\":\"\",\"path\":\"/aai/v8\",\"nodes\":[{\"ip\":\"10.74.44.1\",\"port\":\"8443\",\"ttl\":\"\"}],\"metadata\":null}";
+                    "{\"serviceName\":\"aai\",\"version\":\"v8\",\"url\":\"/aai/v8\",\"protocol\":\"REST\",\"visualRange\":\"1\",\"lb_policy\":\"\",\"path\":\"/aai/v8\",\"nodes\":[{\"ip\":\"10.74.44.1\",\"port\":\"8443\",\"ttl\":\"\"}],\"metadata\":null,\"enable_ssl\":false}";
 
     @Test
     public void test_registration_update_true() throws RouteException {