public interface RandomBuilder
断片化されたデータを構築するためのインターフェースです。
addBlock または insertBlockBefore により新たな断片を追加します。 断片は追加順に0,1,2,3...というIDが振られます。 IDは断片の挿入または断片にデータを追加する際の識別のために使うことができます。
インスタンスが Sequential インターフェースを実装している場合は、 もともと順次的なデータであり、insertBlockBefore を使う必要がないことを示します。 この場合、addBlock を呼び出さずに Sequential インターフェースのメソッドを呼ぶことで効率良くデータを構築することができます。
修飾子とタイプ | インタフェースと説明 |
---|---|
static interface |
RandomBuilder.PositionInfo
断片の位置情報です。
|
修飾子とタイプ | メソッドと説明 |
---|---|
void |
addBlock()
断片を末尾に追加します。
|
void |
closeBlock(int id)
断片への書き込みを終了します。
|
void |
dispose()
構築のためのリソースを破棄します。
|
void |
finish()
データの構築を完了します。
|
RandomBuilder.PositionInfo |
getPositionInfo()
構築中の各断片の先頭位置を得るためのオブジェクトを返します。
|
void |
insertBlockBefore(int anchorId)
指定した断片の直前に断片を挿入します。
|
boolean |
supportsPositionInfo()
位置情報をサポートしているかどうかを返します。
|
void |
write(int id,
byte[] b,
int off,
int len)
断片にデータを追加します。
|
void addBlock() throws IOException
IOException
void insertBlockBefore(int anchorId) throws IOException
anchorId
- 断片のID。IOException
void write(int id, byte[] b, int off, int len) throws IOException
id
- 断片のID。b
- バイト列。off
- バイト列中のデータの開始位置。len
- バイト列中のデータの長さ。IOException
boolean supportsPositionInfo()
RandomBuilder.PositionInfo getPositionInfo() throws UnsupportedOperationException
UnsupportedOperationException
void closeBlock(int id) throws IOException
id
- 断片のID。IOException
void finish() throws IOException
IOException
void dispose()
構築のためのリソースを破棄します。
RandomBuilder は処理のために一時ファイルなどのリソースを使用するため、 不要となったオブジェクトに対しては必ずdispose()を呼び出してください。
Copyright © 2024 座間ソフト. All rights reserved.