@InterfaceAudience.Public public class FirstKeyOnlyFilter extends FilterBase
This filter can be used to more efficiently perform row count operations.
Filter.ReturnCode
Modifier and Type | Field and Description |
---|---|
private boolean |
foundKV |
Constructor and Description |
---|
FirstKeyOnlyFilter() |
Modifier and Type | Method and Description |
---|---|
(package private) boolean |
areSerializedFieldsEqual(Filter o)
Returns true if and only if the fields of the filter that are serialized are equal to the
corresponding fields in other.
|
static Filter |
createFilterFromArguments(ArrayList<byte[]> filterArguments) |
boolean |
equals(Object obj) |
Filter.ReturnCode |
filterCell(Cell c)
A way to filter based on the column family, column qualifier and/or the column value.
|
boolean |
filterRowKey(Cell cell)
Filters a row based on the row key.
|
protected boolean |
hasFoundKV()
Returns true if first KV has been found.
|
int |
hashCode() |
static FirstKeyOnlyFilter |
parseFrom(byte[] pbBytes)
Parse a serialized representation of
FirstKeyOnlyFilter |
void |
reset()
Filters that are purely stateless and do nothing in their reset() methods can inherit this
null/empty implementation.
|
protected void |
setFoundKV(boolean value)
Set or clear the indication if the first KV has been found.
|
byte[] |
toByteArray()
Returns The filter serialized using pb
|
filterAllRemaining, filterRow, filterRowCells, getNextCellHint, hasFilterRow, isFamilyEssential, toString, transformCell
isReversed, setReversed
private boolean foundKV
public FirstKeyOnlyFilter()
public void reset()
FilterBase
IOException
.reset
in class FilterBase
public boolean filterRowKey(Cell cell) throws IOException
Filter
Filter.filterCell(Cell)
below. If
Filter.filterAllRemaining()
returns true, then Filter.filterRowKey(Cell)
should also return
true. Concrete implementers can signal a failure condition in their code by throwing an
IOException
.filterRowKey
in class FilterBase
cell
- The first cell coming in the new rowIOException
- in case an I/O or an filter specific failure needs to be signaled.public Filter.ReturnCode filterCell(Cell c)
Filter
ReturnCode.NEXT_ROW
, it should return
ReturnCode.NEXT_ROW
until Filter.reset()
is called just in case the caller calls
for the next row. Concrete implementers can signal a failure condition in their code by
throwing an IOException
.filterCell
in class Filter
c
- the Cell in questionFilter.ReturnCode
public static Filter createFilterFromArguments(ArrayList<byte[]> filterArguments)
protected boolean hasFoundKV()
protected void setFoundKV(boolean value)
value
- update foundKV
flag with value.public byte[] toByteArray()
toByteArray
in class FilterBase
public static FirstKeyOnlyFilter parseFrom(byte[] pbBytes) throws DeserializationException
FirstKeyOnlyFilter
pbBytes
- A pb serialized FirstKeyOnlyFilter
instanceFirstKeyOnlyFilter
made from bytes
DeserializationException
- if an error occurredtoByteArray()
boolean areSerializedFieldsEqual(Filter o)
areSerializedFieldsEqual
in class FilterBase
Copyright © 2007–2020 The Apache Software Foundation. All rights reserved.