Barracuda: Multiple Event Listeners?

Kirk Daries <[email protected]>
Newsgroups gmane.comp.java.enhydra.barracuda.general
Message-ID <D09B591872D1D611AF2B0010B5A1AAD02E39B7@WCSMAIL>
Hi,

I've run into a small problem and hope the barracuda event maestro's can
provide some assitance.

Here's a short event model.

-->DoLogin.event
  |
  |
  --> SuccessfulLogin.event
        |
        |
        -->AfterLogin.event


Basically.... when ever a user successfully logs into my system, the DoLogin
event redirects to the 'AfterLogin' event.
The SuccessfulLogin event, provides a 'hook' that enables any modules to be
notified via listeners that a user has just logged in.

In this case I've attached 2 listeners to the 'SuccessfulLogin' event.
Now... I've run into a problem during the event dispatching.

Here's some debug output.


 <<debug output.txt>> 

Notice that barracuda lists 2 event interests in event 'SuccessfulLogin'
namely,
sitawc.eworks.calldesk.eventListeners.request.Login_Listener      and
sitawc.eworks.budgets.eventListeners.request.Login_Listener.

To make things simplier... I'll just refer to them as calldesk and budgets
resp.

Now... 
the CallDesk listener is processed correctly.
But when it is time to execute the listener for the 'Budgets' module.... I
get the output...

>>Got Next
factory:sitawc.eworks.budgets.eventListeners.request.Login_Listener@53f67e
>>Skipping notification because event is already handled
>>Handled:true

Urrrm.....How do I ensure.. that both listeners are processed?

Thanx
KD
debug output.txt (text/plain, 2.5 KB)
16915 [Thread-17] INFO  org.enhydra.barracuda.core.event.DefaultEventBroker  - Getting listeners for Class:class sitawc.barraframework.events.request.privateEvent.LoginScreen.SuccessfulLogin
16915 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Checking for generic listeners:[sitawc.eworks.calldesk.eventListeners.request.Login_Listener@4e280c, sitawc.eworks.budgets.eventListeners.request.Login_Listener@53f67e]
16915 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Found 2
16915 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Dispatching to listeners...
16915 [Thread-17] DEBUG org.enhydra.barracuda.core.util.data.DefaultStateMap  - Setting queue state: [key]:org.enhydra.barracuda.core.event.EventContext.BaseEvent [val]:sitawc.barraframework.events.request.privateEvent.LoginScreen.SuccessfulLogin@52c6b4
16915 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Got Next factory:sitawc.eworks.calldesk.eventListeners.request.Login_Listener@4e280c
16915 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Notifying listener:sitawc.eworks.calldesk.eventListeners.request.Login_Listener$Login_Handler@2c5f13
16915 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultBaseEventListener  - Entering Login_Listener$Login_Handler
.
.
. LISTENER DEBUG CODE HERE
.
.
17616 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultBaseEventListener  - Exiting Login_Listener$Login_Handler
17616 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Got Next factory:sitawc.eworks.budgets.eventListeners.request.Login_Listener@53f67e
17626 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Skipping notification because event is already handled
17626 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Handled:true
17626 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Chain element 8: sitawc.barraframework.events.request.privateEvent.LoginScreen.AfterLogin@50d124
17626 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Looking for event listeners...
17626 [Thread-17] DEBUG org.enhydra.barracuda.core.event.DefaultEventDispatcher  - Checking for specific listeners:null
17626 [Thread-17] INFO  org.enhydra.barracuda.core.event.DefaultEventBroker  - Getting listeners for Class:class sitawc.barraframework.events.request.privateEvent.LoginScreen.AfterLogin
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.