Package jp.gr.java_conf.dangan.io

Interface Summary

Disconnectable 接続を解除できるストリームのための インターフェイス。
このインターフェイスを実装するストリームは close() は disconnect() を呼ぶべきである。
 -- revision history --
 $Log: Disconnectable.java,v $
 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [maintenance]
     タブ廃止
     ライセンス文の修正
     ソース整備

 

Class Summary

BitDataBrokenException EndOfStream に達してしまったため要求されたビット数の データを得られなかった場合に投げられる例外。
jp.gr.java_conf.dangan.io.BitInputStream 用であるため、 保持しておける データは 32ビットまでとなっている点に 注意すること。
NotEnoughBitsException と違い、こちらの例外を投げる 場合には 実際に読み込み動作を行ってしまっているため 読み込み位置は例外を投げる前の時点から変化してしまっ ている点に注意すること。
 -- revision history --
 $Log: BitDataBrokenException.java,v $
 Revision 1.1  2002/12/07 00:00:00  dangan
 [maintenance]
     ソース整備

 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [maintenance]
     タブ廃止
     ライセンス文の修正

 
BitInputStream ビット入力のためのユーティリティクラス。
 -- revision history --
 $Log: BitInputStream.java,v $
 Revision 1.5  2002/12/07 00:00:00  dangan
 [maintenance]
     ソース整備

 Revision 1.4  2002/11/15 00:00:00  dangan
 [improvement]
     prefetchBits() が  32bit の読み込みを保証するように修正
 [change]
     メソッド名の変更
     prefetchBit     -> peekBit
     prefetchBoolean -> peekBoolean
     prefetchBits    -> peekBits

 Revision 1.3  2002/11/02 00:00:00  dangan
 [bug fix]
     available() availableBits() で
     ブロックせずに読み込める量よりも大きい値を返していた。

 Revision 1.2  2002/09/05 00:00:00  dangan
 [change]
     EndOfStream に達した後の read( new byte[0] ) や 
     read( byte[] buf, int off, 0 ) の戻り値を
     InputStream と同じく 0 になるようにした

 Revision 1.1  2002/09/04 00:00:00  dangan
 [bug fix]
     skip( len ) と skipBits( len ) で len が 0 未満のとき
     正しく処理できていなかった。

 Revision 1.0  2002/09/03 00:00:00  dangan
 add to version control
 [bug fix]
     mark() で 接続された in に渡す readLimit の計算が甘かったため、
     要求された readLimit に達する前にマーク位置が破棄される事があった。
     EndOfStream に達した後の skip() および skip( 0 ) が -1 を返していた。
 [maintenance]
     タブ廃止
     ライセンス文の修正


 
BitOutputStream 接続された出力ストリームにビットデータを出力するための 出力ストリームクラス。
 -- revision history --
 $Log: BitOutputStream.java,v $
 Revision 1.1  2002/12/05 00:00:00  dangan
 [maintenance]
     ソース整備

 Revision 1.0  2002/09/11 00:00:00  dangan
 add to version control
 [change]
     close() 後の write系メソッドと flush() で
     例外を投げるように修正
 [maintenance]
     タブ廃止
     ライセンス文の修正

 
Bits ビット処理のためのユーティリティメソッド群。
 -- revision history --
 $Log: Bits.java,v $
 Revision 1.0  2002/12/05 00:00:00  dangan
 first edition
 add to version control

 
CachedInputStream キャッシュを使用して高速化するための入力ストリーム。
BufferedInputStream とは read系メソッドが synchronized されていないため、同期処理によるロスがない、mark/reset は キャッシュ内の読み込み位置の移動で行えるときのみサポートであり、 それ以上は接続された入力ストリームの性能による、等の違いがある。
 -- revision history --
 $Log: CachedInputStream.java,v $
 Revision 1.3  2002/12/05 00:00:00  dangan
 [maintenance]
     ソース整備

 Revision 1.2  2002/11/02 00:00:00  dangan
 [bug fix]
     available() でブロックせずに読み込める量よりも大きい値を返していた。

 Revision 1.1  2002/09/05 00:00:00  dangan
 [change]
     EndOfStream に達した後の read( new byte[0] ) や 
     read( byte[] buf, int off, 0 ) の戻り値を
     InputStream と同じく 0 になるようにした。

 Revision 1.0  2002/09/05 00:00:00  dangan
 add to version control
 [bug fix]
     mark() で 接続された in に渡す readLimit の計算が甘かったため、
     要求された readLimit に達する前にマーク位置が破棄される事があった。
     read( buf, off, len ) 内の System.arraycopy の呼び出しで 
     dst と src を逆にしていた。
 [change]
     EndOfStream に達した後の read( new byte[0] ) や
     read( buf, off,0 )  が -1 を返すように修正。
 [maintenance]
     タブ廃止
     ライセンス文の修正

 
DisconnectableInputStream データを供給する入力ストリームと データを処理する 入力ストリームとの接続を解除するためのユーティリティクラス。
java.io.BufferedInputStream 等のバッファリングするストリーム との接続を解除する場合は jp.gr.java_conf.dangan.io.LimitedInputStream 等を使用して 接続解除位置を過ぎたバッファリングを抑止する必要がある。
 -- revision history --
 $Log: DisconnectableInputStream.java,v $
 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [maintenance]
     タブ廃止
     ライセンス文の修正
     ソース整備

 
DisconnectableOutputStream データを処理して出力する出力ストリームと データをデバイスに出力するストリームとの 接続を解除するためのユーティリティクラス。
 -- revision history --
 $Log: DisconnectableOutputStream.java,v $
 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [maintenance]
     タブ廃止
     ライセンス文の修正
     ソース整備
 
 
GrowthByteBuffer 自動的に伸張するバッファ。
RandomAccessFile の メモリ版として使用する。 ただし、あまり巨大なデータを取り扱うのには向かない。 スレッドセーフではない。 jdk1.4 以降の ByteBufferとは互換性が無い。
 -- revision history --
 $Log: GrowthByteBuffer.java,v $
 Revision 1.1  2002/12/05 00:00:00  dangan
 [maintenance]
     ソース整備

 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [bug fix]
     grow() でバッファの増加量の計算が間違っていたのを修正。
 [change]
     読み込み限界に達した後の read( new byte[0] ) や 
     read( byte[] buf, int off, 0 ) の戻り値を
     InputStream と同じく 0 になるようにした
 [maintenance]
     ソース整備

 
LimitedInputStream 読み込み可能なデータ量が§限された入力ストリーム。
 -- revision history --
 $Log: LimitedInputStream.java,v $
 Revision 1.1.2.1  2003/07/20 17:03:37  dangan
 [maintenance]
     最新の LimitedInputStream からソースを取り込む。

 Revision 1.1  2002/12/05 00:00:00  dangan
 [maintenance]
     ソース整備

 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [change]
     EndOfStream に達した後の read( new byte[0] ) や 
     read( byte[] buf, int off, 0 ) の戻り値を
     InputStream と同じく 0 になるようにした
 [maintenance]
     タブ廃止
     ライセンス文の修正

 
LittleEndian リトルエンディアンで バイト配列や InputStream, OutputStream にアクセスするメソッドを提供するユーティリティクラス。
 -- revision history --
 $Log: LittleEndian.java,v $
 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [change]
     writeByte(), readByte() を撤去。
 [maintenance]
     ソース整備

 
NotEnoughBitsException 要求されたビット数のデータを得られなかった場合に 投げられる例外。
BitDataBrokenException と違い、こちらの例外を 投げる場合には 実際には読み込み動作を行ってい ないため、読み込み位置は例外を投げる前の時点と 同じである点に注意すること。
 -- revision history --
 $Log: NotEnoughBitsException.java,v $
 Revision 1.0  2002/07/24 00:00:00  dangan
 add to version control
 [maintenance]
     タブ廃止
     ライセンス文の修正

 

When you found typographical errors or omissions, Please mail to
cqw10305@nifty.com
The company name and product name which are used in this document, it is the trademark or registered trademark of each company generally.
Copyright © 2001-2002 Michel Ishizuka. All Rights Reserved.