@InterfaceAudience.Public @InterfaceStability.Stable public abstract class CompareFilter extends FilterBase
To filter by row key, use RowFilter
.
To filter by column qualifier, use QualifierFilter
.
To filter by value, use SingleColumnValueFilter
.
These filters can be wrapped with SkipFilter
and WhileMatchFilter
to add more control.
Multiple filters can be combined using FilterList
.
Modifier and Type | Class and Description |
---|---|
static class |
CompareFilter.CompareOp
Comparison operators.
|
Filter.ReturnCode
Modifier and Type | Field and Description |
---|---|
protected ByteArrayComparable |
comparator |
protected CompareFilter.CompareOp |
compareOp |
Constructor and Description |
---|
CompareFilter(CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected boolean |
doCompare(CompareFilter.CompareOp compareOp,
ByteArrayComparable comparator,
byte[] data,
int offset,
int length) |
static java.util.ArrayList<java.lang.Object> |
extractArguments(java.util.ArrayList<byte[]> filterArguments) |
ByteArrayComparable |
getComparator() |
CompareFilter.CompareOp |
getOperator() |
java.lang.String |
toString()
Return filter's info for debugging and logging purpose.
|
Cell |
transformCell(Cell v)
By default no transformation takes place
|
createFilterFromArguments, filterAllRemaining, filterRow, filterRowCells, filterRowKey, getNextCellHint, getNextKeyHint, hasFilterRow, isFamilyEssential, reset, toByteArray, transform
filterKeyValue, isReversed, parseFrom, setReversed
protected CompareFilter.CompareOp compareOp
protected ByteArrayComparable comparator
public CompareFilter(CompareFilter.CompareOp compareOp, ByteArrayComparable comparator)
compareOp
- the compare op for row matchingcomparator
- the comparator for row matchingpublic CompareFilter.CompareOp getOperator()
public ByteArrayComparable getComparator()
protected boolean doCompare(CompareFilter.CompareOp compareOp, ByteArrayComparable comparator, byte[] data, int offset, int length)
public Cell transformCell(Cell v)
FilterBase
transformCell
in class FilterBase
v
- the KeyValue in questionThe transformed KeyValue is what is eventually returned to the client. Most filters will
return the passed KeyValue unchanged.
,
for an example of a
transformation.
Concrete implementers can signal a failure condition in their code by throwing an
{@link IOException}.
public static java.util.ArrayList<java.lang.Object> extractArguments(java.util.ArrayList<byte[]> filterArguments)
public java.lang.String toString()
FilterBase
toString
in class FilterBase