Package com.twelvemonkeys.io
Class FileCacheSeekableStream.FileCache
- java.lang.Object
-
- com.twelvemonkeys.io.AbstractCachedSeekableStream.StreamCache
-
- com.twelvemonkeys.io.FileCacheSeekableStream.FileCache
-
- Enclosing class:
- FileCacheSeekableStream
static final class FileCacheSeekableStream.FileCache extends AbstractCachedSeekableStream.StreamCache
-
-
Field Summary
Fields Modifier and Type Field Description private java.io.RandomAccessFilecacheFile
-
Constructor Summary
Constructors Constructor Description FileCache(java.io.File pFile)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidclose()longgetPosition()Returns the current cache read/write position.intread()Reads a single byte a the current read/write position.intread(byte[] pBuffer, int pOffset, int pLength)Writes a series of bytes at the current read/write position.voidseek(long pPosition)Repositions the current cache read/write position to the given position.voidwrite(byte[] pBuffer, int pOffset, int pLength)Writes a series of bytes at the current read/write position.voidwrite(int pByte)Writes a single byte at the current read/write position.-
Methods inherited from class com.twelvemonkeys.io.AbstractCachedSeekableStream.StreamCache
flush
-
-
-
-
Method Detail
-
write
public void write(int pByte) throws java.io.IOExceptionDescription copied from class:AbstractCachedSeekableStream.StreamCacheWrites a single byte at the current read/write position. The read/write position will be increased by one.- Specified by:
writein classAbstractCachedSeekableStream.StreamCache- Parameters:
pByte- the byte value to write.- Throws:
java.io.IOException- if an I/O exception occurs in the cache backing mechanism.
-
write
public void write(byte[] pBuffer, int pOffset, int pLength) throws java.io.IOExceptionDescription copied from class:AbstractCachedSeekableStream.StreamCacheWrites a series of bytes at the current read/write position. The read/write position will be increased bypLength.This implementation invokes
AbstractCachedSeekableStream.StreamCache.write(int)pLengthtimes. Subclasses may override this method for performance.- Overrides:
writein classAbstractCachedSeekableStream.StreamCache- Parameters:
pBuffer- the bytes to write.pOffset- the starting offset into the buffer.pLength- the number of bytes to write from the buffer.- Throws:
java.io.IOException- if an I/O exception occurs in the cache backing mechanism.
-
read
public int read() throws java.io.IOExceptionDescription copied from class:AbstractCachedSeekableStream.StreamCacheReads a single byte a the current read/write position. The read/write position will be increased by one.- Specified by:
readin classAbstractCachedSeekableStream.StreamCache- Returns:
- the value read, or
-1to indicate EOF. - Throws:
java.io.IOException- if an I/O exception occurs in the cache backing mechanism.
-
read
public int read(byte[] pBuffer, int pOffset, int pLength) throws java.io.IOExceptionDescription copied from class:AbstractCachedSeekableStream.StreamCacheWrites a series of bytes at the current read/write position. The read/write position will be increased bypLength.This implementation invokes
AbstractCachedSeekableStream.StreamCache.read()pLengthtimes. Subclasses may override this method for performance.- Overrides:
readin classAbstractCachedSeekableStream.StreamCache- Parameters:
pBuffer- the bytes to writepOffset- the starting offset into the buffer.pLength- the number of bytes to write from the buffer.- Returns:
- the number of bytes read, or
-1to indicate EOF. - Throws:
java.io.IOException- if an I/O exception occurs in the cache backing mechanism.
-
seek
public void seek(long pPosition) throws java.io.IOExceptionDescription copied from class:AbstractCachedSeekableStream.StreamCacheRepositions the current cache read/write position to the given position.- Specified by:
seekin classAbstractCachedSeekableStream.StreamCache- Parameters:
pPosition- the new read/write position- Throws:
java.io.IOException- if an I/O exception occurs in the cache backing mechanism.
-
getPosition
public long getPosition() throws java.io.IOExceptionDescription copied from class:AbstractCachedSeekableStream.StreamCacheReturns the current cache read/write position.- Specified by:
getPositionin classAbstractCachedSeekableStream.StreamCache- Returns:
- the current cache read/write postion.
- Throws:
java.io.IOException- if the position can't be determined because of a problem in the cache backing mechanism.
-
close
void close() throws java.io.IOException- Specified by:
closein classAbstractCachedSeekableStream.StreamCache- Throws:
java.io.IOException
-
-