Package jp.gr.java_conf.dangan.io
Class CachedInputStream
- java.lang.Object
-
- java.io.InputStream
-
- jp.gr.java_conf.dangan.io.CachedInputStream
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
public class CachedInputStream extends java.io.InputStream
?L???b?V?????g?p????????????????????????X?g???[???B
BufferedInputStream ???? read?n???\?b?h?? synchronized ???????????????A?????????????????X??????Amark/reset ?? ?L???b?V?????????????????u?????????s?????????????T?|?[?g???????A ?????????????}???????????X?g???[???????\???????A??????????????B-- revision history -- $Log: CachedInputStream.java,v $ Revision 1.3 2002/12/05 00:00:00 dangan [maintenance] ?\?[?X???? Revision 1.2 2002/11/02 00:00:00 dangan [bug fix] available() ???u???b?N??????????????????????????????l????????????B Revision 1.1 2002/09/05 00:00:00 dangan [change] EndOfStream ???B???????? read( new byte[0] ) ?? read( byte[] buf, int off, 0 ) ???????l?? InputStream ??????? 0 ?????????????????B Revision 1.0 2002/09/05 00:00:00 dangan add to version control [bug fix] mark() ?? ???}?????? in ???n?? readLimit ???v?Z???????????????A ?v???????? readLimit ???B?????O???}?[?N???u???j???????????????????B read( buf, off, len ) ???? System.arraycopy ???????o???? dst ?? src ???t??????????B [change] EndOfStream ???B???????? read( new byte[0] ) ?? read( buf, off?C0 ) ?? -1 ?????????????C???B [maintenance] ?^?u?p?~ ???C?Z???X????C??
- Version:
- $Revision: 1.3 $
- Author:
- $Author: dangan $
-
-
Constructor Summary
Constructors Constructor Description CachedInputStream(java.io.InputStream in)
?f?t?H???g???T?C?Y???L???b?V???????? CachedInputStream???\?z?????BCachedInputStream(java.io.InputStream in, int cacheSize)
?w?????????T?C?Y???L???b?V???????? CachedInputStream???\?z?????B
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
available()
???}???????????X?g???[???????u???b?N??????? ?????????}???????????o?C?g?????????Bvoid
close()
?}???????X?g???[????????A?g?p??????? ?S???????\?[?X???J???????Bvoid
mark(int readLimit)
???}???????????X?g???[???????????u???}?[?N?????????A reset() ???\?b?h???}?[?N???????_?? ???????????u?? ?????????????????Bboolean
markSupported()
???}???????????X?g???[???? mark() ?? reset() ?? ?T?|?[?g?????????????Bint
read()
???}???????X?g???[?????? 1?o?C?g???f?[?^?? 0?`255 ???}?b?v?????????????Bint
read(byte[] buffer)
???}???????X?g???[?????? buffer?????????????? ?f?[?^???????????B
?}?????\?b?h?? buffer ?????????????f?[?^?????????????A EndOfStream?????B?????????u???b?N?????Bint
read(byte[] buffer, int index, int length)
???}???????X?g???[?????? buffer ?? index ???w???????? ???u?? length ?o?C?g?f?[?^???????????B
?}?????\?b?h?? length ?o?C?g???????????A EndOfStream?????B?????????u???b?N?????Bvoid
reset()
???}???????????X?g???[???????????????u???????? mark() ???\?b?h???????o???????????????u???????????Blong
skip(long length)
???}???????????X?g???[?????f?[?^?? length ?o?C?g???????????B
?}?????\?b?h?? length ?o?C?g???????????? EndOfStream ?????B?????????u???b?N?????B
-
-
-
Constructor Detail
-
CachedInputStream
public CachedInputStream(java.io.InputStream in)
?f?t?H???g???T?C?Y???L???b?V???????? CachedInputStream???\?z?????B- Parameters:
in
- ?L???b?V?????K?v???????X?g???[??- Throws:
java.lang.IllegalArgumentException
- in ?? null ??????????
-
CachedInputStream
public CachedInputStream(java.io.InputStream in, int cacheSize)
?w?????????T?C?Y???L???b?V???????? CachedInputStream???\?z?????B- Parameters:
in
- ?L???b?V?????K?v???????X?g???[??cacheSize
- ?L???b?V?????T?C?Y- Throws:
java.lang.IllegalArgumentException
- cacheSize ?? 0?????????????A in ?? null ??????????
-
-
Method Detail
-
read
public int read() throws java.io.IOException
???}???????X?g???[?????? 1?o?C?g???f?[?^?? 0?`255 ???}?b?v?????????????B- Specified by:
read
in classjava.io.InputStream
- Returns:
- ?????o?????? 1?o?C?g???f?[?^???????B
???? EndOfStream???B????????????? -1???????B - Throws:
java.io.IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
read
public int read(byte[] buffer) throws java.io.IOException
???}???????X?g???[?????? buffer?????????????? ?f?[?^???????????B
?}?????\?b?h?? buffer ?????????????f?[?^?????????????A EndOfStream?????B?????????u???b?N?????B- Overrides:
read
in classjava.io.InputStream
- Parameters:
buffer
- ???????????f?[?^???i?[???????????o?C?g?z??- Returns:
- buffer ?????????????f?[?^?????o?C?g?????????B
???? EndOfStream???B????????????? -1???????B - Throws:
java.io.IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
read
public int read(byte[] buffer, int index, int length) throws java.io.IOException
???}???????X?g???[?????? buffer ?? index ???w???????? ???u?? length ?o?C?g?f?[?^???????????B
?}?????\?b?h?? length ?o?C?g???????????A EndOfStream?????B?????????u???b?N?????B- Overrides:
read
in classjava.io.InputStream
- Parameters:
buffer
- ???????????f?[?^???i?[???????????o?C?g?z??index
- buffer?????f?[?^?????????J?n???ulength
- buffer???????????f?[?^??- Returns:
- buffer ?????????????f?[?^?????o?C?g?????????B
???? EndOfStream???B????????????? -1???????B - Throws:
java.io.IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
skip
public long skip(long length) throws java.io.IOException
???}???????????X?g???[?????f?[?^?? length ?o?C?g???????????B
?}?????\?b?h?? length ?o?C?g???????????? EndOfStream ?????B?????????u???b?N?????B- Overrides:
skip
in classjava.io.InputStream
- Parameters:
length
- ???????????o?C?g???B- Returns:
- ?????????????????????o?C?g???B
- Throws:
java.io.IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
mark
public void mark(int readLimit)
???}???????????X?g???[???????????u???}?[?N?????????A reset() ???\?b?h???}?[?N???????_?? ???????????u?? ?????????????????B- Overrides:
mark
in classjava.io.InputStream
- Parameters:
readLimit
- ?}?[?N???u???????????E???o?C?g???B ?}???o?C?g?????L?????f?[?^?????? ?????????? reset()?????????????? ?\?????????B
-
reset
public void reset() throws java.io.IOException
???}???????????X?g???[???????????????u???????? mark() ???\?b?h???????o???????????????u???????????B- Overrides:
reset
in classjava.io.InputStream
- Throws:
java.io.IOException
-
(1) CachedInputStream ?? mark ???????????????????B
(2) ???}???????????X?g???[???? markSupported()?? false ???????????B
(3) ???}???????????X?g???[???? ???o???G???[??????????????B
?????????B
-
markSupported
public boolean markSupported()
???}???????????X?g???[???? mark() ?? reset() ?? ?T?|?[?g?????????????B- Overrides:
markSupported
in classjava.io.InputStream
- Returns:
- ?X?g???[???? mark() ?? reset() ??
?T?|?[?g?????????? true?B
?T?|?[?g??????????? false?B
-
available
public int available() throws java.io.IOException
???}???????????X?g???[???????u???b?N??????? ?????????}???????????o?C?g?????????B- Overrides:
available
in classjava.io.InputStream
- Returns:
- ?u???b?N????????????o?????o?C?g???B
- Throws:
java.io.IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
close
public void close() throws java.io.IOException
?}???????X?g???[????????A?g?p??????? ?S???????\?[?X???J???????B- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Overrides:
close
in classjava.io.InputStream
- Throws:
java.io.IOException
- ???}???????????X?g???[???? ???o???G???[?????????????
-
-