private void enqueue()

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);
    }