/** * Get all clients connected to default namespace * * @return clients collection */ public Collection<SocketIOClient> getAllClients() { return namespacesHub.get(Namespace.DEFAULT_NAME).getAllClients(); }
/** * Get all namespaces * * @return namespaces collection */ public Collection<SocketIONamespace> getAllNamespaces() { return namespacesHub.getAllNamespaces(); }
public void dispatch(String room, Packet packet) { Iterable<SocketIOClient> clients = getRoomClients(room); for (SocketIOClient socketIOClient : clients) { socketIOClient.send(packet); } }
@Override public Set<String> getAllRooms() { return namespace.getRooms(this); }
public NamespaceClient(ClientHead baseClient, Namespace namespace) { this.baseClient = baseClient; this.namespace = namespace; namespace.addClient(this); }
public SocketIONamespace getNamespace(String name) { return namespacesHub.get(name); }
public void removeNamespace(String name) { namespacesHub.remove(name); }
@Override public void addListener(Namespace namespace, final Object object, final Method method, Annotation annotation) { namespace.addConnectListener(new ConnectListener() { @Override public void onConnect(SocketIOClient client) { try { method.invoke(object, client); } catch (InvocationTargetException e) { throw new SocketIOException(e.getCause()); } catch (Exception e) { throw new SocketIOException(e); } } }); }
public SocketIONamespace addNamespace(String name) { return namespacesHub.create(name); }
@Override public void addListener(Namespace namespace, final Object object, final Method method, Annotation annotation) { namespace.addDisconnectListener(new DisconnectListener() { @Override public void onDisconnect(SocketIOClient client) { try { method.invoke(object, client); } catch (InvocationTargetException e) { throw new SocketIOException(e.getCause()); } catch (Exception e) { throw new SocketIOException(e); } } }); }
public Namespace create(String name) { Namespace namespace = (Namespace) namespaces.get(name); if (namespace == null) { namespace = new Namespace(name, configuration); Namespace oldNamespace = (Namespace) namespaces.putIfAbsent(name, namespace); if (oldNamespace != null) { namespace = oldNamespace; } } return namespace; }
@Override public void joinRoom(String room) { namespace.joinRoom(room, getSessionId()); }
@Override public void leaveRoom(String room) { namespace.leaveRoom(room, getSessionId()); }
@Override public BroadcastOperations getRoomOperations(String room) { return new BroadcastOperations(getRoomClients(room), storeFactory); }