java.lang.Object
javax.imageio.stream.ImageInputStreamImpl
javax.imageio.stream.FileCacheImageInputStream
- All Implemented Interfaces:
- Closeable,- DataInput,- AutoCloseable,- ImageInputStream
public class FileCacheImageInputStream extends ImageInputStreamImpl
An implementation of 
ImageInputStream that gets its
 input from a regular InputStream.  A file is used to
 cache previously read data.- 
Field SummaryFields declared in class javax.imageio.stream.ImageInputStreamImplbitOffset, byteOrder, flushedPos, streamPos
- 
Constructor SummaryConstructors Constructor Description FileCacheImageInputStream(InputStream stream, File cacheDir)Constructs aFileCacheImageInputStreamthat will read from a givenInputStream.
- 
Method SummaryModifier and Type Method Description voidclose()Closes thisFileCacheImageInputStream, closing and removing the cache file.protected voidfinalize()Deprecated.Thefinalizemethod has been deprecated.booleanisCached()Returnstruesince thisImageInputStreamcaches data in order to allow seeking backwards.booleanisCachedFile()Returnstruesince thisImageInputStreammaintains a file cache.booleanisCachedMemory()Returnsfalsesince thisImageInputStreamdoes not maintain a main memory cache.Methods declared in class javax.imageio.stream.ImageInputStreamImplcheckClosed, length, mark, read, read, read, reset, skipBytes, skipBytesMethods declared in class java.lang.Objectclone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods declared in interface javax.imageio.stream.ImageInputStreamflush, flushBefore, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, readBit, readBits, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, seek, setBitOffset, setByteOrder
- 
Constructor Details- 
FileCacheImageInputStreamConstructs aFileCacheImageInputStreamthat will read from a givenInputStream.A temporary file is used as a cache. If cacheDiris non-nulland is a directory, the file will be created there. If it isnull, the system-dependent default temporary-file directory will be used (see the documentation forFile.createTempFilefor details).- Parameters:
- stream- an- InputStreamto read from.
- cacheDir- a- Fileindicating where the cache file should be created, or- nullto use the system directory.
- Throws:
- IllegalArgumentException- if- streamis- null.
- IllegalArgumentException- if- cacheDiris non-- nullbut is not a directory.
- IOException- if a cache file cannot be created.
 
 
- 
- 
Method Details- 
isCachedpublic boolean isCached()Returnstruesince thisImageInputStreamcaches data in order to allow seeking backwards.- Specified by:
- isCachedin interface- ImageInputStream
- Overrides:
- isCachedin class- ImageInputStreamImpl
- Returns:
- true.
- See Also:
- isCachedMemory(),- isCachedFile()
 
- 
isCachedFilepublic boolean isCachedFile()Returnstruesince thisImageInputStreammaintains a file cache.- Specified by:
- isCachedFilein interface- ImageInputStream
- Overrides:
- isCachedFilein class- ImageInputStreamImpl
- Returns:
- true.
- See Also:
- isCached(),- isCachedMemory()
 
- 
isCachedMemorypublic boolean isCachedMemory()Returnsfalsesince thisImageInputStreamdoes not maintain a main memory cache.- Specified by:
- isCachedMemoryin interface- ImageInputStream
- Overrides:
- isCachedMemoryin class- ImageInputStreamImpl
- Returns:
- false.
- See Also:
- isCached(),- isCachedFile()
 
- 
closeCloses thisFileCacheImageInputStream, closing and removing the cache file. The sourceInputStreamis not closed.- Throws:
- IOException- if an error occurs.
 
- 
finalizeDeprecated.Thefinalizemethod has been deprecated. Subclasses that overridefinalizein order to perform cleanup should be modified to use alternative cleanup mechanisms and to remove the overridingfinalizemethod. When overriding thefinalizemethod, its implementation must explicitly ensure thatsuper.finalize()is invoked as described inObject.finalize(). See the specification forObject.finalize()for further information about migration options.Finalizes this object prior to garbage collection. Theclosemethod is called to close any open input source. This method should not be called from application code.- Overrides:
- finalizein class- ImageInputStreamImpl
- Throws:
- Throwable- if an error occurs during superclass finalization.
- See Also:
- WeakReference,- PhantomReference
 
 
-