@NotThreadSafe public class LocalCacheFileInStream extends FileInStream
FileInStream
that reads from a local cache if possible.Modifier and Type | Class and Description |
---|---|
static interface |
LocalCacheFileInStream.FileInStreamOpener
Interface to wrap open method of file system.
|
Modifier and Type | Field and Description |
---|---|
protected long |
mPageSize
Page size in bytes.
|
Constructor and Description |
---|
LocalCacheFileInStream(URIStatus status,
LocalCacheFileInStream.FileInStreamOpener fileOpener,
CacheManager cacheManager,
AlluxioConfiguration conf)
Constructor when the
URIStatus is already available. |
Modifier and Type | Method and Description |
---|---|
void |
close() |
protected com.google.common.base.Stopwatch |
createUnstartedStopwatch() |
long |
getPos() |
int |
positionedRead(long pos,
byte[] b,
int off,
int len)
Reads up to the specified number of bytes, from a given position within a file, and return the
number of bytes read.
|
int |
read(byte[] b,
int off,
int len) |
int |
read(ByteBuffer buf,
int off,
int len)
Reads up to len bytes of data from the input stream into the byte buffer.
|
long |
remaining() |
void |
seek(long pos)
Moves the starting read position of the stream to the specified position which is relative to
the start of the stream.
|
long |
skip(long n) |
read, read, read
available, mark, markSupported, reset
public LocalCacheFileInStream(URIStatus status, LocalCacheFileInStream.FileInStreamOpener fileOpener, CacheManager cacheManager, AlluxioConfiguration conf)
URIStatus
is already available.status
- file statusfileOpener
- open file in the external file system if a cache miss occurscacheManager
- local cache managerconf
- configurationpublic int read(byte[] b, int off, int len) throws IOException
read
in class FileInStream
IOException
public int read(ByteBuffer buf, int off, int len) throws IOException
FileInStream
read
in class FileInStream
buf
- the buffer into which the data is readoff
- the start offset in the buffer at which the data is writtenlen
- the maximum number of bytes to readIOException
protected com.google.common.base.Stopwatch createUnstartedStopwatch()
public long skip(long n)
skip
in class InputStream
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
close
in class InputStream
IOException
public long remaining()
public int positionedRead(long pos, byte[] b, int off, int len) throws IOException
PositionedReadable
pos
- position within fileb
- destination bufferoff
- offset in the bufferlen
- number of bytes to readIOException
public long getPos()
public void seek(long pos)
Seekable
pos
- the position to seek to, it must be between 0 and the end of the stream - 1Copyright © 2023. All Rights Reserved.