public abstract class ByteRangeInputStream extends FSInputStream
| Modifier and Type | Class and Description |
|---|---|
static class |
ByteRangeInputStream.URLOpener
This class wraps a URL and provides method to open connection.
|
| Modifier and Type | Field and Description |
|---|---|
protected long |
currentPos |
protected Long |
fileLength |
protected InputStream |
in |
protected ByteRangeInputStream.URLOpener |
originalURL |
protected ByteRangeInputStream.URLOpener |
resolvedURL |
protected long |
startPos |
| Constructor and Description |
|---|
ByteRangeInputStream(ByteRangeInputStream.URLOpener o,
ByteRangeInputStream.URLOpener r)
Create with the specified URLOpeners.
|
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
protected InputStream |
getInputStream() |
long |
getPos()
Return the current offset from the start of the file
|
protected abstract URL |
getResolvedUrl(HttpURLConnection connection) |
protected org.apache.hadoop.hdfs.web.ByteRangeInputStream.InputStreamAndFileLength |
openInputStream(long startOffset) |
int |
read() |
int |
read(byte[] b,
int off,
int len) |
int |
read(long position,
byte[] buffer,
int offset,
int length) |
void |
readFully(long position,
byte[] buffer,
int offset,
int length) |
void |
seek(long pos)
Seek to the given offset from the start of the file.
|
boolean |
seekToNewSource(long targetPos)
Seeks a different copy of the data.
|
readFullyavailable, mark, markSupported, read, reset, skipprotected InputStream in
protected final ByteRangeInputStream.URLOpener originalURL
protected final ByteRangeInputStream.URLOpener resolvedURL
protected long startPos
protected long currentPos
protected Long fileLength
public ByteRangeInputStream(ByteRangeInputStream.URLOpener o, ByteRangeInputStream.URLOpener r) throws IOException
o - Original urlr - Resolved urlIOExceptionprotected abstract URL getResolvedUrl(HttpURLConnection connection) throws IOException
IOExceptionprotected InputStream getInputStream() throws IOException
IOExceptionprotected org.apache.hadoop.hdfs.web.ByteRangeInputStream.InputStreamAndFileLength openInputStream(long startOffset) throws IOException
IOExceptionpublic int read() throws IOException
read in class InputStreamIOExceptionpublic int read(byte[] b, int off, int len) throws IOException
read in class InputStreamIOExceptionpublic void seek(long pos) throws IOException
seek in interface Seekableseek in class FSInputStreamIOExceptionpublic int read(long position, byte[] buffer, int offset, int length) throws IOException
read in interface PositionedReadableread in class FSInputStreamIOExceptionpublic void readFully(long position, byte[] buffer, int offset, int length) throws IOException
readFully in interface PositionedReadablereadFully in class FSInputStreamIOExceptionpublic long getPos() throws IOException
getPos in interface SeekablegetPos in class FSInputStreamIOExceptionpublic boolean seekToNewSource(long targetPos) throws IOException
seekToNewSource in class FSInputStreamIOExceptionpublic void close() throws IOException
close in interface Closeableclose in interface AutoCloseableclose in class InputStreamIOExceptionCopyright © 2018 CERN. All Rights Reserved.