From f6bb7678b6f249ead1811276e200a9778a0441e1 Mon Sep 17 00:00:00 2001 From: nkzawa Date: Thu, 13 Jul 2017 21:54:33 +0900 Subject: [PATCH] fix generating Id --- src/main/java/io/socket/client/Manager.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/io/socket/client/Manager.java b/src/main/java/io/socket/client/Manager.java index c20e0db..4b925ed 100644 --- a/src/main/java/io/socket/client/Manager.java +++ b/src/main/java/io/socket/client/Manager.java @@ -163,11 +163,17 @@ public class Manager extends Emitter { * Update `socket.id` of all sockets */ private void updateSocketIds() { - for (Socket socket : this.nsps.values()) { - socket.id = this.engine.id(); + for (Map.Entry entry : this.nsps.entrySet()) { + String nsp = entry.getKey(); + Socket socket = entry.getValue(); + socket.id = this.generateId(nsp); } } + private String generateId(String nsp) { + return ("/".equals(nsp) ? "" : (nsp + "#")) + this.engine.id(); + } + public boolean reconnection() { return this._reconnection; } @@ -421,7 +427,7 @@ public class Manager extends Emitter { * @param opts options. * @return a socket instance for the namespace. */ - public Socket socket(String nsp, Options opts) { + public Socket socket(final String nsp, Options opts) { Socket socket = this.nsps.get(nsp); if (socket == null) { socket = new Socket(this, nsp, opts); @@ -440,7 +446,7 @@ public class Manager extends Emitter { socket.on(Socket.EVENT_CONNECT, new Listener() { @Override public void call(Object... objects) { - s.id = self.engine.id(); + s.id = self.generateId(nsp); } }); }