Class AndPredicate

java.lang.Object
mondrian.rolap.agg.ListPredicate
mondrian.rolap.agg.AndPredicate
All Implemented Interfaces:
StarPredicate

public class AndPredicate extends ListPredicate
Predicate which is the intersection of a list of predicates. It evaluates to true if all of the predicates evaluate to true.
Author:
jhyde
See Also:
  • Constructor Details

  • Method Details

    • evaluate

      public boolean evaluate(List<Object> valueList)
      Description copied from interface: StarPredicate
      Evaluates a constraint against a list of values.

      If one of the values is StarPredicate.WILDCARD, returns true if constraint is true for all possible values of that column.

      Parameters:
      valueList - List of values, one for each constrained column
      Returns:
      Whether constraint holds for given set of values
    • and

      public StarPredicate and(StarPredicate predicate)
      Description copied from interface: StarPredicate
      Returns this intersection of this Predicate with another. The result is a Predicate which holds whenever both predicates hold.
      Parameters:
      predicate - Predicate
      Returns:
      Combined predicate
    • or

      public StarPredicate or(StarPredicate predicate)
      Description copied from interface: StarPredicate
      Returns this union of this Predicate with another. The result is a Predicate which holds whenever either predicate holds.
      Parameters:
      predicate - Predicate
      Returns:
      Combined predicate
    • checkInList

      public BitKey checkInList(SqlQuery sqlQuery, BitKey inListLHSBitKey)
    • toInListSql

      public void toInListSql(SqlQuery sqlQuery, StringBuilder buf, BitKey inListRHSBitKey)
      Generate value list for this predicate to be used in an IN-list sql predicate. The values in a multi-column IN list predicates are generated in the same order, based on the bit position from the columnBitKey.
    • getOp

      protected String getOp()
      Specified by:
      getOp in class ListPredicate