[
https://issues.apache.org/jira/browse/WICKET-3274?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Martin Grigorov resolved WICKET-3274.
-------------------------------------
Resolution: Later
Closing the ticket.
It seems the current Event system works well for now. There are no complaints
in Jira and mailing lists
> Application-Scoped EventBus
> ---------------------------
>
> Key: WICKET-3274
> URL: https://issues.apache.org/jira/browse/WICKET-3274
> Project: Wicket
> Issue Type: New Feature
> Components: wicket
> Affects Versions: 1.5-M3
> Reporter: James Carman
>
> It would be nice if Wicket had an application-scoped "event bus" that users
> could plug into to receive event notifications. Right now, there are
> multiple points where you can subscribe to events (and no "global" place to
> subscribe to AjaxRequestTarget.IListener events). Wouldn't it be better if
> you could just do:
> Application.get().getEventBus().subscribe(IRequestCycleListener.class,
> myListener);
> or perhaps:
> Application.get().getEventBus().getChannel(IRequestCycleListener.class).subscribe(myListener);
> To fire events, you would do something like:
> Application.get().getEventBus().publish(IRequestCycleListener.class).onBeginRequest(requestCycle);
> or
> Application.get().getEventBus().getChannel(IRequestCycleListener.class).publish().onBeginRequest(requestCycle);
> Or course, this approach uses proxies (the publish methods return proxies
> which let you fire the events to all listeners) and I know they are
> considered somewhat taboo, but I think this is a good use of them and I
> really don't see how debugging this could be that difficult really. It would
> only need to use JDK proxies, because we'd be dealing with listener
> interfaces only. The benefit of this is that there's just one way to
> publish/subscribe events in Wicket and it makes it easier for folks to "plug
> in." They don't have to override a factory method somewhere to make sure
> they add their listener or anything. They just ask for the bus and subscribe
> by listener interface.
> Now, I like the idea of subscribing to a "channel" by means of the listener
> interface, but I'm open to suggestions if other folks don't really like that
> idea. I like the type-safety of it.
> I have some code, but I'm waiting for more discussion here before I submit a
> patch. I'd have to get rid of all of the listener lists that are lying
> around and start having the events published through the bus.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira