Skip to content

Technical overview

fotakis edited this page Jul 13, 2011 · 11 revisions

A general overview of the components that make up STARDOM.

EventBus

Communication between the "Connector" component and the "Constructor" happens through an Event Bus, in the "Events" component.

The reason for introducing an internal event bus, is that we wanted to decouple the actions that take place when an event from an external system, such as a commit message, or mailing list comment occurs.

This is a graphical representation of how this is setup.

The "Events" component is a thin wrapper around org.bushe.eventbus, a well know library that provides the platform for event handling.

For each of the information sources, an event of type "Event" is thrown (Take a look at the subclasses of the Event class).

In order to register for an event and act upon it, you need to do 2 things. First annotate your class with the @EventHandler annotation, to let the system know that you are handling event. Second subscribe for specific events using the @EventSubscriber annotation (Read up on org.bushe.eventbus).

After you have done this, make sure to initialize your event handling bean in ws-servlet.xml, so that it is processed and added to the event handlers. ( The class responsible for this is this one)

Clone this wiki locally