Package org.eclipse.rdf4j.query.algebra
Class If
- java.lang.Object
-
- org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
-
- org.eclipse.rdf4j.query.algebra.If
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,GraphPatternGroupable
,QueryModelNode
,ValueExpr
,VariableScopeChange
public class If extends AbstractQueryModelNode implements ValueExpr
The IF function, as defined in SPARQL 1.1 Query.- See Also:
- Serialized Form
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description If
clone()
Returns a (deep) clone of this query model node.boolean
equals(java.lang.Object other)
Returns true if this query model node and its children are recursively equal to o and its children.ValueExpr
getAlternative()
ValueExpr
getCondition()
Gets the argument of this unary value operator.ValueExpr
getResult()
int
hashCode()
void
replaceChildNode(QueryModelNode current, QueryModelNode replacement)
Default implementation ofQueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)
that throws anIllegalArgumentException
indicating that current is not a child node of this node.void
setAlternative(ValueExpr alternative)
void
setCondition(ValueExpr condition)
Sets the condition argument of this unary value operator.void
setResult(ValueExpr result)
<X extends java.lang.Exception>
voidvisit(QueryModelVisitor<X> visitor)
Visits this node.<X extends java.lang.Exception>
voidvisitChildren(QueryModelVisitor<X> visitor)
Dummy implementation ofQueryModelNode.visitChildren(org.eclipse.rdf4j.query.algebra.QueryModelVisitor<X>)
that does nothing.-
Methods inherited from class org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
getCardinality, getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, isCardinalitySet, isGraphPatternGroup, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, resetCardinality, setCardinality, setCostEstimate, setGraphPatternGroup, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, setVariableScopeChange, shouldCacheCardinality, toHumanReadbleNumber, toString
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.eclipse.rdf4j.query.algebra.QueryModelNode
getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getSignature, getTotalTimeNanosActual, replaceWith, setCostEstimate, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, toString
-
-
-
-
Method Detail
-
getCondition
public ValueExpr getCondition()
Gets the argument of this unary value operator.- Returns:
- The operator's argument.
-
setCondition
public void setCondition(ValueExpr condition)
Sets the condition argument of this unary value operator.- Parameters:
condition
- The (new) condition argument for this operator, must not be null.
-
visit
public <X extends java.lang.Exception> void visit(QueryModelVisitor<X> visitor) throws X extends java.lang.Exception
Description copied from interface:QueryModelNode
Visits this node. The node reports itself to the visitor with the proper runtime type.- Specified by:
visit
in interfaceQueryModelNode
- Throws:
X extends java.lang.Exception
-
visitChildren
public <X extends java.lang.Exception> void visitChildren(QueryModelVisitor<X> visitor) throws X extends java.lang.Exception
Description copied from class:AbstractQueryModelNode
Dummy implementation ofQueryModelNode.visitChildren(org.eclipse.rdf4j.query.algebra.QueryModelVisitor<X>)
that does nothing. Subclasses should override this method when they have child nodes.- Specified by:
visitChildren
in interfaceQueryModelNode
- Overrides:
visitChildren
in classAbstractQueryModelNode
- Throws:
X extends java.lang.Exception
-
replaceChildNode
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement)
Description copied from class:AbstractQueryModelNode
Default implementation ofQueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)
that throws anIllegalArgumentException
indicating that current is not a child node of this node.- Specified by:
replaceChildNode
in interfaceQueryModelNode
- Overrides:
replaceChildNode
in classAbstractQueryModelNode
- Parameters:
current
- The current child node.replacement
- The new child node.
-
equals
public boolean equals(java.lang.Object other)
Description copied from interface:QueryModelNode
Returns true if this query model node and its children are recursively equal to o and its children.- Specified by:
equals
in interfaceQueryModelNode
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
clone
public If clone()
Description copied from interface:QueryModelNode
Returns a (deep) clone of this query model node. This method recursively clones the entire node tree, starting from this nodes.- Specified by:
clone
in interfaceQueryModelNode
- Specified by:
clone
in interfaceValueExpr
- Overrides:
clone
in classAbstractQueryModelNode
- Returns:
- A deep clone of this query model node.
-
setResult
public void setResult(ValueExpr result)
- Parameters:
result
- The result to set.
-
getResult
public ValueExpr getResult()
- Returns:
- Returns the result.
-
setAlternative
public void setAlternative(ValueExpr alternative)
- Parameters:
alternative
- The alternative to set.
-
getAlternative
public ValueExpr getAlternative()
- Returns:
- Returns the alternative.
-
-