From 08cc92176a101bd1c9a06d1d9a8aea94bbe496a8 Mon Sep 17 00:00:00 2001 From: Sam Brannen Date: Sat, 7 Jan 2017 02:15:02 +0100 Subject: [PATCH] Enable compilation on Eclipse 4.6 --- .../web/reactive/socket/client/RxNettyWebSocketClient.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/spring-web-reactive/src/main/java/org/springframework/web/reactive/socket/client/RxNettyWebSocketClient.java b/spring-web-reactive/src/main/java/org/springframework/web/reactive/socket/client/RxNettyWebSocketClient.java index 68e2c8a4307..a98b55e088c 100644 --- a/spring-web-reactive/src/main/java/org/springframework/web/reactive/socket/client/RxNettyWebSocketClient.java +++ b/spring-web-reactive/src/main/java/org/springframework/web/reactive/socket/client/RxNettyWebSocketClient.java @@ -31,6 +31,7 @@ import io.reactivex.netty.protocol.http.ws.client.WebSocketRequest; import io.reactivex.netty.protocol.http.ws.client.WebSocketResponse; import io.reactivex.netty.threads.RxEventLoopProvider; import reactor.core.publisher.Mono; +import reactor.util.function.Tuple2; import reactor.util.function.Tuples; import rx.Observable; import rx.RxReactiveStreams; @@ -121,12 +122,15 @@ public class RxNettyWebSocketClient extends WebSocketClientSupport implements We return Mono.from(RxReactiveStreams.toPublisher(completion)); } + @SuppressWarnings("cast") private Observable executeInternal(URI url, HttpHeaders headers, WebSocketHandler handler) { String[] protocols = beforeHandshake(url, headers, handler); return createRequest(url, headers, protocols) .flatMap(response -> { Observable conn = response.getWebSocketConnection(); - return Observable.zip(Observable.just(response), conn, Tuples::of); + // following cast is necessary to enable compilation on Eclipse 4.6 + return (Observable, WebSocketConnection>>) + Observable.zip(Observable.just(response), conn, Tuples::of); }) .flatMap(tuple -> { WebSocketResponse response = tuple.getT1();