@InterfaceAudience.Public @InterfaceStability.Stable public class PrefixFilter extends FilterBase
Filter.ReturnCode| Modifier and Type | Field and Description |
|---|---|
protected boolean |
filterRow |
protected boolean |
passedPrefix |
protected byte[] |
prefix |
| Constructor and Description |
|---|
PrefixFilter(byte[] prefix) |
| Modifier and Type | Method and Description |
|---|---|
static Filter |
createFilterFromArguments(ArrayList<byte[]> filterArguments) |
boolean |
equals(Object obj) |
boolean |
filterAllRemaining()
Filters that never filter all remaining can inherit this implementation that
never stops the filter early.
|
Filter.ReturnCode |
filterKeyValue(Cell v)
A way to filter based on the column family, column qualifier and/or the column value.
|
boolean |
filterRow()
Filters that never filter by rows based on previously gathered state from
Filter.filterKeyValue(Cell) can inherit this implementation that
never filters a row. |
boolean |
filterRowKey(byte[] buffer,
int offset,
int length)
Filters that do not filter by row key can inherit this implementation that
never filters anything.
|
byte[] |
getPrefix() |
int |
hashCode() |
static PrefixFilter |
parseFrom(byte[] pbBytes) |
void |
reset()
Filters that are purely stateless and do nothing in their reset() methods can inherit
this null/empty implementation.
|
byte[] |
toByteArray()
Return length 0 byte array for Filters that don't require special serialization
|
String |
toString()
Return filter's info for debugging and logging purpose.
|
Cell |
transformCell(Cell v)
By default no transformation takes place
Give the filter a chance to transform the passed KeyValue.
|
filterRowCells, getNextCellHint, getNextKeyHint, hasFilterRow, isFamilyEssential, transformisReversed, setReversedprotected byte[] prefix
protected boolean passedPrefix
protected boolean filterRow
public byte[] getPrefix()
public boolean filterRowKey(byte[] buffer,
int offset,
int length)
FilterBaseFilter.filterKeyValue(Cell) below.
Concrete implementers can signal a failure condition in their code by throwing an
IOException.filterRowKey in class FilterBasebuffer - buffer containing row keyoffset - offset into buffer where row key startslength - length of the row keypublic Filter.ReturnCode filterKeyValue(Cell v)
FilterReturnCode.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.filterKeyValue in class Filterv - the Cell in questionFilter.ReturnCodepublic Cell transformCell(Cell v)
FilterBasetransformCell in class FilterBasev - 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 boolean filterRow()
FilterBaseFilter.filterKeyValue(Cell) can inherit this implementation that
never filters a row.
Last chance to veto row based on previous Filter.filterKeyValue(Cell) calls. The filter
needs to retain state then return a particular value for this call if they wish to exclude a
row if a certain column is missing (for example).
Concrete implementers can signal a failure condition in their code by throwing an
IOException.filterRow in class FilterBasepublic void reset()
FilterBaseIOException.reset in class FilterBasepublic boolean filterAllRemaining()
FilterBaseIOException.filterAllRemaining in class FilterBasepublic static Filter createFilterFromArguments(ArrayList<byte[]> filterArguments)
public byte[] toByteArray()
FilterBasetoByteArray in class FilterBasepublic static PrefixFilter parseFrom(byte[] pbBytes) throws DeserializationException
pbBytes - A pb serialized PrefixFilter instancePrefixFilter made from bytesDeserializationExceptiontoByteArray()public String toString()
FilterBasetoString in class FilterBaseCopyright © 2007–2019 The Apache Software Foundation. All rights reserved.