diff --git a/VERSIONS.md b/VERSIONS.md
index deec717..a4f0653 100644
--- a/VERSIONS.md
+++ b/VERSIONS.md
@@ -4,4 +4,4 @@
| --------------- | ------ | ----------------------- |
| 1.6.x | 1.6 | 6.1.x |
| 2.0.x | master | 7.0.x |
-| 2.1.x | master | 7.1.x |
+| 2.2.x | master | 7.1.x |
diff --git a/java/hiro-action-client/pom.xml b/java/hiro-action-client/pom.xml
index cb2fd1f..a4c5b05 100644
--- a/java/hiro-action-client/pom.xml
+++ b/java/hiro-action-client/pom.xml
@@ -4,11 +4,11 @@
co.arago
hiro-action-client
${project.artifactId}
- 2.2.0
+ 2.2.1
co.arago
hiro-client-all
- 2.2.0
+ 2.2.1
diff --git a/java/hiro-client/pom.xml b/java/hiro-client/pom.xml
index 4c6552a..7085905 100644
--- a/java/hiro-client/pom.xml
+++ b/java/hiro-client/pom.xml
@@ -4,11 +4,11 @@
co.arago
hiro-client
${project.artifactId}
- 2.2.0
+ 2.2.1
co.arago
hiro-client-all
- 2.2.0
+ 2.2.1
diff --git a/java/hiro-client/src/main/java/co/arago/hiro/client/rest/DefaultWebSocketClient.java b/java/hiro-client/src/main/java/co/arago/hiro/client/rest/DefaultWebSocketClient.java
index d4c5c1d..e2dd11e 100644
--- a/java/hiro-client/src/main/java/co/arago/hiro/client/rest/DefaultWebSocketClient.java
+++ b/java/hiro-client/src/main/java/co/arago/hiro/client/rest/DefaultWebSocketClient.java
@@ -222,9 +222,7 @@ private void connect(boolean isReconnecting) {
LOG.log(Level.FINEST, "connecting " + this);
}
- WebSocketUpgradeHandler.Builder upgradeHandlerBuilder = new WebSocketUpgradeHandler.Builder();
-
- WebSocketUpgradeHandler wsHandler = upgradeHandlerBuilder
+ WebSocketUpgradeHandler wsHandler = new WebSocketUpgradeHandler.Builder()
.addWebSocketListener(new DefaultWebSocketListener(isReconnecting)).build();
try {
@@ -265,19 +263,24 @@ private void connect(boolean isReconnecting) {
* InterruptedException while sleeping.
*/
private synchronized void reconnect() {
+ if (!running) {
+ return;
+ }
+
Duration nextTryDelay = Duration.ZERO;
closeWs();
while (true) {
try {
+ long delay = nextTryDelay.getSeconds() * 1000;
+ if (delay > 0)
+ wait(delay);
+
if (!running) {
return;
}
- long delay = nextTryDelay.getSeconds() * 1000;
- Thread.sleep(delay);
-
if (LOG.isLoggable(Level.INFO)) {
LOG.log(Level.INFO, "Reconnecting " + this);
}
@@ -426,6 +429,7 @@ public synchronized long sendMessage(String type, Map headers, M
public synchronized void close() {
running = false;
+ notifyAll();
closeWs();
executor.shutdownNow();
diff --git a/java/pom.xml b/java/pom.xml
index 9aeb28e..fa4987f 100644
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -7,7 +7,7 @@
hiro-client-all
${project.artifactId}
pom
- 2.2.0
+ 2.2.1
false