in src/main/java/org/apache/sling/discovery/commons/providers/base/ViewStateManagerImpl.java [246:271]
private void enqueue(final TopologyEventListener da, final TopologyEvent event, boolean logInfo) {
logger.trace("enqueue: start: topologyEvent {}, to {}", event, da);
if (asyncEventSender==null) {
// this should never happen - sendTopologyEvent should only be called
// when activated
logger.warn("enqueue: asyncEventSender is null, cannot send event ({}, {})!", da, event);
return;
}
if (lastEventMap.get(da)==event.getType() && event.getType()==Type.TOPOLOGY_CHANGING) {
// don't sent TOPOLOGY_CHANGING twice
if (logInfo) {
logger.info("enqueue: listener already got TOPOLOGY_CHANGING: {}", da);
} else {
logger.debug("enqueue: listener already got TOPOLOGY_CHANGING: {}", da);
}
return;
}
if (logInfo) {
logger.info("enqueue: enqueuing topologyEvent {}, to {}", EventHelper.toShortString(event), da);
} else {
logger.debug("enqueue: enqueuing topologyEvent {}, to {}", event, da);
}
asyncEventSender.enqueue(da, event);
lastEventMap.put(da, event.getType());
logger.trace("enqueue: sending topologyEvent {}, to {}", event, da);
}