| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public class FileCacheImageOutputStream extends ImageOutputStreamImpl
An implementation of ImageOutputStream
that writes its
output to a regular OutputStream
. A file is used to
cache data until it is flushed to the output stream.
Field Summary |
---|
Fields inherited from class javax.imageio.stream.ImageInputStreamImpl |
---|
bitOffset, byteOrder, flushedPos, streamPos |
Constructor Summary | |
---|---|
FileCacheImageOutputStream(OutputStream stream, File cacheDir) Constructs a FileCacheImageOutputStream that will write
to a given outputStream .
|
Method Summary | |
---|---|
void |
close() Closes this FileCacheImageOututStream .
|
void |
flushBefore(long pos) |
boolean |
isCached() Returns true since this
ImageOutputStream caches data in order to allow
seeking backwards.
|
boolean |
Returns true since this
ImageOutputStream maintains a file cache.
|
boolean |
Returns false since this
ImageOutputStream does not maintain a main memory
cache.
|
long |
length() Returns -1L to indicate that the stream has unknown
length.
|
int |
read() Reads a single byte from the stream and returns it as an int between 0 and 255.
|
int |
read(byte[] b, int off, int len) Reads a single byte from the stream and returns it as an int between 0 and 255.
|
void |
seek(long pos) Sets the current stream position and resets the bit offset to 0. |
void |
write(byte[] b, int off, int len) |
void |
write(int b) |
Methods inherited from class javax.imageio.stream.ImageOutputStreamImpl |
---|
flushBits, write, write, write, writeBit, writeBits, writeBoolean, writeByte, writeBytes, writeChar, writeChars, writeChars, writeDouble, writeDoubles, writeFloat, writeFloats, writeInt, writeInts, writeLong, writeLongs, writeShort, writeShorts, writeUTF |
Methods inherited from class javax.imageio.stream.ImageInputStreamImpl |
---|
checkClosed, close, finalize, flush, flushBefore, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, isCached, isCachedFile, isCachedMemory, length, mark, read, read, read, readBit, readBits, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, seek, setBitOffset, setByteOrder, skipBytes, skipBytes |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FileCacheImageOutputStream(OutputStream stream, File cacheDir) throws IOException
FileCacheImageOutputStream
that will write
to a given outputStream
.
A temporary file is used as a cache. If
cacheDir
is non-null
and is a
directory, the file will be created there. If it is
null
, the system-dependent default temporary-file
directory will be used (see the documentation for
File.createTempFile
for details).
stream
- an OutputStream
to write to.cacheDir
- a File
indicating where the
cache file should be created, or null
to use the
system directory.IOException
- if a cache file cannot be created.Method Detail |
---|
public void close() throws IOException
FileCacheImageOututStream
. All
pending data is flushed to the output, and the cache file
is closed and removed. The destination OutputStream
is not closed.
close
in class ImageInputStreamImpl
IOException
- if an error occurs.public void flushBefore(long pos) throws IOException
flushBefore
in class ImageInputStreamImpl
pos
IOException
public boolean isCached()
true
since this
ImageOutputStream
caches data in order to allow
seeking backwards.
isCached
in class ImageInputStreamImpl
true
.public boolean isCachedFile()
true
since this
ImageOutputStream
maintains a file cache.
isCachedFile
in class ImageInputStreamImpl
true
.public boolean isCachedMemory()
false
since this
ImageOutputStream
does not maintain a main memory
cache.
isCachedMemory
in class ImageInputStreamImpl
false
.public long length()
length
in class ImageInputStreamImpl
public int read() throws IOException
read
in class ImageInputStreamImpl
IOException
public int read(byte[] b, int off, int len) throws IOException
read
in class ImageInputStreamImpl
b
off
len
IOException
public void seek(long pos) throws IOException
EOFException
will be thrown only if a read is
performed. The file length will not be increased until a write
is performed.
seek
in class ImageInputStreamImpl
pos
IOException
- if any other I/O error occurs.public void write(byte[] b, int off, int len) throws IOException
write
in class ImageOutputStreamImpl
b
off
len
IOException
public void write(int b) throws IOException
write
in class ImageOutputStreamImpl
b
IOException
| |||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |