Skip to content

Commit f347988

Browse files
committed
Remove parameterized type from WebSocketHandler
1 parent 0c1b329 commit f347988

37 files changed

+88
-122
lines changed

spring-websocket/src/main/java/org/springframework/sockjs/AbstractSockJsSession.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ public abstract class AbstractSockJsSession implements WebSocketSession {
5555
* @param sessionId
5656
* @param webSocketHandler the recipient of SockJS messages
5757
*/
58-
public AbstractSockJsSession(String sessionId, WebSocketHandler<?> webSocketHandler) {
58+
public AbstractSockJsSession(String sessionId, WebSocketHandler webSocketHandler) {
5959
Assert.notNull(sessionId, "sessionId is required");
6060
Assert.notNull(webSocketHandler, "webSocketHandler is required");
6161
this.sessionId = sessionId;

spring-websocket/src/main/java/org/springframework/sockjs/SockJsSessionFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,6 @@ public interface SockJsSessionFactory<S extends WebSocketSession>{
3434
* @param webSocketHandler the underlying {@link WebSocketHandler}
3535
* @return a new non-null session
3636
*/
37-
S createSession(String sessionId, WebSocketHandler<?> webSocketHandler);
37+
S createSession(String sessionId, WebSocketHandler webSocketHandler);
3838

3939
}

spring-websocket/src/main/java/org/springframework/sockjs/server/AbstractServerSockJsSession.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public abstract class AbstractServerSockJsSession extends AbstractSockJsSession
4343
private ScheduledFuture<?> heartbeatTask;
4444

4545

46-
public AbstractServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler<?> handler) {
46+
public AbstractServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler handler) {
4747
super(sessionId, handler);
4848
this.sockJsConfig = config;
4949
}

spring-websocket/src/main/java/org/springframework/sockjs/server/AbstractSockJsService.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ public boolean isWebSocketEnabled() {
199199
* @throws Exception
200200
*/
201201
public final void handleRequest(ServerHttpRequest request, ServerHttpResponse response,
202-
String sockJsPath, WebSocketHandler<?> webSocketHandler) throws IOException, TransportErrorException {
202+
String sockJsPath, WebSocketHandler webSocketHandler) throws IOException, TransportErrorException {
203203

204204
logger.debug(request.getMethod() + " [" + sockJsPath + "]");
205205

@@ -253,10 +253,10 @@ else if (sockJsPath.equals("/websocket")) {
253253
}
254254

255255
protected abstract void handleRawWebSocketRequest(ServerHttpRequest request,
256-
ServerHttpResponse response, WebSocketHandler<?> webSocketHandler) throws IOException;
256+
ServerHttpResponse response, WebSocketHandler webSocketHandler) throws IOException;
257257

258258
protected abstract void handleTransportRequest(ServerHttpRequest request, ServerHttpResponse response,
259-
String sessionId, TransportType transportType, WebSocketHandler<?> webSocketHandler)
259+
String sessionId, TransportType transportType, WebSocketHandler webSocketHandler)
260260
throws IOException, TransportErrorException;
261261

262262

spring-websocket/src/main/java/org/springframework/sockjs/server/SockJsService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ public interface SockJsService {
3030

3131

3232
void handleRequest(ServerHttpRequest request, ServerHttpResponse response,
33-
String sockJsPath, WebSocketHandler<?> webSocketHandler) throws IOException, TransportErrorException;
33+
String sockJsPath, WebSocketHandler webSocketHandler) throws IOException, TransportErrorException;
3434

3535
}

spring-websocket/src/main/java/org/springframework/sockjs/server/TransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,6 @@ public interface TransportHandler {
3030
TransportType getTransportType();
3131

3232
void handleRequest(ServerHttpRequest request, ServerHttpResponse response,
33-
WebSocketHandler<?> handler, AbstractSockJsSession session) throws TransportErrorException;
33+
WebSocketHandler handler, AbstractSockJsSession session) throws TransportErrorException;
3434

3535
}

spring-websocket/src/main/java/org/springframework/sockjs/server/support/DefaultSockJsService.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ public Map<TransportType, TransportHandler> getTransportHandlers() {
142142

143143
@Override
144144
protected void handleRawWebSocketRequest(ServerHttpRequest request, ServerHttpResponse response,
145-
WebSocketHandler<?> webSocketHandler) throws IOException {
145+
WebSocketHandler webSocketHandler) throws IOException {
146146

147147
if (isWebSocketEnabled()) {
148148
TransportHandler transportHandler = this.transportHandlers.get(TransportType.WEBSOCKET);
@@ -159,7 +159,7 @@ protected void handleRawWebSocketRequest(ServerHttpRequest request, ServerHttpRe
159159

160160
@Override
161161
protected void handleTransportRequest(ServerHttpRequest request, ServerHttpResponse response,
162-
String sessionId, TransportType transportType, WebSocketHandler<?> webSocketHandler)
162+
String sessionId, TransportType transportType, WebSocketHandler webSocketHandler)
163163
throws IOException, TransportErrorException {
164164

165165
TransportHandler transportHandler = this.transportHandlers.get(transportType);
@@ -210,7 +210,7 @@ protected void handleTransportRequest(ServerHttpRequest request, ServerHttpRespo
210210
}
211211

212212
public AbstractSockJsSession getSockJsSession(String sessionId,
213-
WebSocketHandler<?> webSocketHandler, TransportHandler transportHandler) {
213+
WebSocketHandler webSocketHandler, TransportHandler transportHandler) {
214214

215215
AbstractSockJsSession session = this.sessions.get(sessionId);
216216
if (session != null) {

spring-websocket/src/main/java/org/springframework/sockjs/server/support/SockJsHttpRequestHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public class SockJsHttpRequestHandler implements HttpRequestHandler {
4343

4444
private final SockJsService sockJsService;
4545

46-
private final WebSocketHandler<?> webSocketHandler;
46+
private final WebSocketHandler webSocketHandler;
4747

4848
private final UrlPathHelper urlPathHelper = new UrlPathHelper();
4949

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/AbstractHttpReceivingTransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ public ObjectMapper getObjectMapper() {
5454

5555
@Override
5656
public final void handleRequest(ServerHttpRequest request, ServerHttpResponse response,
57-
WebSocketHandler<?> webSocketHandler, AbstractSockJsSession session)
57+
WebSocketHandler webSocketHandler, AbstractSockJsSession session)
5858
throws TransportErrorException {
5959

6060
if (session == null) {

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/AbstractHttpSendingTransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public SockJsConfiguration getSockJsConfig() {
5757

5858
@Override
5959
public final void handleRequest(ServerHttpRequest request, ServerHttpResponse response,
60-
WebSocketHandler<?> webSocketHandler, AbstractSockJsSession session)
60+
WebSocketHandler webSocketHandler, AbstractSockJsSession session)
6161
throws TransportErrorException {
6262

6363
// Set content type before writing

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/AbstractHttpServerSockJsSession.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public abstract class AbstractHttpServerSockJsSession extends AbstractServerSock
4949
private ServerHttpResponse response;
5050

5151

52-
public AbstractHttpServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler<?> handler) {
52+
public AbstractHttpServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler handler) {
5353
super(sessionId, config, handler);
5454
}
5555

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/EventSourceTransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ protected MediaType getContentType() {
4646
}
4747

4848
@Override
49-
public StreamingServerSockJsSession createSession(String sessionId, WebSocketHandler<?> handler) {
49+
public StreamingServerSockJsSession createSession(String sessionId, WebSocketHandler handler) {
5050
Assert.notNull(getSockJsConfig(), "This transport requires SockJsConfiguration");
5151
return new StreamingServerSockJsSession(sessionId, getSockJsConfig(), handler) {
5252
@Override

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/HtmlFileTransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ protected MediaType getContentType() {
8080
}
8181

8282
@Override
83-
public StreamingServerSockJsSession createSession(String sessionId, WebSocketHandler<?> handler) {
83+
public StreamingServerSockJsSession createSession(String sessionId, WebSocketHandler handler) {
8484
Assert.notNull(getSockJsConfig(), "This transport requires SockJsConfiguration");
8585

8686
return new StreamingServerSockJsSession(sessionId, getSockJsConfig(), handler) {

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/JsonpPollingTransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ protected MediaType getContentType() {
5050
}
5151

5252
@Override
53-
public PollingServerSockJsSession createSession(String sessionId, WebSocketHandler<?> handler) {
53+
public PollingServerSockJsSession createSession(String sessionId, WebSocketHandler handler) {
5454
Assert.notNull(getSockJsConfig(), "This transport requires SockJsConfiguration");
5555
return new PollingServerSockJsSession(sessionId, getSockJsConfig(), handler);
5656
}

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/PollingServerSockJsSession.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
public class PollingServerSockJsSession extends AbstractHttpServerSockJsSession {
2626

27-
public PollingServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler<?> handler) {
27+
public PollingServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler handler) {
2828
super(sessionId, config, handler);
2929
}
3030

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/SockJsWebSocketHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public class SockJsWebSocketHandler extends TextWebSocketHandlerAdapter {
4444

4545
private final SockJsConfiguration sockJsConfig;
4646

47-
private final WebSocketHandler<?> webSocketHandler;
47+
private final WebSocketHandler webSocketHandler;
4848

4949
private WebSocketServerSockJsSession sockJsSession;
5050

@@ -54,7 +54,7 @@ public class SockJsWebSocketHandler extends TextWebSocketHandlerAdapter {
5454
private final ObjectMapper objectMapper = new ObjectMapper();
5555

5656

57-
public SockJsWebSocketHandler(SockJsConfiguration config, WebSocketHandler<?> webSocketHandler) {
57+
public SockJsWebSocketHandler(SockJsConfiguration config, WebSocketHandler webSocketHandler) {
5858
Assert.notNull(config, "sockJsConfig is required");
5959
Assert.notNull(webSocketHandler, "webSocketHandler is required");
6060
this.sockJsConfig = config;
@@ -73,7 +73,7 @@ public void afterConnectionEstablished(WebSocketSession wsSession) {
7373
}
7474

7575
@Override
76-
public void handleMessage(WebSocketSession wsSession, TextMessage message) {
76+
public void handleTextMessage(WebSocketSession wsSession, TextMessage message) {
7777
this.sockJsSession.handleMessage(message, wsSession);
7878
}
7979

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/StreamingServerSockJsSession.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public class StreamingServerSockJsSession extends AbstractHttpServerSockJsSessio
3131
private int byteCount;
3232

3333

34-
public StreamingServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler<?> handler) {
34+
public StreamingServerSockJsSession(String sessionId, SockJsConfiguration config, WebSocketHandler handler) {
3535
super(sessionId, config, handler);
3636
}
3737

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/WebSocketTransportHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,10 @@ public void setSockJsConfiguration(SockJsConfiguration sockJsConfig) {
6363

6464
@Override
6565
public void handleRequest(ServerHttpRequest request, ServerHttpResponse response,
66-
WebSocketHandler<?> webSocketHandler, AbstractSockJsSession session) throws TransportErrorException {
66+
WebSocketHandler webSocketHandler, AbstractSockJsSession session) throws TransportErrorException {
6767

6868
try {
69-
WebSocketHandler<?> sockJsWrapper = new SockJsWebSocketHandler(this.sockJsConfig, webSocketHandler);
69+
WebSocketHandler sockJsWrapper = new SockJsWebSocketHandler(this.sockJsConfig, webSocketHandler);
7070
this.handshakeHandler.doHandshake(request, response, sockJsWrapper);
7171
}
7272
catch (Throwable t) {
@@ -77,7 +77,7 @@ public void handleRequest(ServerHttpRequest request, ServerHttpResponse response
7777
// HandshakeHandler methods
7878

7979
@Override
80-
public boolean doHandshake(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler<?> handler)
80+
public boolean doHandshake(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler handler)
8181
throws IOException {
8282

8383
return this.handshakeHandler.doHandshake(request, response, handler);

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/XhrPollingTransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ protected FrameFormat getFrameFormat(ServerHttpRequest request) {
5050
return new DefaultFrameFormat("%s\n");
5151
}
5252

53-
public PollingServerSockJsSession createSession(String sessionId, WebSocketHandler<?> handler) {
53+
public PollingServerSockJsSession createSession(String sessionId, WebSocketHandler handler) {
5454
Assert.notNull(getSockJsConfig(), "This transport requires SockJsConfiguration");
5555
return new PollingServerSockJsSession(sessionId, getSockJsConfig(), handler);
5656
}

spring-websocket/src/main/java/org/springframework/sockjs/server/transport/XhrStreamingTransportHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ protected MediaType getContentType() {
4747
}
4848

4949
@Override
50-
public StreamingServerSockJsSession createSession(String sessionId, WebSocketHandler<?> handler) {
50+
public StreamingServerSockJsSession createSession(String sessionId, WebSocketHandler handler) {
5151
Assert.notNull(getSockJsConfig(), "This transport requires SockJsConfiguration");
5252

5353
return new StreamingServerSockJsSession(sessionId, getSockJsConfig(), handler) {

spring-websocket/src/main/java/org/springframework/websocket/WebSocketHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
* @author Phillip Webb
2727
* @since 4.0
2828
*/
29-
public interface WebSocketHandler<T extends WebSocketMessage<?>> {
29+
public interface WebSocketHandler {
3030

3131
/**
3232
* A new WebSocket connection has been opened and is ready to be used.
@@ -36,7 +36,7 @@ public interface WebSocketHandler<T extends WebSocketMessage<?>> {
3636
/**
3737
* Handle an incoming WebSocket message.
3838
*/
39-
void handleMessage(WebSocketSession session, T message);
39+
void handleMessage(WebSocketSession session, WebSocketMessage<?> message);
4040

4141
/**
4242
* Handle an error from the underlying WebSocket message transport.

spring-websocket/src/main/java/org/springframework/websocket/adapter/BinaryWebSocketHandlerAdapter.java

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@
1616

1717
package org.springframework.websocket.adapter;
1818

19-
import org.springframework.websocket.BinaryMessage;
19+
import java.io.IOException;
20+
2021
import org.springframework.websocket.CloseStatus;
22+
import org.springframework.websocket.TextMessage;
2123
import org.springframework.websocket.WebSocketHandler;
2224
import org.springframework.websocket.WebSocketSession;
2325

@@ -29,22 +31,17 @@
2931
* @author Phillip Webb
3032
* @since 4.0
3133
*/
32-
public class BinaryWebSocketHandlerAdapter implements WebSocketHandler<BinaryMessage> {
34+
public class BinaryWebSocketHandlerAdapter extends WebSocketHandlerAdapter {
3335

34-
@Override
35-
public void afterConnectionEstablished(WebSocketSession session) {
36-
}
37-
38-
@Override
39-
public void handleMessage(WebSocketSession session, BinaryMessage message) {
40-
}
41-
42-
@Override
43-
public void handleTransportError(WebSocketSession session, Throwable exception) {
44-
}
4536

4637
@Override
47-
public void afterConnectionClosed(WebSocketSession session, CloseStatus status) {
38+
protected void handleTextMessage(WebSocketSession session, TextMessage message) {
39+
try {
40+
session.close(CloseStatus.NOT_ACCEPTABLE.withReason("Text messages not supported"));
41+
}
42+
catch (IOException e) {
43+
// ignore
44+
}
4845
}
4946

5047
}

spring-websocket/src/main/java/org/springframework/websocket/adapter/JettyWebSocketListenerAdapter.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
import org.springframework.websocket.CloseStatus;
2626
import org.springframework.websocket.TextMessage;
2727
import org.springframework.websocket.WebSocketHandler;
28-
import org.springframework.websocket.WebSocketMessage;
2928
import org.springframework.websocket.WebSocketSession;
3029

3130
/**
@@ -38,12 +37,12 @@ public class JettyWebSocketListenerAdapter implements WebSocketListener {
3837

3938
private static Log logger = LogFactory.getLog(JettyWebSocketListenerAdapter.class);
4039

41-
private final WebSocketHandler<WebSocketMessage<?>> webSocketHandler;
40+
private final WebSocketHandler webSocketHandler;
4241

4342
private WebSocketSession wsSession;
4443

4544

46-
public JettyWebSocketListenerAdapter(WebSocketHandler<?> webSocketHandler) {
45+
public JettyWebSocketListenerAdapter(WebSocketHandler webSocketHandler) {
4746
Assert.notNull(webSocketHandler, "webSocketHandler is required");
4847
this.webSocketHandler = new WebSocketHandlerInvoker(webSocketHandler).setLogger(logger);
4948
}

spring-websocket/src/main/java/org/springframework/websocket/adapter/StandardEndpointAdapter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public class StandardEndpointAdapter extends Endpoint {
5252

5353

5454

55-
public StandardEndpointAdapter(WebSocketHandler<?> webSocketHandler) {
55+
public StandardEndpointAdapter(WebSocketHandler webSocketHandler) {
5656
Assert.notNull(webSocketHandler, "webSocketHandler is required");
5757
this.handler = new WebSocketHandlerInvoker(webSocketHandler).setLogger(logger);
5858
this.handlerClass= webSocketHandler.getClass();

spring-websocket/src/main/java/org/springframework/websocket/adapter/TextWebSocketHandlerAdapter.java

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,10 @@
1616

1717
package org.springframework.websocket.adapter;
1818

19+
import java.io.IOException;
20+
21+
import org.springframework.websocket.BinaryMessage;
1922
import org.springframework.websocket.CloseStatus;
20-
import org.springframework.websocket.TextMessage;
2123
import org.springframework.websocket.WebSocketHandler;
2224
import org.springframework.websocket.WebSocketSession;
2325

@@ -29,22 +31,17 @@
2931
* @author Phillip Webb
3032
* @since 4.0
3133
*/
32-
public class TextWebSocketHandlerAdapter implements WebSocketHandler<TextMessage> {
34+
public class TextWebSocketHandlerAdapter extends WebSocketHandlerAdapter {
3335

34-
@Override
35-
public void afterConnectionEstablished(WebSocketSession session) {
36-
}
37-
38-
@Override
39-
public void handleMessage(WebSocketSession session, TextMessage message) {
40-
}
41-
42-
@Override
43-
public void handleTransportError(WebSocketSession session, Throwable exception) {
44-
}
4536

4637
@Override
47-
public void afterConnectionClosed(WebSocketSession session, CloseStatus status) {
38+
protected void handleBinaryMessage(WebSocketSession session, BinaryMessage message) {
39+
try {
40+
session.close(CloseStatus.NOT_ACCEPTABLE.withReason("Binary messages not supported"));
41+
}
42+
catch (IOException e) {
43+
// ignore
44+
}
4845
}
4946

5047
}

spring-websocket/src/main/java/org/springframework/websocket/adapter/WebSocketHandlerAdapter.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
* @see TextWebSocketHandlerAdapter
3535
* @see BinaryWebSocketHandlerAdapter
3636
*/
37-
public class WebSocketHandlerAdapter implements WebSocketHandler<WebSocketMessage<?>> {
37+
public class WebSocketHandlerAdapter implements WebSocketHandler {
3838

3939
@Override
4040
public void afterConnectionEstablished(WebSocketSession session) {
@@ -49,6 +49,7 @@ else if (message instanceof BinaryMessage) {
4949
handleBinaryMessage(session, (BinaryMessage) message);
5050
}
5151
else {
52+
// should not happen
5253
throw new IllegalStateException("Unexpected WebSocket message type: " + message);
5354
}
5455
}

0 commit comments

Comments
 (0)