MLHR-1835 #resolve The AsyncHttpClient and WebSocket were not being closed on reconnect.
diff --git a/library/src/main/java/com/datatorrent/lib/io/WebSocketInputOperator.java b/library/src/main/java/com/datatorrent/lib/io/WebSocketInputOperator.java
index dabcacb..e38d874 100644
--- a/library/src/main/java/com/datatorrent/lib/io/WebSocketInputOperator.java
+++ b/library/src/main/java/com/datatorrent/lib/io/WebSocketInputOperator.java
@@ -153,6 +153,7 @@
try {
sleep(1000);
if (connectionClosed && !WebSocketInputOperator.this.shutdown) {
+ connection.close();
WebSocketInputOperator.this.activate(null);
}
}
@@ -183,6 +184,11 @@
}
}));
+
+ if (client != null) {
+ client.closeAsynchronously();
+ }
+
client = new AsyncHttpClient(config);
connection = client.prepareGet(uri.toString()).execute(new WebSocketUpgradeHandler.Builder().addWebSocketListener(new WebSocketTextListener()
{