Browse Source

removeAllListeners method added. #399

master
Nikita 9 years ago
parent
commit
c90a19c07c
  1. 7
      src/main/java/com/corundumstudio/socketio/SocketIOServer.java
  2. 2
      src/main/java/com/corundumstudio/socketio/listener/ClientListeners.java
  3. 13
      src/main/java/com/corundumstudio/socketio/namespace/Namespace.java

7
src/main/java/com/corundumstudio/socketio/SocketIOServer.java

@ -231,6 +231,11 @@ public class SocketIOServer implements ClientListeners {
mainNamespace.addEventListener(eventName, eventClass, listener); mainNamespace.addEventListener(eventName, eventClass, listener);
} }
@Override
public void removeAllListeners(String eventName) {
mainNamespace.removeAllListeners(eventName);
}
@Override @Override
public void addDisconnectListener(DisconnectListener listener) { public void addDisconnectListener(DisconnectListener listener) {
mainNamespace.addDisconnectListener(listener); mainNamespace.addDisconnectListener(listener);
@ -245,7 +250,7 @@ public class SocketIOServer implements ClientListeners {
public void addListeners(Object listeners) { public void addListeners(Object listeners) {
mainNamespace.addListeners(listeners); mainNamespace.addListeners(listeners);
} }
@Override @Override
public void addListeners(Object listeners, Class<?> listenersClass) { public void addListeners(Object listeners, Class<?> listenersClass) {
mainNamespace.addListeners(listeners, listenersClass); mainNamespace.addListeners(listeners, listenersClass);

2
src/main/java/com/corundumstudio/socketio/listener/ClientListeners.java

@ -29,4 +29,6 @@ public interface ClientListeners {
void addListeners(Object listeners, Class<?> listenersClass); void addListeners(Object listeners, Class<?> listenersClass);
void removeAllListeners(String eventName);
} }

13
src/main/java/com/corundumstudio/socketio/namespace/Namespace.java

@ -15,8 +15,6 @@
*/ */
package com.corundumstudio.socketio.namespace; package com.corundumstudio.socketio.namespace;
import io.netty.util.internal.PlatformDependent;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.Collections; import java.util.Collections;
@ -45,10 +43,11 @@ import com.corundumstudio.socketio.protocol.JsonSupport;
import com.corundumstudio.socketio.protocol.Packet; import com.corundumstudio.socketio.protocol.Packet;
import com.corundumstudio.socketio.store.StoreFactory; import com.corundumstudio.socketio.store.StoreFactory;
import com.corundumstudio.socketio.store.pubsub.JoinLeaveMessage; import com.corundumstudio.socketio.store.pubsub.JoinLeaveMessage;
import com.corundumstudio.socketio.store.pubsub.PubSubStore;
import com.corundumstudio.socketio.store.pubsub.PubSubType; import com.corundumstudio.socketio.store.pubsub.PubSubType;
import com.corundumstudio.socketio.transport.NamespaceClient; import com.corundumstudio.socketio.transport.NamespaceClient;
import io.netty.util.internal.PlatformDependent;
/** /**
* Hub object for all clients in one namespace. * Hub object for all clients in one namespace.
* Namespace shares by different namespace-clients. * Namespace shares by different namespace-clients.
@ -106,6 +105,14 @@ public class Namespace implements SocketIONamespace {
entry.addListener(listener); entry.addListener(listener);
jsonSupport.addEventMapping(name, eventName, eventClass); jsonSupport.addEventMapping(name, eventName, eventClass);
} }
@Override
public void removeAllListeners(String eventName) {
EventEntry<?> entry = eventListeners.remove(eventName);
if (entry != null) {
jsonSupport.removeEventMapping(name, eventName);
}
}
@Override @Override
@SuppressWarnings({"unchecked", "rawtypes"}) @SuppressWarnings({"unchecked", "rawtypes"})

Loading…
Cancel
Save