diff --git a/pom.xml b/pom.xml
index cafae230..6971a51d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -168,11 +168,6 @@
1.12.6
provided
-
- com.google.guava
- guava
- 18.0
-
diff --git a/spring-cloud-consul-bus/pom.xml b/spring-cloud-consul-bus/pom.xml
index 8829bd93..bd09281e 100644
--- a/spring-cloud-consul-bus/pom.xml
+++ b/spring-cloud-consul-bus/pom.xml
@@ -35,10 +35,6 @@
spring-boot-starter-test
test
-
- com.google.guava
- guava
-
diff --git a/spring-cloud-consul-config/pom.xml b/spring-cloud-consul-config/pom.xml
index 49977d18..d7b04401 100644
--- a/spring-cloud-consul-config/pom.xml
+++ b/spring-cloud-consul-config/pom.xml
@@ -35,10 +35,6 @@
spring-boot-starter-test
test
-
- com.google.guava
- guava
-
diff --git a/spring-cloud-consul-core/pom.xml b/spring-cloud-consul-core/pom.xml
index d1bb308f..eee63983 100644
--- a/spring-cloud-consul-core/pom.xml
+++ b/spring-cloud-consul-core/pom.xml
@@ -51,10 +51,6 @@
spring-boot-starter-test
test
-
- com.google.guava
- guava
-
diff --git a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/client/EventService.java b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/client/EventService.java
index c0aec0b1..c65d8de9 100644
--- a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/client/EventService.java
+++ b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/client/EventService.java
@@ -2,7 +2,6 @@ package org.springframework.cloud.consul.client;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.type.TypeFactory;
-import com.google.common.base.Throwables;
import feign.Param;
import feign.Response;
import org.springframework.beans.factory.annotation.Autowired;
@@ -16,6 +15,7 @@ import java.util.Collection;
import java.util.List;
import java.util.concurrent.atomic.AtomicReference;
+import static org.springframework.util.ReflectionUtils.rethrowRuntimeException;
/**
* @author Spencer Gibb
*/
@@ -105,7 +105,7 @@ public class EventService {
return objectMapper.readValue(response.body().asInputStream(),
TypeFactory.defaultInstance().constructCollectionType(ArrayList.class, Event.class));
} catch (IOException e) {
- Throwables.propagate(e);
+ rethrowRuntimeException(e);
}
return null;
}
diff --git a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/Event.java b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/Event.java
index f27e9188..f3c76267 100644
--- a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/Event.java
+++ b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/Event.java
@@ -4,9 +4,7 @@ import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
-import static com.google.common.base.Charsets.UTF_8;
-import static com.google.common.base.MoreObjects.toStringHelper;
-import static com.google.common.io.BaseEncoding.base64;
+import static org.springframework.util.Base64Utils.*;
/**
* @author Spencer Gibb
@@ -50,21 +48,22 @@ public class Event {
public String getDecoded() {
if (payload == null)
return null;
- return new String(base64().decode(payload), UTF_8);
+ return new String(decodeFromString(payload));
}
- @Override
- public String toString() {
- return toStringHelper(this)
- .add("id", id)
- .add("name", name)
- .add("nodeFilter", nodeFilter)
- .add("serviceFilter", serviceFilter)
- .add("tagFilter", tagFilter)
- .add("version", version)
- .add("lTime", lTime)
- .add("payload", payload)
- .add("decodedPayload", getDecoded())
- .toString();
- }
+ @Override
+ public String toString() {
+ final StringBuffer sb = new StringBuffer("Event{");
+ sb.append("id='").append(id).append('\'');
+ sb.append(", name='").append(name).append('\'');
+ sb.append(", nodeFilter='").append(nodeFilter).append('\'');
+ sb.append(", serviceFilter='").append(serviceFilter).append('\'');
+ sb.append(", tagFilter='").append(tagFilter).append('\'');
+ sb.append(", version=").append(version);
+ sb.append(", lTime=").append(lTime);
+ sb.append(", payload='").append(payload).append('\'');
+ sb.append(", decoded='").append(getDecoded()).append('\'');
+ sb.append('}');
+ return sb.toString();
+ }
}
diff --git a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/KeyValue.java b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/KeyValue.java
index e527f255..945c0d52 100644
--- a/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/KeyValue.java
+++ b/spring-cloud-consul-core/src/main/java/org/springframework/cloud/consul/model/KeyValue.java
@@ -3,9 +3,7 @@ package org.springframework.cloud.consul.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
-import static com.google.common.base.Charsets.UTF_8;
-import static com.google.common.base.MoreObjects.toStringHelper;
-import static com.google.common.io.BaseEncoding.base64;
+import static org.springframework.util.Base64Utils.*;
/**
* @author Spencer Gibb
@@ -31,22 +29,7 @@ public class KeyValue {
public String getDecoded() {
if (value == null)
return null;
- return new String(base64().decode(value), UTF_8);
+ return new String(decodeFromString(value));
}
- public void setUnencoded(String unencoded) {
- setValue(base64().encode(unencoded.getBytes(UTF_8)));
- }
-
- @Override
- public String toString() {
- return toStringHelper(this)
- .add("key", key)
- .add("value", value)
- .add("decodedValue", getDecoded())
- .add("createIndex", createIndex)
- .add("modifyIndex", modifyIndex)
- .add("flags", flags)
- .toString();
- }
}
diff --git a/spring-cloud-consul-core/src/test/java/org/springframework/cloud/consul/client/AgentClientIT.java b/spring-cloud-consul-core/src/test/java/org/springframework/cloud/consul/client/AgentClientIT.java
index 3351081f..6e59869e 100644
--- a/spring-cloud-consul-core/src/test/java/org/springframework/cloud/consul/client/AgentClientIT.java
+++ b/spring-cloud-consul-core/src/test/java/org/springframework/cloud/consul/client/AgentClientIT.java
@@ -1,6 +1,5 @@
package org.springframework.cloud.consul.client;
-import com.google.common.collect.Lists;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -11,6 +10,7 @@ import org.springframework.cloud.consul.model.Check;
import org.springframework.cloud.consul.model.Service;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+import java.util.Arrays;
import java.util.Map;
import static org.junit.Assert.*;
@@ -34,7 +34,7 @@ public class AgentClientIT {
service.setId("test1id");
service.setName("test1Name");
service.setPort(9999);
- service.setTags(Lists.newArrayList("test1tag1", "test1tag2"));
+ service.setTags(Arrays.asList("test1tag1", "test1tag2"));
Check check = new Check();
check.setScript("/usr/local/bin/gtrue");
check.setInterval(60);
diff --git a/spring-cloud-consul-discovery/pom.xml b/spring-cloud-consul-discovery/pom.xml
index bf38c124..df57be82 100644
--- a/spring-cloud-consul-discovery/pom.xml
+++ b/spring-cloud-consul-discovery/pom.xml
@@ -47,10 +47,6 @@
spring-boot-starter-test
test
-
- com.google.guava
- guava
-
diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClient.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClient.java
index 72849dad..9a15efbd 100644
--- a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClient.java
+++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulDiscoveryClient.java
@@ -1,7 +1,5 @@
package org.springframework.cloud.consul.discovery;
-import com.google.common.base.Function;
-import com.google.common.collect.Lists;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.client.DefaultServiceInstance;
import org.springframework.cloud.client.ServiceInstance;
@@ -12,12 +10,10 @@ import org.springframework.cloud.consul.model.Service;
import org.springframework.cloud.consul.model.ServiceNode;
import org.springframework.context.ApplicationContext;
-import javax.annotation.Nullable;
+import java.util.ArrayList;
import java.util.List;
import java.util.Map;
-import static com.google.common.collect.Iterables.*;
-
/**
* @author Spencer Gibb
*/
@@ -58,38 +54,31 @@ public class ConsulDiscoveryClient implements DiscoveryClient {
@Override
public List getInstances(final String serviceId) {
List nodes = catalogClient.getServiceNodes(serviceId);
- Iterable instances = transform(nodes, new Function() {
- @Nullable
- @Override
- public ServiceInstance apply(@Nullable ServiceNode node) {
- return new DefaultServiceInstance(serviceId, node.getNode(), node.getServicePort());
- }
- });
+ List instances = new ArrayList<>();
+ for (ServiceNode node : nodes) {
+ instances.add(new DefaultServiceInstance(serviceId, node.getNode(), node.getServicePort()));
+ }
- return Lists.newArrayList(instances);
+ return instances;
}
@Override
public List getAllInstances() {
- Iterable instances = transform(concat(transform(catalogClient.getServices().keySet(), new Function>() {
- @Nullable
- @Override
- public List apply(@Nullable String input) {
- return catalogClient.getServiceNodes(input);
- }
- })), new Function() {
- @Nullable
- @Override
- public ServiceInstance apply(@Nullable ServiceNode input) {
- return new DefaultServiceInstance(input.getServiceName(), input.getNode(), input.getServicePort());
- }
- });
+ List instances = new ArrayList<>();
- return Lists.newArrayList(instances);
+ for (String serviceId : catalogClient.getServices().keySet()) {
+ List serviceNodes = catalogClient.getServiceNodes(serviceId);
+ if (serviceNodes != null) {
+ for (ServiceNode node : serviceNodes) {
+ instances.add(new DefaultServiceInstance(node.getServiceName(), node.getNode(), node.getServicePort()));
+ }
+ }
+ }
+ return instances;
}
@Override
public List getServices() {
- return Lists.newArrayList(catalogClient.getServices().keySet());
+ return new ArrayList<>(catalogClient.getServices().keySet());
}
}
diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLoadBalancerClient.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLoadBalancerClient.java
index 8f90b579..cec86b78 100644
--- a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLoadBalancerClient.java
+++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulLoadBalancerClient.java
@@ -1,6 +1,5 @@
package org.springframework.cloud.consul.discovery;
-import com.google.common.base.Throwables;
import com.netflix.client.config.DefaultClientConfigImpl;
import com.netflix.client.config.IClientConfig;
import com.netflix.loadbalancer.*;
@@ -15,6 +14,8 @@ import org.springframework.web.util.UriComponentsBuilder;
import java.net.URI;
import java.util.concurrent.ConcurrentHashMap;
+import static org.springframework.util.ReflectionUtils.rethrowRuntimeException;
+
/**
* @author Spencer Gibb
*/
@@ -57,7 +58,7 @@ public class ConsulLoadBalancerClient implements LoadBalancerClient {
try {
return request.apply(choose(serviceId));
} catch (Exception e) {
- Throwables.propagate(e);
+ rethrowRuntimeException(e);
return null;
}
}
diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulServerList.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulServerList.java
index 52d8ec31..066fab1a 100644
--- a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulServerList.java
+++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/ConsulServerList.java
@@ -1,19 +1,14 @@
package org.springframework.cloud.consul.discovery;
-import com.google.common.base.Function;
import com.netflix.client.config.IClientConfig;
import com.netflix.loadbalancer.AbstractServerList;
import org.springframework.cloud.consul.client.CatalogClient;
import org.springframework.cloud.consul.model.ServiceNode;
-import javax.annotation.Nullable;
-import java.util.Collection;
+import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
-import static com.google.common.collect.Collections2.transform;
-import static com.google.common.collect.Lists.newArrayList;
-
/**
* @author Spencer Gibb
*/
@@ -58,15 +53,13 @@ public class ConsulServerList extends AbstractServerList {
if (nodes == null || nodes.isEmpty()) {
return Collections.EMPTY_LIST;
}
- Collection servers = transform(nodes, new Function() {
- @Nullable
- @Override
- public ConsulServer apply(@Nullable ServiceNode node) {
- ConsulServer server = new ConsulServer(node);
- return server;
- }
- });
- return newArrayList(servers);
+ List servers = new ArrayList<>();
+ for (ServiceNode node : nodes) {
+ ConsulServer server = new ConsulServer(node);
+ servers.add(server);
+ }
+
+ return servers;
}
}
diff --git a/spring-cloud-consul-tests/pom.xml b/spring-cloud-consul-tests/pom.xml
index 61dbdcc3..aec59ace 100644
--- a/spring-cloud-consul-tests/pom.xml
+++ b/spring-cloud-consul-tests/pom.xml
@@ -52,10 +52,6 @@
spring-boot-starter-test
test
-
- com.google.guava
- guava
-