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 classDependentSetCriteria.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 voidacceptVisitor(LanguageVisitor visitor)Method for accepting a visitor.DependentSetCriteriaclone()Deep copy of object.booleanequals(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 neededStringgetContextSymbol()DependentValueSourcegetDependentValueSource()Option.MakeDepgetMakeDepOptions()floatgetMaxNdv()floatgetNdv()ExpressiongetValueExpression()Get the independent value expressioninthashCode()Get hash code.booleanhasMultipleAttributes()voidsetAttributes(List<DependentSetCriteria.AttributeComparison> attributes)voidsetDependentValueSource(DependentValueSource dependentValueSource)voidsetMakeDepOptions(Option.MakeDep makeDep)voidsetMaxNdv(float maxNdv)voidsetNdv(float ndv)voidsetNegated(boolean negationFlag)Sets the negation flag for this criteria.voidsetValueExpression(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:
getContextSymbolin 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:LanguageObjectMethod for accepting a visitor. It is the responsibility of the language object to call back on the visitor.- Specified by:
acceptVisitorin 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:
clonein interfaceLanguageObject- Specified by:
clonein classAbstractSetCriteria- Returns:
- Deep copy of object
-
setNegated
public void setNegated(boolean negationFlag)
Description copied from class:AbstractSetCriteriaSets the negation flag for this criteria.- Overrides:
setNegatedin 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()
-
-