From 2a7841b587d68fbc3b853db9b5ecca41e857264a Mon Sep 17 00:00:00 2001 From: Naoyuki Kanezawa Date: Sun, 4 Aug 2013 14:59:44 +0900 Subject: [PATCH] fix reconnection option --- .../com/github/nkzawa/socketio/client/IO.java | 2 +- .../nkzawa/socketio/client/Manager.java | 2 +- .../socketio/client/ServerConnectionTest.java | 27 +++++++++---------- 3 files changed, 14 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/github/nkzawa/socketio/client/IO.java b/src/main/java/com/github/nkzawa/socketio/client/IO.java index b66d862..6357ef1 100644 --- a/src/main/java/com/github/nkzawa/socketio/client/IO.java +++ b/src/main/java/com/github/nkzawa/socketio/client/IO.java @@ -80,7 +80,7 @@ public class IO { */ public boolean multiplex = true; - public boolean reconnection; + public boolean reconnection = true; public int reconnectionAttempts; public long reconnectionDelay; public long reconnectionDelayMax; diff --git a/src/main/java/com/github/nkzawa/socketio/client/Manager.java b/src/main/java/com/github/nkzawa/socketio/client/Manager.java index 1bb6187..c8bc674 100644 --- a/src/main/java/com/github/nkzawa/socketio/client/Manager.java +++ b/src/main/java/com/github/nkzawa/socketio/client/Manager.java @@ -321,7 +321,7 @@ public class Manager extends Emitter { private void onclose() { this.cleanup(); this.readyState = ReadyState.CLOSED; - if (!this.skipReconnect) { + if (this._reconnection && !this.skipReconnect) { this.reconnect(); } } diff --git a/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java b/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java index 772eed3..7ba504a 100644 --- a/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java +++ b/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java @@ -87,9 +87,7 @@ public class ServerConnectionTest { public void openAndClose() throws URISyntaxException, InterruptedException { final BlockingQueue events = new LinkedBlockingQueue(); - IO.Options opts = new IO.Options(); - opts.forceNew = true; - socket = IO.socket(uri(), opts); + socket = client(); socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { @Override public void call(Object... objects) { @@ -114,9 +112,7 @@ public class ServerConnectionTest { public void message() throws URISyntaxException, InterruptedException { final BlockingQueue events = new LinkedBlockingQueue(); - IO.Options opts = new IO.Options(); - opts.forceNew = true; - socket = IO.socket(uri(), opts); + socket = client(); socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { @Override public void call(Object... objects) { @@ -145,9 +141,7 @@ public class ServerConnectionTest { final JsonObject obj = new JsonObject(); obj.addProperty("foo", 1); - IO.Options opts = new IO.Options(); - opts.forceNew = true; - socket = IO.socket(uri(), opts); + socket = client(); socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { @Override public void call(Object... objects) { @@ -174,9 +168,7 @@ public class ServerConnectionTest { final JsonObject obj = new JsonObject(); obj.addProperty("foo", 1); - IO.Options opts = new IO.Options(); - opts.forceNew = true; - socket = IO.socket(uri(), opts); + socket = client(); socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { @Override public void call(Object... objects) { @@ -200,9 +192,7 @@ public class ServerConnectionTest { public void ackWithoutArgs() throws URISyntaxException, InterruptedException { final BlockingQueue events = new LinkedBlockingQueue(); - IO.Options opts = new IO.Options(); - opts.forceNew = true; - socket = IO.socket(uri(), opts); + socket = client(); socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { @Override public void call(Object... objects) { @@ -221,6 +211,13 @@ public class ServerConnectionTest { socket.disconnect(); } + private Socket client() throws URISyntaxException { + IO.Options opts = new IO.Options(); + opts.forceNew = true; + opts.reconnection = false; + return IO.socket(uri(), opts); + } + private String uri() { return "http://localhost:" + PORT + nsp(); }