From 41cd0ab5a2a9248e74fba6d3e78e353090ada574 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Fri, 13 Feb 2015 14:01:02 -0700 Subject: [PATCH] updated to use new s-c-commons interfaces --- .../discovery/ZookeeperDiscoveryClient.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/spring-cloud-zookeeper-discovery/src/main/java/org/springframework/cloud/zookeeper/discovery/ZookeeperDiscoveryClient.java b/spring-cloud-zookeeper-discovery/src/main/java/org/springframework/cloud/zookeeper/discovery/ZookeeperDiscoveryClient.java index 5210265b..30249953 100644 --- a/spring-cloud-zookeeper-discovery/src/main/java/org/springframework/cloud/zookeeper/discovery/ZookeeperDiscoveryClient.java +++ b/spring-cloud-zookeeper-discovery/src/main/java/org/springframework/cloud/zookeeper/discovery/ZookeeperDiscoveryClient.java @@ -40,8 +40,19 @@ public class ZookeeperDiscoveryClient implements DiscoveryClient { throw new IllegalStateException("Unable to locate instance in zookeeper: " + context.getId()); } - return new DefaultServiceInstance(instance.getId(), instance.getAddress(), - instance.getPort(), instance.getSslPort()!=null); + + return createServiceInstance(instance.getId(), instance); + } + + private static org.springframework.cloud.client.ServiceInstance createServiceInstance(String serviceId, ServiceInstance serviceInstance) { + boolean secure = serviceInstance.getSslPort() != null; + Integer port = serviceInstance.getPort(); + + if (secure) { + port = serviceInstance.getSslPort(); + } + + return new DefaultServiceInstance(serviceId, serviceInstance.getAddress(), port, secure); } @Override @@ -54,14 +65,12 @@ public class ZookeeperDiscoveryClient implements DiscoveryClient { ArrayList instances = new ArrayList<>(); for (ServiceInstance instance : zkInstances) { - instances.add(new DefaultServiceInstance(serviceId, instance.getAddress(), - instance.getPort(), instance.getSslPort()!=null)); + instances.add(createServiceInstance(serviceId, instance)); } return instances; } - @Override public List getServices() { ArrayList services = null;