Skip to content

Commit 2674166

Browse files
thabachslandelle
authored andcommitted
Make WebSocketUpgradeHandler extensible in a controlled manner (via protected template methods) (#1446)
1 parent 591ccee commit 2674166

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

client/src/main/java/org/asynchttpclient/ws/WebSocketUpgradeHandler.java

+15
Original file line numberDiff line numberDiff line change
@@ -36,29 +36,42 @@ public class WebSocketUpgradeHandler implements AsyncHandler<NettyWebSocket> {
3636
public WebSocketUpgradeHandler(List<WebSocketListener> listeners) {
3737
this.listeners = listeners;
3838
}
39+
40+
protected void setWebSocket0(NettyWebSocket webSocket) {}
41+
protected void onStatusReceived0(HttpResponseStatus responseStatus) throws Exception {}
42+
protected void onHeadersReceived0(HttpHeaders headers) throws Exception {}
43+
protected void onBodyPartReceived0(HttpResponseBodyPart bodyPart) throws Exception {}
44+
protected void onCompleted0() throws Exception {}
45+
protected void onThrowable0(Throwable t) {}
46+
protected void onOpen0() {}
3947

4048
@Override
4149
public final State onStatusReceived(HttpResponseStatus responseStatus) throws Exception {
50+
onStatusReceived0(responseStatus);
4251
return responseStatus.getStatusCode() == SWITCHING_PROTOCOLS ? State.CONTINUE : State.ABORT;
4352
}
4453

4554
@Override
4655
public final State onHeadersReceived(HttpHeaders headers) throws Exception {
56+
onHeadersReceived0(headers);
4757
return State.CONTINUE;
4858
}
4959

5060
@Override
5161
public final State onBodyPartReceived(HttpResponseBodyPart bodyPart) throws Exception {
62+
onBodyPartReceived0(bodyPart);
5263
return State.CONTINUE;
5364
}
5465

5566
@Override
5667
public final NettyWebSocket onCompleted() throws Exception {
68+
onCompleted0();
5769
return webSocket;
5870
}
5971

6072
@Override
6173
public final void onThrowable(Throwable t) {
74+
onThrowable0(t);
6275
for (WebSocketListener listener : listeners) {
6376
if (webSocket != null) {
6477
webSocket.addWebSocketListener(listener);
@@ -69,9 +82,11 @@ public final void onThrowable(Throwable t) {
6982

7083
public final void setWebSocket(NettyWebSocket webSocket) {
7184
this.webSocket = webSocket;
85+
setWebSocket0(this.webSocket);
7286
}
7387

7488
public final void onOpen() {
89+
onOpen0();
7590
for (WebSocketListener listener : listeners) {
7691
webSocket.addWebSocketListener(listener);
7792
listener.onOpen(webSocket);

0 commit comments

Comments
 (0)