/** * Dispatches a <code>GraphEvent</code> to all registered listeners for which * the specified <code>Triple</code> matches the <code>FilterTriple</code>s * of the listeners. * * @param triple The Triple that was modified * @param type The type of modification */ protected void dispatchEvent(GraphEvent event) { synchronized(listenerConfigs) { Iterator<ListenerConfiguration> iter = listenerConfigs.iterator(); while (iter.hasNext()) { ListenerConfiguration config = iter.next(); GraphListener registeredListener = config.getListener(); if (registeredListener == null) { iter.remove(); continue; } if (config.getFilter().match(event.getTriple())) { delayedNotificator.sendEventToListener(registeredListener, event); } } } }