public class RereadableInputStream
extends java.io.InputStream
| Constructor and Description |
|---|
RereadableInputStream(java.io.InputStream inputStream,
int maxBytesInMemory,
boolean readToEndOfStreamOnFirstRewind,
boolean closeOriginalStreamOnClose)
Creates a rereadable input stream.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close()
Closes the input stream and removes the temporary file if one was
created.
|
int |
getSize()
Returns the number of bytes read from the original stream.
|
int |
read()
Reads a byte from the stream, saving it in the store if it is being
read from the original stream.
|
void |
rewind()
"Rewinds" the stream to the beginning for rereading.
|
public RereadableInputStream(java.io.InputStream inputStream,
int maxBytesInMemory,
boolean readToEndOfStreamOnFirstRewind,
boolean closeOriginalStreamOnClose)
inputStream - stream containing the source of datamaxBytesInMemory - maximum number of bytes to use to store
the stream's contents in memory before switching to disk; note that
the instance will preallocate a byte array whose size is
maxBytesInMemory. This byte array will be made available for
garbage collection (i.e. its reference set to null) when the
content size exceeds the array's size, when close() is called, or
when there are no more references to the instance.readToEndOfStreamOnFirstRewind - Specifies whether or not to
read to the end of stream on first rewind. If this is set to false,
then when rewind() is first called, only those bytes already read
from the original stream will be available from then on.public int read()
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOExceptionpublic void rewind()
throws java.io.IOException
java.io.IOExceptionpublic void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class java.io.InputStreamjava.io.IOExceptionpublic int getSize()
Copyright © 2010 - 2023 Adobe. All Rights Reserved