The EventSet annotation type is used to mark an interface that defines a group of events
associated with a Java Control. By convention, event interfaces are defined as inner
classes on the Java Control public interface. Each method defined within a
event interface indicates an event that can be delivered by the control.
Here is a simple example:
public interface MyControl extends org.apache.beehive.controls.api.Control
{
@EventSet
public interface MyEvents
{
public void anEvent();
}
...
}
This will declare an event interface named MyEvents that declares a single
event: anEvent
The declaration of an EventSet for a control also means that the associated Control
JavaBean will have listener registration/deregistration APIs. The name of these
APIs will be add/removeListener, and the argument will be an
listener instance that implements the EventSet interface.
The above example would result in the following APIs on MyControlBean
public class MyControlBean implements MyControl
{
...
public void addMyEventsListener(MyEvents listener) { ... }
public void removeMyEventsListener(MyEvents listener) { ... }
|