Skip to content

Commit b51442c

Browse files
committed
Improve Channel closing
1 parent 74b6b0f commit b51442c

File tree

1 file changed

+5
-7
lines changed

1 file changed

+5
-7
lines changed

src/main/java/com/ning/http/client/providers/netty/NettyWebSocket.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import com.ning.http.client.websocket.WebSocketListener;
1919
import com.ning.http.client.websocket.WebSocketTextListener;
2020
import org.jboss.netty.channel.Channel;
21+
import org.jboss.netty.channel.ChannelFutureListener;
2122
import org.jboss.netty.handler.codec.http.websocketx.BinaryWebSocketFrame;
2223
import org.jboss.netty.handler.codec.http.websocketx.CloseWebSocketFrame;
2324
import org.jboss.netty.handler.codec.http.websocketx.PingWebSocketFrame;
@@ -114,13 +115,10 @@ public boolean isOpen() {
114115

115116
// @Override
116117
public void close() {
117-
onClose();
118-
listeners.clear();
119-
try {
120-
channel.write(new CloseWebSocketFrame());
121-
channel.getCloseFuture().awaitUninterruptibly();
122-
} finally {
123-
channel.close();
118+
if (channel.isOpen()) {
119+
onClose();
120+
listeners.clear();
121+
channel.write(new CloseWebSocketFrame()).addListener(ChannelFutureListener.CLOSE);
124122
}
125123
}
126124

0 commit comments

Comments
 (0)