Browse Source

Add ClientOptions support in ReactorClientHttpConnector

Default ClientOptions enable SSL support.

Issue: SPR-14593
pull/1125/merge
Erik Olsson 10 years ago committed by Brian Clozel
parent
commit
64bc0ca744
  1. 20
      spring-web/src/main/java/org/springframework/http/client/reactive/ReactorClientHttpConnector.java

20
spring-web/src/main/java/org/springframework/http/client/reactive/ReactorClientHttpConnector.java

@ -22,6 +22,7 @@ import java.util.function.Function; @@ -22,6 +22,7 @@ import java.util.function.Function;
import org.springframework.http.HttpMethod;
import reactor.core.publisher.Mono;
import reactor.ipc.netty.config.ClientOptions;
import reactor.ipc.netty.http.HttpException;
import reactor.ipc.netty.http.HttpInbound;
@ -34,11 +35,28 @@ import reactor.ipc.netty.http.HttpInbound; @@ -34,11 +35,28 @@ import reactor.ipc.netty.http.HttpInbound;
*/
public class ReactorClientHttpConnector implements ClientHttpConnector {
private final ClientOptions clientOptions;
/**
* Create a Reactor Netty {@link ClientHttpConnector} with default {@link ClientOptions}
* and SSL support enabled.
*/
public ReactorClientHttpConnector() {
this(ClientOptions.create().sslSupport());
}
/**
* Create a Reactor Netty {@link ClientHttpConnector} with the given {@link ClientOptions}
*/
public ReactorClientHttpConnector(ClientOptions clientOptions) {
this.clientOptions = clientOptions;
}
@Override
public Mono<ClientHttpResponse> connect(HttpMethod method, URI uri,
Function<? super ClientHttpRequest, Mono<Void>> requestCallback) {
return reactor.ipc.netty.http.HttpClient.create(uri.toString())
return reactor.ipc.netty.http.HttpClient.create(this.clientOptions)
.request(io.netty.handler.codec.http.HttpMethod.valueOf(method.name()),
uri.toString(),
httpClientRequest -> requestCallback

Loading…
Cancel
Save