org.apache.commons.io.output
public abstract class ThresholdingOutputStream extends OutputStream
This class overrides all OutputStream
methods. However, these
overrides ultimately call the corresponding methods in the underlying output
stream implementation.
NOTE: This implementation may trigger the event before the threshold is actually reached, since it triggers when a pending write operation would cause the threshold to be exceeded.
Version: $Id: ThresholdingOutputStream.java 540714 2007-05-22 19:39:44Z niallp $
Field Summary | |
---|---|
int | threshold
The threshold at which the event will be triggered. |
boolean | thresholdExceeded
Whether or not the configured threshold has been exceeded. |
long | written
The number of bytes written to the output stream. |
Constructor Summary | |
---|---|
ThresholdingOutputStream(int threshold)
Constructs an instance of this class which will trigger an event at the
specified threshold.
|
Method Summary | |
---|---|
protected void | checkThreshold(int count)
Checks to see if writing the specified number of bytes would cause the
configured threshold to be exceeded. |
void | close()
Closes this output stream and releases any system resources associated
with this stream.
|
void | flush()
Flushes this output stream and forces any buffered output bytes to be
written out.
|
long | getByteCount()
Returns the number of bytes that have been written to this output stream.
|
protected abstract OutputStream | getStream()
Returns the underlying output stream, to which the corresponding
OutputStream methods in this class will ultimately delegate.
|
int | getThreshold()
Returns the threshold, in bytes, at which an event will be triggered.
|
boolean | isThresholdExceeded()
Determines whether or not the configured threshold has been exceeded for
this output stream.
|
protected void | resetByteCount()
Resets the byteCount to zero. |
protected abstract void | thresholdReached()
Indicates that the configured threshold has been reached, and that a
subclass should take whatever action necessary on this event. |
void | write(int b)
Writes the specified byte to this output stream.
|
void | write(byte[] b)
Writes b.length bytes from the specified byte array to this
output stream.
|
void | write(byte[] b, int off, int len)
Writes len bytes from the specified byte array starting at
offset off to this output stream.
|
Parameters: threshold The number of bytes at which to trigger an event.
Parameters: count The number of bytes about to be written to the underlying output stream.
Throws: IOException if an error occurs.
Throws: IOException if an error occurs.
Throws: IOException if an error occurs.
Returns: The number of bytes written.
OutputStream
methods in this class will ultimately delegate.
Returns: The underlying output stream.
Throws: IOException if an error occurs.
Returns: The threshold point, in bytes.
Returns: true
if the threshold has been reached;
false
otherwise.
Throws: IOException if an error occurs.
Parameters: b The byte to be written.
Throws: IOException if an error occurs.
b.length
bytes from the specified byte array to this
output stream.
Parameters: b The array of bytes to be written.
Throws: IOException if an error occurs.
len
bytes from the specified byte array starting at
offset off
to this output stream.
Parameters: b The byte array from which the data will be written. off The start offset in the byte array. len The number of bytes to write.
Throws: IOException if an error occurs.