GCache is a Python module that provides a generic cache class useful for speeding up any application where objects are referenced by keys. It uses object metadata to optimize hit-rates and freshness for fetches, and uses a "write-through" mechanism for writes and deletes. It can use "if-modified-since" fetches or rsync delta updates to refresh stale cached objects. GSource classes are provided for generating useful metadata from common sources (os.stat calls and MIME headers). A simple example urlCache is implemented that supports HTTP 1.1 (rfc2616) cache-control and expire headers to ensure freshness. Also included is an rfc2616 package useful for parsing HTTP 1.1 headers, and a PCache package implementing a persistant cache using a Python shelve.
gnu.hylafax implements the HylaFAX client network protocol in pure Java. With it, Java applications can access a HylaFAX server in various ways, such as queueing FAX jobs, checking server/job status, and retrieving FAX files. The gnu.hylafax distribution also includes gnu.inet.ftp, a pure Java implementation of FTP client protocol (RFC0959).
JFreshmeat-NNTP is the first released mini-app to use an NNTP class being developed for a Java-only NNTP-based newsreader. It connects to freshmeat's NNTP server, and retrieves the headers, displaying them in the top pane of a two-pane window. Double-clicking on a particular announcement will retrieve the text of that announcement and display it in the bottom pane. The initial class is very short, calling a general purpose newsgroup monitor class. It can be adapted to monitor any server/group very easily. Future plans for the JFreshmeat-NNTP code include SOCKS support, saving article data, persistant storage of articles, UI improvements, timed polling for monitoring updates. It may also be rolled into the general purpose newsreader as a side-feature eventually.