Package org.teiid.query.sql.lang
Class DependentSetCriteria
- java.lang.Object
-
- org.teiid.query.sql.lang.Criteria
-
- org.teiid.query.sql.lang.PredicateCriteria
-
- org.teiid.query.sql.lang.AbstractSetCriteria
-
- org.teiid.query.sql.lang.DependentSetCriteria
-
- All Implemented Interfaces:
Cloneable
,PredicateCriteria.Negatable
,LanguageObject
,ContextReference
,Expression
public class DependentSetCriteria extends AbstractSetCriteria implements ContextReference
The DependentSetCriteria is missing the value set until it is filled during processing. This allows a criteria to contain a dynamic set of values provided by a separate processing node.- Since:
- 5.0.1
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DependentSetCriteria.AttributeComparison
-
Nested classes/interfaces inherited from class org.teiid.query.sql.lang.PredicateCriteria
PredicateCriteria.Negatable
-
Nested classes/interfaces inherited from interface org.teiid.query.sql.LanguageObject
LanguageObject.Util
-
-
Constructor Summary
Constructors Constructor Description DependentSetCriteria(Expression expr, String id)
Construct with the left expression
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
acceptVisitor(LanguageVisitor visitor)
Method for accepting a visitor.DependentSetCriteria
clone()
Deep copy of object.boolean
equals(Object obj)
Override equals() method.List<DependentSetCriteria.AttributeComparison>
getAttributes()
There is a mismatch between the expression form and the more convenient attribute comparison, so we reconstruct when neededString
getContextSymbol()
DependentValueSource
getDependentValueSource()
Option.MakeDep
getMakeDepOptions()
float
getMaxNdv()
float
getNdv()
Expression
getValueExpression()
Get the independent value expressionint
hashCode()
Get hash code.boolean
hasMultipleAttributes()
void
setAttributes(List<DependentSetCriteria.AttributeComparison> attributes)
void
setDependentValueSource(DependentValueSource dependentValueSource)
void
setMakeDepOptions(Option.MakeDep makeDep)
void
setMaxNdv(float maxNdv)
void
setNdv(float ndv)
void
setNegated(boolean negationFlag)
Sets the negation flag for this criteria.void
setValueExpression(Expression valueExpression)
Set the independent value expression-
Methods inherited from class org.teiid.query.sql.lang.AbstractSetCriteria
getExpression, isNegated, negate, setExpression
-
Methods inherited from class org.teiid.query.sql.lang.Criteria
applyDemorgan, combineCriteria, combineCriteria, combineCriteria, getType, separateCriteriaByAnd, toString
-
-
-
-
Constructor Detail
-
DependentSetCriteria
public DependentSetCriteria(Expression expr, String id)
Construct with the left expression
-
-
Method Detail
-
setAttributes
public void setAttributes(List<DependentSetCriteria.AttributeComparison> attributes)
-
getAttributes
public List<DependentSetCriteria.AttributeComparison> getAttributes()
There is a mismatch between the expression form and the more convenient attribute comparison, so we reconstruct when needed
-
hasMultipleAttributes
public boolean hasMultipleAttributes()
-
getContextSymbol
public String getContextSymbol()
- Specified by:
getContextSymbol
in interfaceContextReference
-
getMaxNdv
public float getMaxNdv()
-
setMaxNdv
public void setMaxNdv(float maxNdv)
-
getNdv
public float getNdv()
-
setNdv
public void setNdv(float ndv)
-
getValueExpression
public Expression getValueExpression()
Get the independent value expression- Returns:
- Returns the valueExpression.
-
setValueExpression
public void setValueExpression(Expression valueExpression)
Set the independent value expression- Parameters:
valueExpression
- The valueExpression to set.
-
acceptVisitor
public void acceptVisitor(LanguageVisitor visitor)
Description copied from interface:LanguageObject
Method for accepting a visitor. It is the responsibility of the language object to call back on the visitor.- Specified by:
acceptVisitor
in interfaceLanguageObject
- Parameters:
visitor
- Visitor being used
-
hashCode
public int hashCode()
Get hash code. WARNING: The hash code is based on data in the criteria. If data values are changed, the hash code will change - don't hash this object and change values.
-
equals
public boolean equals(Object obj)
Override equals() method.
-
clone
public DependentSetCriteria clone()
Deep copy of object. The values iterator source of this object will not be cloned - it will be passed over as is and shared with the original object, just like Reference.- Specified by:
clone
in interfaceLanguageObject
- Specified by:
clone
in classAbstractSetCriteria
- Returns:
- Deep copy of object
-
setNegated
public void setNegated(boolean negationFlag)
Description copied from class:AbstractSetCriteria
Sets the negation flag for this criteria.- Overrides:
setNegated
in classAbstractSetCriteria
- Parameters:
negationFlag
- true if this criteria contains a NOT; false otherwise
-
getDependentValueSource
public DependentValueSource getDependentValueSource()
-
setDependentValueSource
public void setDependentValueSource(DependentValueSource dependentValueSource)
-
setMakeDepOptions
public void setMakeDepOptions(Option.MakeDep makeDep)
-
getMakeDepOptions
public Option.MakeDep getMakeDepOptions()
-
-