mondrian.rolap.agg
public class MinusStarPredicate extends AbstractColumnPredicate
StarPredicate
which evaluates to true if its
first child evaluates to true and its second child evaluates to false.AbstractColumnPredicate.Factory
StarColumnPredicate.Overlap
constrainedColumn
WILDCARD
Constructor and Description |
---|
MinusStarPredicate(StarColumnPredicate plus,
StarColumnPredicate minus)
Creates a MinusStarPredicate.
|
Modifier and Type | Method and Description |
---|---|
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 |
equals(Object obj) |
boolean |
evaluate(Object value)
Returns whether this constraint would return
true for a
given value. |
RolapStar.Column |
getConstrainedColumn()
Returns the column constrained by this predicate.
|
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.
|
void |
values(Collection<Object> collection)
Adds the values in this constraint to a collection.
|
and, cloneListWithColumn, equalConstraint, evaluate, getConstrainedColumnBitKey, getConstrainedColumnList, or, orColumn, toSql, toString
public MinusStarPredicate(StarColumnPredicate plus, StarColumnPredicate minus)
plus
- Positive predicateminus
- Negative predicatepublic RolapStar.Column getConstrainedColumn()
StarColumnPredicate
getConstrainedColumn
in interface StarColumnPredicate
getConstrainedColumn
in class AbstractColumnPredicate
public void values(Collection<Object> collection)
StarColumnPredicate
collection
- Collection to add values topublic boolean evaluate(Object value)
StarColumnPredicate
true
for a
given value.value
- Valuepublic void describe(StringBuilder buf)
StarPredicate
StringBuilder
.
For example:buf
- Builder to append topublic StarColumnPredicate.Overlap intersect(StarColumnPredicate predicate)
StarColumnPredicate
predicate
- Predicatepublic boolean mightIntersect(StarPredicate other)
StarColumnPredicate
other
- Other constraintpublic StarColumnPredicate minus(StarPredicate predicate)
StarPredicate
predicate
- Predicatepublic 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 MONDRIAN-313
and
bug MONDRIAN-314
are fixed.