From 38dafd30cdf1a6749bcd1674e97d56fcb8b9ce22 Mon Sep 17 00:00:00 2001 From: Nikita Date: Mon, 7 May 2012 18:03:15 +0400 Subject: [PATCH] WebSocket transport support added, heartbeat refactoring --- README.md | 12 +- .../socketio/Configuration.java | 18 ++ .../socketio/HeartbeatHandler.java | 29 ++-- .../socketio/PacketListener.java | 11 +- .../socketio/SocketIORouter.java | 63 +++++-- .../socketio/parser/Decoder.java | 1 + .../socketio/transport/SocketIOTransport.java | 4 + .../socketio/transport/WebSocketClient.java | 111 ++++++++++++ .../transport/WebSocketTransport.java | 163 ++++++++++++++++++ .../socketio/transport/XHRPollingClient.java | 25 ++- .../transport/XHRPollingTransport.java | 19 +- 11 files changed, 386 insertions(+), 70 deletions(-) create mode 100644 src/main/java/com/corundumstudio/socketio/transport/WebSocketClient.java create mode 100644 src/main/java/com/corundumstudio/socketio/transport/WebSocketTransport.java diff --git a/README.md b/README.md index b19eee3..56e68af 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,9 @@ Licensed under the Apache License 2.0. ### Features -* Supports 0.8+ version of [Socket.IO-client](https://github.com/LearnBoost/socket.io-client) up to latest - 0.9.5 +* Supports 0.7+ version of [Socket.IO-client](https://github.com/LearnBoost/socket.io-client) up to latest - 0.9.6 * Supports xhr-polling transport +* Supports websocket transport (Hixie-75/76/Hybi-00, Hybi-10..Hybi-13) #Usage example @@ -40,10 +41,10 @@ Licensed under the Apache License 2.0. } }; - Configuration config = new Configuration(); - config.setHostname("localhost"); - config.setPort(81); - config.setListener(handler); + Configuration config = new Configuration(); + config.setHostname("localhost"); + config.setPort(81); + config.setListener(handler); SocketIOServer server = new SocketIOServer(config); server.start(); @@ -57,7 +58,6 @@ Licensed under the Apache License 2.0.