public SocketIOServer(Configuration configuration) { this.configuration = configuration; this.configCopy = new Configuration(configuration); namespacesHub = new NamespacesHub(configCopy); mainNamespace = addNamespace(Namespace.DEFAULT_NAME); }
public SocketIONamespace addNamespace(String name) { return namespacesHub.create(name); }
public SocketIONamespace getNamespace(String name) { return namespacesHub.get(name); }
/** * Get broadcast operations for clients within * room by <code>room</code> name * * @param room - name of room * @return broadcast operations */ public BroadcastOperations getRoomOperations(String room) { Iterable<SocketIOClient> clients = namespacesHub.getRoomClients(room); return new BroadcastOperations(clients, configCopy.getStoreFactory()); }
/** * Get all namespaces * * @return namespaces collection */ public Collection<SocketIONamespace> getAllNamespaces() { return namespacesHub.getAllNamespaces(); }
public void removeNamespace(String name) { namespacesHub.remove(name); }
/** * Get broadcast operations for clients within * room by <code>room</code> name * * @param room - name of room * @return broadcast operations */ public BroadcastOperations getRoomOperations(String room) { Iterable<SocketIOClient> clients = namespacesHub.getRoomClients(room); return new BroadcastOperations(clients, configCopy.getStoreFactory()); }
/** * Get all namespaces * * @return namespaces collection */ public Collection<SocketIONamespace> getAllNamespaces() { return namespacesHub.getAllNamespaces(); }
public void removeNamespace(String name) { namespacesHub.remove(name); }
/** * Get all clients connected to default namespace * * @return clients collection */ public Collection<SocketIOClient> getAllClients() { return namespacesHub.get(Namespace.DEFAULT_NAME).getAllClients(); }
public SocketIOServer(Configuration configuration) { this.configuration = configuration; this.configCopy = new Configuration(configuration); namespacesHub = new NamespacesHub(configCopy); mainNamespace = addNamespace(Namespace.DEFAULT_NAME); }
public SocketIONamespace addNamespace(String name) { return namespacesHub.create(name); }
/** * Get client by uuid from default namespace * * @param uuid - id of client * @return client */ public SocketIOClient getClient(UUID uuid) { return namespacesHub.get(Namespace.DEFAULT_NAME).getClient(uuid); }
@Override public void onMessage(JoinLeaveMessage msg) { String name = msg.getRoom(); namespacesHub.get(msg.getNamespace()).join(name, msg.getSessionId()); log.debug("{} sessionId: {}", PubSubType.JOIN, msg.getSessionId()); } }, JoinLeaveMessage.class);
@Override public void onMessage(JoinLeaveMessage msg) { String name = msg.getRoom(); namespacesHub.get(msg.getNamespace()).leave(name, msg.getSessionId()); log.debug("{} sessionId: {}", PubSubType.LEAVE, msg.getSessionId()); } }, JoinLeaveMessage.class);
@Override public void onMessage(DispatchMessage msg) { String name = msg.getRoom(); namespacesHub.get(msg.getNamespace()).dispatch(name, msg.getPacket()); log.debug("{} packet: {}", PubSubType.DISPATCH, msg.getPacket()); } }, DispatchMessage.class);
public void connect(ClientHead client) { Namespace ns = namespacesHub.get(Namespace.DEFAULT_NAME); if (!client.getNamespaces().contains(ns)) { Packet packet = new Packet(PacketType.MESSAGE); packet.setSubType(PacketType.CONNECT); client.send(packet); configuration.getStoreFactory().pubSubStore().publish(PubSubType.CONNECT, new ConnectMessage(client.getSessionId())); SocketIOClient nsClient = client.addNamespaceClient(ns); ns.onConnect(nsClient); } }
return; Namespace ns = namespacesHub.get(packet.getNsp()); if (ns == null) { if (packet.getSubType() == PacketType.CONNECT) {
client.getBaseClient().schedulePingTimeout(); Namespace namespace = namespacesHub.get(packet.getNsp()); namespace.onPing(client); break; Namespace namespace = namespacesHub.get(packet.getNsp()); namespace.onConnect(client); Namespace namespace = namespacesHub.get(packet.getNsp()); List<Object> args = Collections.emptyList(); if (packet.getData() != null) {
public SocketIONamespace getNamespace(String name) { return namespacesHub.get(name); }