Interface InternalScanner
- All Superinterfaces:
AutoCloseable
,Closeable
- All Known Subinterfaces:
RegionScanner
- All Known Implementing Classes:
DelegatingInternalScanner
,KeyValueHeap
,MobStoreScanner
,RegionScannerImpl
,ReversedKeyValueHeap
,ReversedMobStoreScanner
,ReversedRegionScannerImpl
,ReversedStoreScanner
,StoreScanner
Additionally, we need to be able to determine if the scanner is doing wildcard column matches (when only a column family is specified or if a column regex is specified) or if multiple members of the same column family were specified. If so, we need to ignore the timestamp to ensure that we get all the family members, as they may have been last updated at different times.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes the scanner and releases any resources it has allocateddefault boolean
next
(List<? super ExtendedCell> result) Grab the next row's worth of values.boolean
next
(List<? super ExtendedCell> result, ScannerContext scannerContext) Grab the next row's worth of values.
-
Method Details
-
next
Grab the next row's worth of values.The generic type for the output list
result
means we will only addExtendedCell
to it. This is useful for the code in HBase as we can pass List<ExtendedCell> here to avoid casting, but may cause some troubles for coprocessors which implement this method. In general, all cells created via theCellBuilder
are actuallyExtendedCell
s, so if you want to add something to theresult
list, you can just cast it toExtendedCell
, although it is marked as IA.Private.- Parameters:
result
- return output array. We will only add ExtendedCell to this list, but for CP users, you'd better just useRawCell
asExtendedCell
is IA.Private.- Returns:
- true if more rows exist after this one, false if scanner is done
- Throws:
IOException
-
next
Grab the next row's worth of values.The generic type for the output list
result
means we will only addExtendedCell
to it. This is useful for the code in HBase as we can pass List<ExtendedCell> here to avoid casting, but may cause some troubles for coprocessors which implement this method. In general, all cells created via theCellBuilder
are actuallyExtendedCell
s, so if you want to add something to theresult
list, you can just cast it toExtendedCell
, although it is marked as IA.Private.- Parameters:
result
- return output array. We will only add ExtendedCell to this list, but for CP users, you'd better just useRawCell
asExtendedCell
is IA.Private.- Returns:
- true if more rows exist after this one, false if scanner is done
- Throws:
IOException
-
close
Closes the scanner and releases any resources it has allocated- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-