|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object mondrian.rolap.agg.AbstractColumnPredicate mondrian.rolap.agg.ListColumnPredicate
public class ListColumnPredicate
Predicate which is the union of a list of predicates, each of which applies to the same, single column. It evaluates to true if any of the predicates evaluates to true.
ListColumnPredicate
Nested Class Summary |
---|
Nested classes/interfaces inherited from class mondrian.rolap.agg.AbstractColumnPredicate |
---|
AbstractColumnPredicate.Factory |
Nested classes/interfaces inherited from interface mondrian.rolap.StarColumnPredicate |
---|
StarColumnPredicate.Overlap |
Field Summary |
---|
Fields inherited from class mondrian.rolap.agg.AbstractColumnPredicate |
---|
constrainedColumn |
Fields inherited from interface mondrian.rolap.StarPredicate |
---|
WILDCARD |
Constructor Summary | |
---|---|
ListColumnPredicate(RolapStar.Column column,
List<StarColumnPredicate> list)
Creates a ListColumnPredicate |
Method Summary | |
---|---|
StarColumnPredicate |
cloneWithColumn(RolapStar.Column column)
This method is required because unfortunately some ColumnPredicate objects are created without a column. |
void |
describe(StringBuilder buf)
Appends a description of this predicate to a StringBuilder . |
boolean |
equalConstraint(StarPredicate that)
Returns whether this Predicate has the same constraining effect as the other constraint. |
boolean |
equals(Object obj)
|
boolean |
evaluate(Object value)
Returns whether this constraint would return true for a
given value. |
List<StarColumnPredicate> |
getPredicates()
Returns the list of child predicates. |
int |
hashCode()
|
StarColumnPredicate.Overlap |
intersect(StarColumnPredicate predicate)
Applies this predicate to a predicate from the axis of a segment, and tests for overlap. |
boolean |
mightIntersect(StarPredicate other)
Returns whether this predicate might intersect another predicate. |
StarColumnPredicate |
minus(StarPredicate predicate)
Returns the logical inverse of this Predicate. |
StarColumnPredicate |
orColumn(StarColumnPredicate predicate)
Returns this union of this Predicate with another. |
void |
toSql(SqlQuery sqlQuery,
StringBuilder buf)
|
void |
values(Collection<Object> collection)
Adds the values in this constraint to a collection. |
Methods inherited from class mondrian.rolap.agg.AbstractColumnPredicate |
---|
and, cloneListWithColumn, evaluate, getConstrainedColumn, getConstrainedColumnBitKey, getConstrainedColumnList, or, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public ListColumnPredicate(RolapStar.Column column, List<StarColumnPredicate> list)
column
- Column being constrainedlist
- List of child predicatesMethod Detail |
---|
public List<StarColumnPredicate> getPredicates()
public int hashCode()
hashCode
in class Object
public boolean equals(Object obj)
equals
in class Object
public void values(Collection<Object> collection)
StarColumnPredicate
collection
- Collection to add values topublic boolean evaluate(Object value)
StarColumnPredicate
true
for a
given value.
value
- Value
public boolean equalConstraint(StarPredicate that)
StarPredicate
Object.equals(Object)
: it
is possible for two different members to constrain the same column in the
same way.
equalConstraint
in interface StarPredicate
equalConstraint
in class AbstractColumnPredicate
that
- Other predicate
public void describe(StringBuilder buf)
StarPredicate
StringBuilder
.
For example:
buf
- Builder to append topublic StarColumnPredicate.Overlap intersect(StarColumnPredicate predicate)
StarColumnPredicate
predicate
- Predicate
public boolean mightIntersect(StarPredicate other)
StarColumnPredicate
other
- Other constraint
public StarColumnPredicate minus(StarPredicate predicate)
StarPredicate
predicate
- Predicate
public StarColumnPredicate orColumn(StarColumnPredicate predicate)
StarColumnPredicate
Unlike StarPredicate.or(mondrian.rolap.StarPredicate)
, the other predicate must be on this column, and
the result is a column predicate.
orColumn
in interface StarColumnPredicate
orColumn
in class AbstractColumnPredicate
predicate
- Another predicate on this column
public StarColumnPredicate cloneWithColumn(RolapStar.Column column)
StarColumnPredicate
We call this method to provide a fake column, then call
StarPredicate.toSql(mondrian.rolap.sql.SqlQuery, StringBuilder)
.
todo: remove this method when
bug 1767776
and
bug 1767779
are fixed.
public void toSql(SqlQuery sqlQuery, StringBuilder buf)
toSql
in interface StarPredicate
toSql
in class AbstractColumnPredicate
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |