Package org.eclipse.rdf4j.query.algebra
Class GroupElem
- java.lang.Object
-
- org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
-
- org.eclipse.rdf4j.query.algebra.GroupElem
-
- All Implemented Interfaces:
Serializable
,Cloneable
,QueryModelNode
,VariableScopeChange
public class GroupElem extends AbstractQueryModelNode
A tuple operator that groups tuples that have a specific set of equivalent variable bindings, and that can apply aggregate functions on the grouped results.- Author:
- David Huynh, Arjohn Kampman
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description GroupElem(String name, AggregateOperator operator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GroupElem
clone()
Returns a (deep) clone of this query model node.boolean
equals(Object other)
Returns true if this query model node and its children are recursively equal to o and its children.String
getName()
AggregateOperator
getOperator()
String
getSignature()
Default implementation ofQueryModelNode.getSignature()
that prints the name of the node's class.int
hashCode()
void
replaceChildNode(QueryModelNode current, QueryModelNode replacement)
Replaces one of the child nodes with a new node.void
setName(String name)
void
setOperator(AggregateOperator operator)
<X extends Exception>
voidvisit(QueryModelVisitor<X> visitor)
Visits this node.<X extends Exception>
voidvisitChildren(QueryModelVisitor<X> visitor)
Visits the children of this node.-
Methods inherited from class org.eclipse.rdf4j.query.algebra.AbstractQueryModelNode
getCardinality, getCostEstimate, getParentNode, getResultSizeActual, getResultSizeEstimate, getTotalTimeNanosActual, isCardinalitySet, isVariableScopeChange, nullEquals, replaceNodeInList, replaceWith, resetCardinality, setCardinality, setCostEstimate, setParentNode, setResultSizeActual, setResultSizeEstimate, setTotalTimeNanosActual, setVariableScopeChange, shouldCacheCardinality, toString
-
-
-
-
Constructor Detail
-
GroupElem
public GroupElem(String name, AggregateOperator operator)
-
-
Method Detail
-
getName
public String getName()
-
setName
public void setName(String name)
-
getOperator
public AggregateOperator getOperator()
-
setOperator
public void setOperator(AggregateOperator operator)
-
visit
public <X extends Exception> void visit(QueryModelVisitor<X> visitor) throws X extends Exception
Description copied from interface:QueryModelNode
Visits this node. The node reports itself to the visitor with the proper runtime type.- Throws:
X extends Exception
-
visitChildren
public <X extends Exception> void visitChildren(QueryModelVisitor<X> visitor) throws X extends Exception
Description copied from interface:QueryModelNode
Visits the children of this node. The node callsQueryModelNode.visit(QueryModelVisitor)
on all of its child nodes.- Throws:
X extends Exception
-
replaceChildNode
public void replaceChildNode(QueryModelNode current, QueryModelNode replacement)
Description copied from interface:QueryModelNode
Replaces one of the child nodes with a new node.- Parameters:
current
- The current child node.replacement
- The new child node.
-
getSignature
public String getSignature()
Description copied from class:AbstractQueryModelNode
Default implementation ofQueryModelNode.getSignature()
that prints the name of the node's class.- Specified by:
getSignature
in interfaceQueryModelNode
- Overrides:
getSignature
in classAbstractQueryModelNode
- Returns:
- The node's signature, e.g. SLICE (offset=10, limit=10).
-
equals
public boolean equals(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 classObject
-
clone
public GroupElem 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
- Overrides:
clone
in classAbstractQueryModelNode
- Returns:
- A deep clone of this query model node.
-
-