Add more versatility to your existing Java framework. The same framework supports file access, network access, character conversion, compression, encryption and so forth. This article presents a framework that lets an application efficiently read data from a source that only supports writing data to an output stream.