delegate = anEventMulticaster;
}
@Override
public void processEvent(ConfigEvent event) {
ConfigEvent filteredEvent = event;
//Filtering is as such that any type of event on an ElementProperty
//node is translated to ConfigUpdateEvent on the parent node.
//Which would be the same behaviour as the ElementProperty nodes
//single key was a key on the parent.
if (event.getNode().endsWith("/"+ADDITIONAL_PROPERTY_NODE)) {
String parent = event.getNode().substring(0,
event.getNode().length()-
(1+ADDITIONAL_PROPERTY_NODE.length()));
filteredEvent = new ConfigUpdateEvent(SimpleConfig.this, parent);
if (log.isLoggable(Level.FINEST)) {
log.log(Level.FINEST, "Translating ElementProperty Event "+
"from [type="+event.getType()+", node="+event.getNode()+"]"+
", to [type="+filteredEvent.getType()+", node="+filteredEvent.getNode()+"]");
}
}
delegate.processEvent(filteredEvent);
}