public abstract class AbstractQueryModelNode extends Object implements QueryModelNode, VariableScopeChange, GraphPatternGroupable
QueryModelNode
.Constructor and Description |
---|
AbstractQueryModelNode() |
Modifier and Type | Method and Description |
---|---|
AbstractQueryModelNode |
clone()
Returns a (deep) clone of this query model node.
|
double |
getCostEstimate() |
QueryModelNode |
getParentNode()
Gets the node's parent.
|
long |
getResultSizeActual() |
double |
getResultSizeEstimate()
Returns the number of tuples that this QueryNode predicts will be outputted.
|
String |
getSignature()
Default implementation of
QueryModelNode.getSignature() that prints the name of the node's class. |
long |
getTotalTimeNanosActual() |
boolean |
isGraphPatternGroup()
Deprecated.
|
boolean |
isVariableScopeChange()
indicates if the node represents a variable scope change.
|
protected boolean |
nullEquals(Object o1,
Object o2) |
void |
replaceChildNode(QueryModelNode current,
QueryModelNode replacement)
Default implementation of
QueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode) that throws an
IllegalArgumentException indicating that current is not a child node of this node. |
protected <T extends QueryModelNode> |
replaceNodeInList(List<T> list,
QueryModelNode current,
QueryModelNode replacement) |
void |
replaceWith(QueryModelNode replacement)
Default implementation of
QueryModelNode.replaceWith(QueryModelNode) that throws an
IllegalArgumentException indicating that current is not a child node of this node. |
void |
setCostEstimate(double costEstimate) |
void |
setGraphPatternGroup(boolean isGraphPatternGroup)
Deprecated.
|
void |
setParentNode(QueryModelNode parent)
Sets the node's parent.
|
void |
setResultSizeActual(long resultSizeActual) |
void |
setResultSizeEstimate(double resultSizeEstimate) |
void |
setTotalTimeNanosActual(long totalTimeNanosActual) |
void |
setVariableScopeChange(boolean isVariableScopeChange)
Set the value of
VariableScopeChange.isVariableScopeChange() to true or false. |
String |
toString()
Returns an indented print of the node tree, starting from this node.
|
<X extends Exception> |
visitChildren(QueryModelVisitor<X> visitor)
Dummy implementation of
QueryModelNode.visitChildren(org.eclipse.rdf4j.query.algebra.QueryModelVisitor<X>) that does nothing. |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
equals, visit
public QueryModelNode getParentNode()
QueryModelNode
getParentNode
in interface QueryModelNode
public void setParentNode(QueryModelNode parent)
QueryModelNode
setParentNode
in interface QueryModelNode
parent
- The parent node for this node.public boolean isVariableScopeChange()
VariableScopeChange
isVariableScopeChange
in interface VariableScopeChange
public void setVariableScopeChange(boolean isVariableScopeChange)
VariableScopeChange
VariableScopeChange.isVariableScopeChange()
to true or false.setVariableScopeChange
in interface VariableScopeChange
@Deprecated public boolean isGraphPatternGroup()
GraphPatternGroupable
isGraphPatternGroup
in interface GraphPatternGroupable
@Deprecated public void setGraphPatternGroup(boolean isGraphPatternGroup)
GraphPatternGroupable
GraphPatternGroupable.isGraphPatternGroup()
to true or false.setGraphPatternGroup
in interface GraphPatternGroupable
public <X extends Exception> void visitChildren(QueryModelVisitor<X> visitor) throws X extends Exception
QueryModelNode.visitChildren(org.eclipse.rdf4j.query.algebra.QueryModelVisitor<X>)
that does nothing. Subclasses should override this
method when they have child nodes.visitChildren
in interface QueryModelNode
X extends Exception
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement)
QueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)
that throws an
IllegalArgumentException
indicating that current is not a child node of this node.replaceChildNode
in interface QueryModelNode
current
- The current child node.replacement
- The new child node.public void replaceWith(QueryModelNode replacement)
QueryModelNode.replaceWith(QueryModelNode)
that throws an
IllegalArgumentException
indicating that current is not a child node of this node.replaceWith
in interface QueryModelNode
replacement
- The new node.public String getSignature()
QueryModelNode.getSignature()
that prints the name of the node's class.getSignature
in interface QueryModelNode
public String toString()
QueryModelNode
toString
in interface QueryModelNode
toString
in class Object
public AbstractQueryModelNode clone()
QueryModelNode
clone
in interface QueryModelNode
clone
in class Object
protected <T extends QueryModelNode> boolean replaceNodeInList(List<T> list, QueryModelNode current, QueryModelNode replacement)
public double getResultSizeEstimate()
QueryModelNode
getResultSizeEstimate
in interface QueryModelNode
public void setResultSizeEstimate(double resultSizeEstimate)
setResultSizeEstimate
in interface QueryModelNode
public long getResultSizeActual()
getResultSizeActual
in interface QueryModelNode
public void setResultSizeActual(long resultSizeActual)
setResultSizeActual
in interface QueryModelNode
public double getCostEstimate()
getCostEstimate
in interface QueryModelNode
public void setCostEstimate(double costEstimate)
setCostEstimate
in interface QueryModelNode
public long getTotalTimeNanosActual()
getTotalTimeNanosActual
in interface QueryModelNode
public void setTotalTimeNanosActual(long totalTimeNanosActual)
setTotalTimeNanosActual
in interface QueryModelNode
Copyright © 2015-2022 Eclipse Foundation. All Rights Reserved.