Interface InternalScanner
- All Superinterfaces:
AutoCloseable,Closeable
- All Known Subinterfaces:
RegionScanner
- All Known Implementing Classes:
DelegatingInternalScanner,KeyValueHeap,MobStoreScanner,RegionScannerImpl,ReversedKeyValueHeap,ReversedMobStoreScanner,ReversedRegionScannerImpl,ReversedStoreScanner,RowStatisticsCompactionObserver.RowStatisticsScanner,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 TypeMethodDescriptionvoidclose()Closes the scanner and releases any resources it has allocateddefault booleannext(List<? super ExtendedCell> result) Grab the next row's worth of values.booleannext(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
resultmeans we will only addExtendedCellto 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 theCellBuilderare actuallyExtendedCells, so if you want to add something to theresultlist, 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 useRawCellasExtendedCellis 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
resultmeans we will only addExtendedCellto 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 theCellBuilderare actuallyExtendedCells, so if you want to add something to theresultlist, 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 useRawCellasExtendedCellis 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:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-