diff --git a/pom.xml b/pom.xml
index eb3ea84a..b5c90a7c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
1.1.147
7.3.0
1.4.0
- 2.0-RC13
+ 2.0.0
1.0.28
0.20.7
1.7
@@ -238,6 +238,11 @@
+
+ com.netflix.ribbon
+ ribbon-loadbalancer
+ ${ribbon.version}
+
com.netflix.rxjava
rxjava-core
diff --git a/spring-cloud-netflix-core/pom.xml b/spring-cloud-netflix-core/pom.xml
index adf032d3..f429f24c 100644
--- a/spring-cloud-netflix-core/pom.xml
+++ b/spring-cloud-netflix-core/pom.xml
@@ -54,6 +54,11 @@
eureka-core
true
+
+ com.netflix.ribbon
+ ribbon-loadbalancer
+ true
+
com.thoughtworks.xstream
diff --git a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonCommand.java b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonCommand.java
index 8251b5dc..7cd09efe 100644
--- a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonCommand.java
+++ b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonCommand.java
@@ -21,8 +21,6 @@ import java.net.URI;
import java.net.URISyntaxException;
import java.util.List;
-import javax.ws.rs.core.MultivaluedMap;
-
import com.netflix.client.http.HttpRequest;
import com.netflix.client.http.HttpRequest.Builder;
import com.netflix.client.http.HttpRequest.Verb;
@@ -37,6 +35,7 @@ import com.netflix.hystrix.HystrixCommandProperties.ExecutionIsolationStrategy;
import com.netflix.niws.client.http.RestClient;
import com.netflix.zuul.constants.ZuulConstants;
import com.netflix.zuul.context.RequestContext;
+import org.springframework.util.MultiValueMap;
/**
* Hystrix wrapper around Eureka Ribbon command
@@ -45,6 +44,7 @@ import com.netflix.zuul.context.RequestContext;
* https://github.com/Netflix/zuul/blob/master/zuul-netflix/src/main/java/com/
* netflix/zuul/dependency/ribbon/hystrix/RibbonCommand.java
*/
+@SuppressWarnings("deprecation")
public class RibbonCommand extends HystrixCommand {
private RestClient restClient;
@@ -55,24 +55,24 @@ public class RibbonCommand extends HystrixCommand {
private Boolean retryable;
- private MultivaluedMap headers;
+ private MultiValueMap headers;
- private MultivaluedMap params;
+ private MultiValueMap params;
private InputStream requestEntity;
public RibbonCommand(RestClient restClient, Verb verb, String uri,
Boolean retryable,
- MultivaluedMap headers,
- MultivaluedMap params, InputStream requestEntity)
+ MultiValueMap headers,
+ MultiValueMap params, InputStream requestEntity)
throws URISyntaxException {
this("default", restClient, verb, uri, retryable , headers, params, requestEntity);
}
public RibbonCommand(String commandKey, RestClient restClient, Verb verb, String uri,
Boolean retryable,
- MultivaluedMap headers,
- MultivaluedMap params, InputStream requestEntity)
+ MultiValueMap headers,
+ MultiValueMap params, InputStream requestEntity)
throws URISyntaxException {
super(getSetter(commandKey));
this.restClient = restClient;
diff --git a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonRoutingFilter.java b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonRoutingFilter.java
index c782a4eb..e1e90062 100644
--- a/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonRoutingFilter.java
+++ b/spring-cloud-netflix-core/src/main/java/org/springframework/cloud/netflix/zuul/filters/route/RibbonRoutingFilter.java
@@ -20,13 +20,11 @@ import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import javax.ws.rs.core.MultivaluedMap;
import lombok.extern.apachecommons.CommonsLog;
@@ -43,7 +41,6 @@ import com.netflix.niws.client.http.RestClient;
import com.netflix.zuul.ZuulFilter;
import com.netflix.zuul.context.RequestContext;
import com.netflix.zuul.exception.ZuulException;
-import com.sun.jersey.core.util.MultivaluedMapImpl;
@CommonsLog
public class RibbonRoutingFilter extends ZuulFilter {
@@ -125,7 +122,7 @@ public class RibbonRoutingFilter extends ZuulFilter {
Map info = this.helper.debug(verb.verb(), uri, headers, params,
requestEntity);
RibbonCommand command = new RibbonCommand(service, restClient, verb, uri, retryable,
- convertHeaders(headers), convertHeaders(params), requestEntity);
+ headers, params, requestEntity);
try {
HttpResponse response = command.execute();
this.helper.appendDebug(info, response.getStatus(),
@@ -150,18 +147,9 @@ public class RibbonRoutingFilter extends ZuulFilter {
private MultiValueMap revertHeaders(
Map> headers) {
- MultiValueMap map = new LinkedMultiValueMap();
+ MultiValueMap map = new LinkedMultiValueMap<>();
for (Entry> entry : headers.entrySet()) {
- map.put(entry.getKey(), new ArrayList(entry.getValue()));
- }
- return map;
- }
-
- private MultivaluedMap convertHeaders(
- MultiValueMap headers) {
- MultivaluedMap map = new MultivaluedMapImpl();
- for (Entry> entry : headers.entrySet()) {
- map.put(entry.getKey(), entry.getValue());
+ map.put(entry.getKey(), new ArrayList<>(entry.getValue()));
}
return map;
}