public abstract class ThresholdingOutputStream
extends java.io.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.
| Constructor and Description | 
|---|
| ThresholdingOutputStream(int threshold)Constructs an instance of this class which will trigger an event at the
specified threshold. | 
| Modifier and Type | Method and Description | 
|---|---|
| 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. | 
| protected abstract java.io.OutputStream | getStream()Returns the underlying output stream, to which the corresponding
 OutputStreammethods in this class will ultimately delegate. | 
| boolean | isThresholdExceeded()Determines whether or not the configured threshold has been exceeded for
this output stream. | 
| 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(byte[] b)Writes  b.lengthbytes from the specified byte array to this
output stream. | 
| void | write(byte[] b,
int off,
int len)Writes  lenbytes from the specified byte array starting at
offsetoffto this output stream. | 
| void | write(int b)Writes the specified byte to this output stream. | 
public ThresholdingOutputStream(int threshold)
threshold - The number of bytes at which to trigger an event.public void write(int b)
           throws java.io.IOException
write in class java.io.OutputStreamb - The byte to be written.java.io.IOException - if an error occurs.public void write(byte[] b)
           throws java.io.IOException
b.length bytes from the specified byte array to this
output stream.write in class java.io.OutputStreamb - The array of bytes to be written.java.io.IOException - if an error occurs.public void write(byte[] b,
         int off,
         int len)
           throws java.io.IOException
len bytes from the specified byte array starting at
offset off to this output stream.write in class java.io.OutputStreamb - 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.java.io.IOException - if an error occurs.public void flush()
           throws java.io.IOException
flush in interface java.io.Flushableflush in class java.io.OutputStreamjava.io.IOException - if an error occurs.public void close()
           throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class java.io.OutputStreamjava.io.IOException - if an error occurs.public boolean isThresholdExceeded()
true if the threshold has been reached;
false otherwise.protected void checkThreshold(int count)
                       throws java.io.IOException
count - The number of bytes about to be written to the underlying
output stream.java.io.IOException - if an error occurs.protected abstract java.io.OutputStream getStream()
                                           throws java.io.IOException
OutputStream methods in this class will ultimately delegate.java.io.IOException - if an error occurs.protected abstract void thresholdReached()
                                  throws java.io.IOException
java.io.IOException - if an error occurs.Copyright © 2000-2015 Apache Software Foundation. All Rights Reserved.