public void reportChanges()

in src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObservationReporter.java [197:222]


    public void reportChanges(
            final ObserverConfiguration config, final Iterable<ResourceChange> changes, final boolean distribute) {
        if (config != null && config instanceof BasicObserverConfiguration) {
            final BasicObserverConfiguration observerConfig = (BasicObserverConfiguration) config;

            ResourceChangeListenerInfo previousInfo = null;
            List<ResourceChange> filteredChanges = null;
            for (final ResourceChangeListenerInfo info : observerConfig.getListeners()) {
                if (previousInfo == null || !equals(previousInfo, info)) {
                    filteredChanges = filterChanges(changes, info);
                    previousInfo = info;
                }
                if (!filteredChanges.isEmpty()) {
                    final ResourceChangeListener listener = info.getListener();
                    if (listener != null) {
                        listener.onChange(filteredChanges);
                    }
                }
            }
            // TODO implement distribute
            if (distribute) {
                logger.error(
                        "Distrubte flag is send for observation events, however distribute is currently not implemented!");
            }
        }
    }