Class ValueFilter


@Public public class ValueFilter extends CompareFilter
This filter is used to filter based on column value. It takes an operator (equal, greater, not equal, etc) and a byte [] comparator for the cell value.

This filter can be wrapped with WhileMatchFilter and SkipFilter to add more control.

Multiple filters can be combined using FilterList.

To test the value of a single qualifier when scanning multiple qualifiers, use SingleColumnValueFilter.

  • Constructor Details

    • ValueFilter

      public ValueFilter(CompareOperator valueCompareOp, ByteArrayComparable valueComparator)
      Constructor.
      Parameters:
      valueCompareOp - the compare op for value matching
      valueComparator - the comparator for value matching
  • Method Details

    • filterCell

      Description copied from class: Filter
      A way to filter based on the column family, column qualifier and/or the column value. Return code is described below. This allows filters to filter only certain number of columns, then terminate without matching ever column. If filterRowKey returns true, filterCell needs to be consistent with it. filterCell can assume that filterRowKey has already been called for the row. If your filter returns 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.
      Overrides:
      filterCell in class Filter
      Parameters:
      c - the Cell in question
      Returns:
      code as described below
      See Also:
    • createFilterFromArguments

      public static Filter createFilterFromArguments(ArrayList<byte[]> filterArguments)
    • toByteArray

      public byte[] toByteArray()
      Returns The filter serialized using pb
      Overrides:
      toByteArray in class FilterBase
      Returns:
      The filter serialized using pb
    • parseFrom

      public static ValueFilter parseFrom(byte[] pbBytes) throws DeserializationException
      Parse a serialized representation of ValueFilter
      Parameters:
      pbBytes - A pb serialized ValueFilter instance
      Returns:
      An instance of ValueFilter made from bytes
      Throws:
      DeserializationException - if an error occurred
      See Also:
    • areSerializedFieldsEqual

      Returns true if and only if the fields of the filter that are serialized are equal to the corresponding fields in other. Used for testing.
      Overrides:
      areSerializedFieldsEqual in class CompareFilter
      Returns:
      true if and only if the fields of the filter that are serialized are equal to the corresponding fields in other. Used for testing.
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class CompareFilter
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class CompareFilter