Proposal for Events Package

(0) Rationale

The Java JDK provides a design framework for events to observe change. There is relatively little support for classes to actually fire these events. This is most noticable in the Java Collections Framework where there is no standard mechanism to listen for changes to a collection.

A Commons package to support event classes as an extension to the JDK would be a useful addition to many projects.

(1) Scope of the Package

The package will create and maintain a set of classes that fire events, and a set of classes that handle and manage the events. These will be designed to work closely with existing JDK APIs and be distributed under the ASF license.

(1.5) Interaction With Other Packages

Events relies on commons-collections and the standard JDK 1.2 (or later) APIs for production deployment. It utilizes the JUnit unit testing framework for developing and executing unit tests, but this is of interest only to developers of the component.

No external configuration files are utilized.

(2) Initial Source of the Package

The initial codebase was originally located in the commons-collections project. It has been separated to enable it to grow independently.

The proposed package name for the new component is org.apache.commons.events.

(3) Required Jakarta-Commons Resources

(4) Initial Committers