Java源码示例:io.gravitee.common.event.EventListener

示例1
public <T extends Enum> void subscribeForEvents(EventListener<T, ?> eventListener, T... events) {
    for( T event : events) {
        addEventListener(eventListener, (Class<T>) event.getClass(), Arrays.asList(events), null);
    }
}
 
示例2
public <T extends Enum> void subscribeForEvents(EventListener<T, ?> eventListener, Class<T> events) {
    addEventListener(eventListener, events, EnumSet.allOf(events), null);
}
 
示例3
private <T extends Enum> void addEventListener(EventListener<T, ?> eventListener, Class<T> enumClass, Collection<T> events, String domain) {
    LOGGER.info("Register new listener {} for event type {}", eventListener.getClass().getSimpleName(), enumClass);

    List<EventListenerWrapper> listeners = getEventListeners(enumClass, domain);
    listeners.add(new EventListenerWrapper(eventListener, events));
}
 
示例4
@Override
public <T extends Enum> void subscribeForEvents(EventListener<T, ?> eventListener, Class<T> events, String domain) {
    addEventListener(eventListener, events, EnumSet.allOf(events), domain);
}
 
示例5
@Override
public <T extends Enum> void unsubscribeForEvents(EventListener<T, ?> eventListener, Class<T> events, String domain) {
    this.listenersMap.remove(new ComparableEventType(events, domain));
}
 
示例6
public EventListenerWrapper(EventListener<T, ?> eventListener, Collection<T> events) {
    this.eventListener = eventListener;
    this.events = new HashSet(events);
}
 
示例7
public EventListener<T, ?> eventListener() {
    return eventListener;
}
 
示例8
<T extends Enum> void subscribeForEvents(EventListener<T, ?> eventListener, Class<T> events, String domain); 
示例9
<T extends Enum> void unsubscribeForEvents(EventListener<T, ?> eventListener, Class<T> events, String domain);