See: Description
Interface | Description |
---|---|
Pipe |
Pipe.read(byte[], int, int) produces exactly the bytes that were previously written . |
PipeUtil.Drainer |
Drains 'something' by reading data from an input stream.
|
PipeUtil.Filler |
Fills 'something' by writing data to an output stream.
|
PipeUtil.FillerAndDrainer | |
PipeUtil.InputOutputStreams |
A tuple of one
InputStream and one OutputStream . |
Class | Description | ||
---|---|---|---|
AbstractPipe |
Basic implementation of a pipe.
|
||
AbstractRingBuffer |
Abstract implementation of a
Pipe by a "backing store" of bytes with fixed size (the "capacity"). |
||
PipeFactory |
The methods of this class create the various
Pipe implementations:
PipeFactory.byteArrayRingBuffer(int)
A pipe which is backed by an (internal) byte array
PipeFactory.byteBufferRingBuffer(ByteBuffer)
A pipe which is backed by a ByteBuffer
PipeFactory.elasticPipe()
A Pipe that implements infinite capacity and good performance by first allocating a small in-memory ring buffer,
then, if that fills up, a larger one that uses a memory-mapped file, and eventually one based on a random access
file with practically unlimited size
PipeFactory.elasticPipe(de.unkrig.commons.lang.protocol.ProducerWhichThrows)
A Pipe that implements infinite capacity by allocating delegate pipes as needed (and closing them when they are
no longer needed)
PipeFactory.mappedFileRingBuffer(java.io.File, int, boolean)
A pipe which is backed by a memory-mapped file , which will be
unmapped and (optionally) deleted when the pipe is closed
PipeFactory.mappedTempFileRingBuffer(int)
A pipe which is backed by a memory-mapped temporary file, which
will be unmapped and deleted when the pipe is closed
PipeFactory.randomAccessFileRingBuffer(java.io.File, long, boolean)
A pipe which is backed by a RandomAccessFile , which will (optionally) be deleted when the pipe is
closed
PipeFactory.randomAccessTempFileRingBuffer(long)
A pipe which is backed by a temporary RandomAccessFile , which is deleted when the pipe is closed
The characteristics of these implementations are as follows:
Package de.unkrig.commons.io.pipe DescriptionA pipe is an object to which data can be written and from which data can be read; the data read equals the data
previously written.
There are two typical use cases for a pipe:
The
The methods of the Copyright © 2018 Arno Unkrig. All rights reserved. |