I have some doubts about the listeners.
In my case I am registering per session (it works only per session, ok) the
listener, like this:
"...
eSession.getWorkspace().getObservationManager().addEventListener(
new
ListenerNodeAddEscribaBase(eSession.getSession()),
Event.NODE_ADDED,
"/",
true,
null,
new String[] {"esc:base"},
false
);
logger.info("checking registered Listeners");
EventListenerIterator eli =
eSession.getWorkspace().getObservationManager().getRegisteredEventListeners();
while(eli.hasNext()){
eli.nextEventListener();
logger.info("has listener");
}
..."
So, when I save the session, the class ListenerNodeAddEscBase() is called.
But, the node I create is kind of type "esc:base" and it is inside the
iterator, and its child (autocreated) that is kind of type "nt:hierarchyNode"
also is inside the iterator, why? There are some other autocreated nodes under
the child of node I created that there is not inside the iterator...I want only
to get the nodes of kind of type "esc:base", how to do it?
Another doubt, the absPath is relative to the root of the workspace, or it
means the root of the parent node that generates the event? I configured the
isDeep as "false" and it didn't fired anymore.
Is the event Listener stable? Because it seens some times not firing the
listener class.
Glad by the help I hope get, thanks.
Hsp.