This package contains Java utility classes designed to help you write Java programs. The classes cover diverse programming areas, including: specialized collections, networking, stream-based I/O, class and resource loading, JAR files and resources, concurrent processing, distributed processing, security, XML parsing, handling configuration files, Swing GUI, and memory management. Some of these classes are relatively simple, whereas some are substantial; some introduce new APIs and functionality while others workaround problems found in standard Java APIs.
We used to develop these classes as needed for our specialized projects, such as rmix and h2o. Over time, we realized that these classes often have much more general applicability. Thus, we decided to organize them, document them, and make them available to the general public. Importantly, because of their origin, each one of the classes you find here solves some actual, real problem that we have encountered along the way in one of our projects.
This package is an open-source research project of Distributed Computing Laboratory, Dept. of Math and Computer Science, Emory University. The research is supported in part by U.S. DoE grant DE-FG02-02ER25537 and NSF grant ACI-0220183.