diff --git a/spring-websocket/src/main/java/org/springframework/web/socket/server/standard/UndertowRequestUpgradeStrategy.java b/spring-websocket/src/main/java/org/springframework/web/socket/server/standard/UndertowRequestUpgradeStrategy.java index 546d146fc73..bae1e8e0087 100644 --- a/spring-websocket/src/main/java/org/springframework/web/socket/server/standard/UndertowRequestUpgradeStrategy.java +++ b/spring-websocket/src/main/java/org/springframework/web/socket/server/standard/UndertowRequestUpgradeStrategy.java @@ -16,6 +16,16 @@ package org.springframework.web.socket.server.standard; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.websocket.Decoder; +import javax.websocket.Encoder; +import javax.websocket.Endpoint; +import javax.websocket.Extension; + import io.undertow.server.HttpServerExchange; import io.undertow.server.HttpUpgradeListener; import io.undertow.servlet.api.InstanceFactory; @@ -31,18 +41,11 @@ import io.undertow.websockets.jsr.EncodingFactory; import io.undertow.websockets.jsr.EndpointSessionHandler; import io.undertow.websockets.jsr.ServerWebSocketContainer; import io.undertow.websockets.jsr.handshake.HandshakeUtil; +import org.xnio.StreamConnection; + import org.springframework.http.server.ServerHttpRequest; import org.springframework.http.server.ServerHttpResponse; import org.springframework.web.socket.server.HandshakeFailureException; -import org.xnio.StreamConnection; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.websocket.Decoder; -import javax.websocket.Encoder; -import javax.websocket.Endpoint; -import javax.websocket.Extension; -import java.util.*; /** @@ -60,13 +63,13 @@ public class UndertowRequestUpgradeStrategy extends AbstractStandardUpgradeStrat public UndertowRequestUpgradeStrategy() { - this.handshakes = new Handshake[] { new Hybi13Handshake(), new Hybi08Handshake(), new Hybi07Handshake() }; + this.handshakes = new Handshake[] {new Hybi13Handshake(), new Hybi08Handshake(), new Hybi07Handshake()}; this.supportedVersions = initSupportedVersions(this.handshakes); } private String[] initSupportedVersions(Handshake[] handshakes) { String[] versions = new String[handshakes.length]; - for (int i=0; i < versions.length; i++) { + for (int i = 0; i < versions.length; i++) { versions[i] = handshakes[i].getVersion().toHttpHeaderValue(); } return versions; @@ -125,8 +128,7 @@ public class UndertowRequestUpgradeStrategy extends AbstractStandardUpgradeStrat endpointRegistration.setSubprotocols(Arrays.asList(selectedProtocol)); endpointRegistration.setExtensions(selectedExtensions); - return new ConfiguredServerEndpoint(endpointRegistration, - new EndpointInstanceFactory(endpoint), null, + return new ConfiguredServerEndpoint(endpointRegistration, new EndpointInstanceFactory(endpoint), null, new EncodingFactory( Collections., List>>emptyMap(), Collections., List>>emptyMap(), @@ -145,7 +147,6 @@ public class UndertowRequestUpgradeStrategy extends AbstractStandardUpgradeStrat @Override public InstanceHandle createInstance() throws InstantiationException { - return new InstanceHandle() { @Override public Endpoint getInstance() { diff --git a/spring-websocket/src/test/java/org/springframework/web/socket/WebSocketIntegrationTests.java b/spring-websocket/src/test/java/org/springframework/web/socket/WebSocketIntegrationTests.java index c41708f044f..8673abb3943 100644 --- a/spring-websocket/src/test/java/org/springframework/web/socket/WebSocketIntegrationTests.java +++ b/spring-websocket/src/test/java/org/springframework/web/socket/WebSocketIntegrationTests.java @@ -23,17 +23,18 @@ import java.util.Arrays; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; + import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import org.springframework.web.socket.handler.TextWebSocketHandler; -import org.springframework.web.socket.handler.AbstractWebSocketHandler; -import org.springframework.web.socket.client.standard.StandardWebSocketClient; import org.springframework.web.socket.client.jetty.JettyWebSocketClient; -import org.springframework.web.socket.server.support.DefaultHandshakeHandler; +import org.springframework.web.socket.client.standard.StandardWebSocketClient; import org.springframework.web.socket.config.annotation.EnableWebSocket; import org.springframework.web.socket.config.annotation.WebSocketConfigurer; import org.springframework.web.socket.config.annotation.WebSocketHandlerRegistry; +import org.springframework.web.socket.handler.AbstractWebSocketHandler; +import org.springframework.web.socket.handler.TextWebSocketHandler; +import org.springframework.web.socket.server.support.DefaultHandshakeHandler; import static org.junit.Assert.*; @@ -47,22 +48,21 @@ public class WebSocketIntegrationTests extends AbstractWebSocketIntegrationTest @Parameterized.Parameters public static Iterable arguments() { - return Arrays.asList(new Object[][]{ + return Arrays.asList(new Object[][] { {new JettyWebSocketTestServer(), new JettyWebSocketClient()}, {new TomcatWebSocketTestServer(), new StandardWebSocketClient()}, {new UndertowTestServer(), new JettyWebSocketClient()} }); - }; + } @Override protected Class[] getAnnotatedConfigClasses() { - return new Class[] { TestWebSocketConfigurer.class }; + return new Class[] {TestWebSocketConfigurer.class}; } @Test public void subProtocolNegotiation() throws Exception { - WebSocketHttpHeaders headers = new WebSocketHttpHeaders(); headers.setSecWebSocketProtocol("foo"); @@ -78,7 +78,7 @@ public class WebSocketIntegrationTests extends AbstractWebSocketIntegrationTest static class TestWebSocketConfigurer implements WebSocketConfigurer { @Autowired - private DefaultHandshakeHandler handshakeHandler; // can't rely on classpath for server detection + private DefaultHandshakeHandler handshakeHandler; // can't rely on classpath for server detection @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { @@ -92,6 +92,7 @@ public class WebSocketIntegrationTests extends AbstractWebSocketIntegrationTest } } + private static class TestServerWebSocketHandler extends TextWebSocketHandler { }