diff --git a/src/main/java/com/corundumstudio/socketio/SocketIOClient.java b/src/main/java/com/corundumstudio/socketio/SocketIOClient.java index 1e2d337..da061f4 100644 --- a/src/main/java/com/corundumstudio/socketio/SocketIOClient.java +++ b/src/main/java/com/corundumstudio/socketio/SocketIOClient.java @@ -91,8 +91,18 @@ public interface SocketIOClient extends ClientOperations { */ boolean isChannelOpen(); + /** + * Join client to room + * + * @param roomKey - any object with correct hashcode & equals implementation + */ void joinRoom(T roomKey); + /** + * Join client to room + * + * @param roomKey - any object with correct hashcode & equals implementation + */ void leaveRoom(T roomKey); } diff --git a/src/main/java/com/corundumstudio/socketio/SocketIOServer.java b/src/main/java/com/corundumstudio/socketio/SocketIOServer.java index f22abb6..2790e18 100644 --- a/src/main/java/com/corundumstudio/socketio/SocketIOServer.java +++ b/src/main/java/com/corundumstudio/socketio/SocketIOServer.java @@ -60,7 +60,7 @@ public class SocketIOServer implements ClientListeners { /** * Get all clients * - * @return Iterable object with clients + * @return clients collection */ public Collection getAllClients() { return pipelineFactory.getAllClients(); @@ -70,6 +70,13 @@ public class SocketIOServer implements ClientListeners { return getBroadcastOperations(pipelineFactory.getAllClients()); } + /** + * Get broadcast operations for clients within + * room by roomKey + * + * @param roomKey - any object with correct hashcode & equals implementation + * @return + */ public BroadcastOperations getRoomOperations(T roomKey) { Iterable clients = namespacesHub.getRoomClients(roomKey); return new BroadcastOperations(clients);