@Retention(value=RUNTIME)
@Target(value=TYPE)
public @interface EventClass
Marker annotation which identifies "Event" Classes.
Event Classes should be static inner classes that contain no methods other than the constructor, just data values.
The constructor for an Event Class should contain no code other than straightforward initialization of all member variables from passed in constructor arguments (in the same order as the methdos are declared).