public class ValueColumnPredicate extends AbstractColumnPredicate implements Comparable
AbstractColumnPredicate.Factory
StarColumnPredicate.Overlap
constrainedColumn
WILDCARD
Constructor and Description |
---|
ValueColumnPredicate(RolapStar.Column constrainedColumn,
Object value)
Creates a column constraint.
|
Modifier and Type | Method and Description |
---|---|
BitKey |
checkInList(BitKey inListLHSBitKey) |
StarColumnPredicate |
cloneWithColumn(RolapStar.Column column)
This method is required because unfortunately some ColumnPredicate
objects are created without a column.
|
int |
compareTo(Object o) |
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 other) |
boolean |
evaluate(Object value)
Returns whether this constraint would return
true for a
given value. |
Object |
getValue()
Returns the value which the column is compared to.
|
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 |
toInListSql(SqlQuery sqlQuery,
StringBuilder buf) |
void |
toSql(SqlQuery sqlQuery,
StringBuilder buf) |
String |
toString() |
void |
values(Collection<Object> collection)
Adds the values in this constraint to a collection.
|
and, cloneListWithColumn, evaluate, getConstrainedColumn, getConstrainedColumnBitKey, getConstrainedColumnList, or, orColumn
public ValueColumnPredicate(RolapStar.Column constrainedColumn, Object value)
value
- Value to constraint the column to. (We require that it is
Comparable
because we will sort the values in order to
generate deterministic SQL.)public Object getValue()
public String toString()
toString
in class AbstractColumnPredicate
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 predicatepublic int compareTo(Object o)
compareTo
in interface Comparable
public void values(Collection<Object> collection)
StarColumnPredicate
values
in interface StarColumnPredicate
collection
- Collection to add values topublic boolean evaluate(Object value)
StarColumnPredicate
true
for a
given value.evaluate
in interface StarColumnPredicate
value
- Valuepublic void describe(StringBuilder buf)
StarPredicate
StringBuilder
.
For example:describe
in interface StarPredicate
buf
- Builder to append topublic StarColumnPredicate.Overlap intersect(StarColumnPredicate predicate)
StarColumnPredicate
intersect
in interface StarColumnPredicate
predicate
- Predicatepublic boolean mightIntersect(StarPredicate other)
StarColumnPredicate
mightIntersect
in interface StarColumnPredicate
other
- Other constraintpublic StarColumnPredicate minus(StarPredicate predicate)
StarPredicate
minus
in interface StarColumnPredicate
minus
in interface 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.
cloneWithColumn
in interface StarColumnPredicate
public void toSql(SqlQuery sqlQuery, StringBuilder buf)
toSql
in interface StarPredicate
toSql
in class AbstractColumnPredicate
public void toInListSql(SqlQuery sqlQuery, StringBuilder buf)
Copyright © 2018 Hitachi Vantara. All rights reserved.