JanusEvents objects are sent or fired by a JanusEventSender object. A JanusListener object recognizes and handles specific JanusEvent objects. By adding a Janis listener to a component, that component can respond to corresponding Janis events.

Each subclass of JanusEvent or XXXXEvent has a corresponding JanusListener or XXXXListener object, where XXXX denotes the event. For example, a DataEvent is recognized by a DataListener. Each class containing a JanusListener object also has a corresponding addXXXXListener method, such as addDataListener. After a component is created, invoking the method addXXXXListener associates the listener with the component. Thus the component can recognize and respond to certain events. The method removeXXXListener removes the corresponding listener from the component.