Matthew Johnson

Page Body

Java Libraries

These are a selection of libraries for Java which I have written because they are useful and not provided with normal Java. They are available for download here and are licensed under the expat licence. They all come with example applications using the libraries.

The ones I consider distribution-worthy are packaged up together. Several other classes are available separately below.

Unix Sockets Library

This is a collection of classes and native code to allow you to read and write Unix sockets in Java.

Debug Library

This is a comprehensive logging and debugging solution.

CGI Library

This is a collection of classes and native code to allow you to write CGI applications in Java.

I/O Library

This provides a few much needed extensions to the Java I/O subsystem. Firstly, there is a class which will connect and InputStream with an OutputStream and copy data between them.

Secondly there are two classes for inserting into an Input or OutputStream pipe a command line command, so that everything is piped through that command.

Thirdly there are a pair of classes for splitting streams in two. This can either be to two OuputStreams, or to an OutputStream and a file. Equivelent to the UNIX tool tee in UNIX pipes.


This class formats byte-arrays in hex and ascii for display.


Other Classes

Proxy Library

This is a lightweight HTTP proxy which allows you to inspect and manipulate the requests, responses and pages on the way through. Also includes a caching proxy.

D-Bus Library

The 1.5 Java bindings are now available from the D-Bus website. There are older, feature incomplete, Java 1.4 bindings still available here.

The 1.4 bindings can be downloaded here: libdbus-java-0.4.tar.gz

Documentation for the 1.4 bindings library can be found in the tarball (make doc) or online.

Cards Library

A small set of classes for representing cards and decks of cards in java.