|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.hadoop.io.file.tfile.TFile.Reader.Scanner
public static class TFile.Reader.Scanner
The TFile Scanner. The Scanner has an implicit cursor, which, upon creation, points to the first key-value pair in the scan range. If the scan range is empty, the cursor will point to the end of the scan range.
Use atEnd()
to test whether the cursor is at the end
location of the scanner.
Use advance()
to move the cursor to the next key-value
pair (or end if none exists). Use seekTo methods (
seekTo(byte[])
or
seekTo(byte[], int, int)
) to seek to any arbitrary
location in the covered range (including backward seeking). Use
rewind()
to seek back to the beginning of the scanner.
Use seekToEnd()
to seek to the end of the scanner.
Actual keys and values may be obtained through TFile.Reader.Scanner.Entry
object, which is obtained through entry()
.
Nested Class Summary | |
---|---|
class |
TFile.Reader.Scanner.Entry
Entry to a <Key, Value> pair. |
Constructor Summary | |
---|---|
protected |
TFile.Reader.Scanner(TFile.Reader reader,
long offBegin,
long offEnd)
Constructor |
protected |
TFile.Reader.Scanner(TFile.Reader reader,
RawComparable beginKey,
RawComparable endKey)
Constructor |
Method Summary | |
---|---|
boolean |
advance()
Move the cursor to the next key-value pair. |
boolean |
atEnd()
Is cursor at the end location? |
void |
close()
Close the scanner. |
TFile.Reader.Scanner.Entry |
entry()
Get an entry to access the key and value. |
long |
getRecordNum()
Get the RecordNum corresponding to the entry pointed by the cursor. |
void |
lowerBound(byte[] key)
Move the cursor to the first entry whose key is greater than or equal to the input key. |
void |
lowerBound(byte[] key,
int keyOffset,
int keyLen)
Move the cursor to the first entry whose key is greater than or equal to the input key. |
void |
rewind()
Rewind to the first entry in the scanner. |
boolean |
seekTo(byte[] key)
Move the cursor to the first entry whose key is greater than or equal to the input key. |
boolean |
seekTo(byte[] key,
int keyOffset,
int keyLen)
Move the cursor to the first entry whose key is greater than or equal to the input key. |
void |
seekToEnd()
Seek to the end of the scanner. |
void |
upperBound(byte[] key)
Move the cursor to the first entry whose key is strictly greater than the input key. |
void |
upperBound(byte[] key,
int keyOffset,
int keyLen)
Move the cursor to the first entry whose key is strictly greater than the input key. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected TFile.Reader.Scanner(TFile.Reader reader, long offBegin, long offEnd) throws IOException
reader
- The TFile reader object.offBegin
- Begin byte-offset of the scan.offEnd
- End byte-offset of the scan.
IOException
- The offsets will be rounded to the beginning of a compressed
block whose offset is greater than or equal to the specified
offset.protected TFile.Reader.Scanner(TFile.Reader reader, RawComparable beginKey, RawComparable endKey) throws IOException
reader
- The TFile reader object.beginKey
- Begin key of the scan. If null, scan from the first endKey
- End key of the scan. If null, scan up to the last IOException
Method Detail |
---|
public boolean seekTo(byte[] key) throws IOException
key
- The input key
IOException
public boolean seekTo(byte[] key, int keyOffset, int keyLen) throws IOException
key
- The input keykeyOffset
- offset in the key buffer.keyLen
- key buffer length.
IOException
public void rewind() throws IOException
IOException
public void seekToEnd() throws IOException
IOException
public void lowerBound(byte[] key) throws IOException
key
- The input key
IOException
public void lowerBound(byte[] key, int keyOffset, int keyLen) throws IOException
key
- The input keykeyOffset
- offset in the key buffer.keyLen
- key buffer length.
IOException
public void upperBound(byte[] key) throws IOException
key
- The input key
IOException
public void upperBound(byte[] key, int keyOffset, int keyLen) throws IOException
key
- The input keykeyOffset
- offset in the key buffer.keyLen
- key buffer length.
IOException
public boolean advance() throws IOException
IOException
public void close() throws IOException
close
in interface Closeable
IOException
public boolean atEnd()
public TFile.Reader.Scanner.Entry entry() throws IOException
IOException
public long getRecordNum() throws IOException
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |