diff --git a/.gitignore b/.gitignore index 57198ab..fa23f80 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ /.settings /.classpath -/.project \ No newline at end of file +/.project +/target \ No newline at end of file diff --git a/src/main/java/com/corundumstudio/socketio/HeartbeatHandler.java b/src/main/java/com/corundumstudio/socketio/HeartbeatHandler.java index 32196bf..adc13a2 100644 --- a/src/main/java/com/corundumstudio/socketio/HeartbeatHandler.java +++ b/src/main/java/com/corundumstudio/socketio/HeartbeatHandler.java @@ -45,7 +45,6 @@ public class HeartbeatHandler { cancelHeartbeatCheck(client); executorService.schedule(new Runnable() { - @Override public void run() { sendHeartbeat(client); } @@ -62,7 +61,6 @@ public class HeartbeatHandler { public void sendHeartbeat(final SocketIOClient client) { client.send(new Packet(PacketType.HEARTBEAT)); scheduleHeartbeatCheck(client.getSessionId(), new Runnable() { - @Override public void run() { client.disconnect(); UUID sessionId = client.getSessionId(); diff --git a/src/main/java/com/corundumstudio/socketio/NullChannelFuture.java b/src/main/java/com/corundumstudio/socketio/NullChannelFuture.java index 092a8e6..2eb5c9f 100644 --- a/src/main/java/com/corundumstudio/socketio/NullChannelFuture.java +++ b/src/main/java/com/corundumstudio/socketio/NullChannelFuture.java @@ -24,52 +24,42 @@ public class NullChannelFuture implements ChannelFuture { private final Logger log = LoggerFactory.getLogger(getClass()); - @Override public Channel getChannel() { throw new UnsupportedOperationException(); } - @Override public boolean isDone() { return true; } - @Override public boolean isCancelled() { return false; } - @Override public boolean isSuccess() { return false; } - @Override public Throwable getCause() { return null; } - @Override public boolean cancel() { return false; } - @Override public boolean setSuccess() { return false; } - @Override public boolean setFailure(Throwable cause) { return false; } - @Override public boolean setProgress(long amount, long current, long total) { return false; } - @Override public void addListener(ChannelFutureListener listener) { try { listener.operationComplete(this); @@ -78,37 +68,30 @@ public class NullChannelFuture implements ChannelFuture { } } - @Override public void removeListener(ChannelFutureListener listener) { } - @Override public ChannelFuture await() throws InterruptedException { return this; } - @Override public ChannelFuture awaitUninterruptibly() { return this; } - @Override public boolean await(long timeout, TimeUnit unit) throws InterruptedException { return true; } - @Override public boolean await(long timeoutMillis) throws InterruptedException { return true; } - @Override public boolean awaitUninterruptibly(long timeout, TimeUnit unit) { return true; } - @Override public boolean awaitUninterruptibly(long timeoutMillis) { return true; } diff --git a/src/main/java/com/corundumstudio/socketio/SocketIORouter.java b/src/main/java/com/corundumstudio/socketio/SocketIORouter.java index 8771887..0864f26 100644 --- a/src/main/java/com/corundumstudio/socketio/SocketIORouter.java +++ b/src/main/java/com/corundumstudio/socketio/SocketIORouter.java @@ -148,7 +148,6 @@ public class SocketIORouter { client.doReconnect(channel, msg); log.debug("New sessionId: {} authorized", sessionId); heartbeatHandler.scheduleHeartbeatCheck(sessionId, new Runnable() { - @Override public void run() { authorizedSessionIds.remove(sessionId); log.debug("Authorized sessionId: {} cleared due to connect timeout", sessionId); diff --git a/src/main/java/com/corundumstudio/socketio/transport/XHRPollingTransport.java b/src/main/java/com/corundumstudio/socketio/transport/XHRPollingTransport.java index 48229f3..1e0b95a 100644 --- a/src/main/java/com/corundumstudio/socketio/transport/XHRPollingTransport.java +++ b/src/main/java/com/corundumstudio/socketio/transport/XHRPollingTransport.java @@ -64,7 +64,6 @@ public class XHRPollingTransport implements SocketIOTransport { this.packetListener = packetListener; } - @Override public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) throws Exception { Object msg = e.getMessage(); if (msg instanceof HttpRequest) { @@ -89,7 +88,10 @@ public class XHRPollingTransport implements SocketIOTransport { if (parts.length > 3) { UUID sessionId = UUID.fromString(parts[4]); XHRPollingClient client = sessionId2Client.get(sessionId); - + if (client == null) { + // client was disconnected + return; + } String content = msg.getContent().toString(CharsetUtil.UTF_8); log.trace("Request content: {}", content); List packets = decoder.decodePayload(content);