|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||
java.lang.Objectjava.io.OutputStream
org.apache.commons.fileupload.ThresholdingOutputStream
指定されたバイト数のデータが書き込まれた時にイベントを発生させる出力ストリームです。 このイベントは例えば、(データが)最大値に達した場合に例外を投げる場合や、 閾値に達して、使用するストリームを切り替える場合に使用されます。
このクラスは OutputStream のすべてのメソッドをオーバーライドしています。
しかし、これらのオーバーライドは最終的には内部の出力ストリーム実装の対応するメソッドを呼び出します。
注: このクラスの実装では、保留中の書き出し操作で閾値を超える場合もイベントが発生するので、 実際に閾値に達する前にイベントが発生する可能性があります。
| フィールドの概要 | |
private int |
threshold
イベントが発生する閾値。 |
private boolean |
thresholdExceeded
設定された閾値を超えたかどうか。 |
private long |
written
出力ストリームに書き込むバイト数。 |
| コンストラクタの概要 | |
ThresholdingOutputStream(int threshold)
指定した閾値でイベントを発生させるように、このクラスのインスタンスを生成します。 |
|
| メソッドの概要 | |
protected void |
checkThreshold(int count)
指定したバイト数だけ書き出した場合に閾値を超えるかどうかをチェックします。 |
void |
close()
この出力ストリームをクローズし、このストリームに関連しているすべてのシステムリソースを開放します。 |
void |
flush()
この出力ストリームをフラッシュし、バッファしている出力バイト値すべてを強制的に書き出します。 |
long |
getByteCount()
この出力ストリームに書き出したバイト数を返します。 |
protected abstract OutputStream |
getStream()
このクラスが OutputStream から継承している各メソッドの最終的な委譲先となる、
内部の出力ストリームを返します。
|
int |
getThreshold()
イベントが発生する閾値をバイト数で返します。 |
boolean |
isThresholdExceeded()
この出力ストリームが設定された閾値に達しているかどうかを判別します。 |
protected abstract void |
thresholdReached()
指定された閾値に達し、サブクラスがこのイベントに対して必要な処理をすべて行なうべきことを示します。 |
void |
write(byte[] b)
指定したバイト配列の長さ分のバイト値をこの出力ストリームに書き出します。 |
void |
write(byte[] b,
int off,
int len)
指定されたバイト配列内の off で指定された位置から
len で指定された長さ分のバイト値をこの出力ストリームに書き出します。
|
void |
write(int b)
指定したバイト値をこの出力ストリームに書き出します。 |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
private int threshold
private long written
private boolean thresholdExceeded
| コンストラクタの詳細 |
public ThresholdingOutputStream(int threshold)
threshold - イベントが発生するバイト数。
| メソッドの詳細 |
public void write(int b)
throws IOException
b - 書き出し対象のバイト値。
IOException - エラーが発生した場合。
public void write(byte[] b)
throws IOException
b - 書き出されるバイト配列。
IOException - エラーが発生した場合。
public void write(byte[] b,
int off,
int len)
throws IOException
off で指定された位置から
len で指定された長さ分のバイト値をこの出力ストリームに書き出します。
b - データの書き出されるバイト配列。
off - バイト配列内の書き出し開始位置。
len - 書き出されるバイト数。
IOException - エラーが発生した場合。
public void flush()
throws IOException
IOException - エラーが発生した場合。
public void close()
throws IOException
IOException - エラーが発生した場合。
public int getThreshold()
public long getByteCount()
public boolean isThresholdExceeded()
true 既に閾値に達している場合;
false それ以外の場合。
protected void checkThreshold(int count)
throws IOException
count - 内部の出力ストリームに対して書き出そうとするバイト数。
IOException - エラーが発生した場合。
protected abstract OutputStream getStream()
throws IOException
OutputStream から継承している各メソッドの最終的な委譲先となる、
内部の出力ストリームを返します。
IOException - エラーが発生した場合。
protected abstract void thresholdReached()
throws IOException
IOException - エラーが発生した場合。
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||