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 GroupElemclone()Returns a (deep) clone of this query model node.booleanequals(Object other)Returns true if this query model node and its children are recursively equal to o and its children.StringgetName()AggregateOperatorgetOperator()StringgetSignature()Default implementation ofQueryModelNode.getSignature()that prints the name of the node's class.inthashCode()voidreplaceChildNode(QueryModelNode current, QueryModelNode replacement)Replaces one of the child nodes with a new node.voidsetName(String name)voidsetOperator(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:QueryModelNodeVisits 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:QueryModelNodeVisits 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:QueryModelNodeReplaces 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:AbstractQueryModelNodeDefault implementation ofQueryModelNode.getSignature()that prints the name of the node's class.- Specified by:
getSignaturein interfaceQueryModelNode- Overrides:
getSignaturein classAbstractQueryModelNode- Returns:
- The node's signature, e.g. SLICE (offset=10, limit=10).
-
equals
public boolean equals(Object other)
Description copied from interface:QueryModelNodeReturns true if this query model node and its children are recursively equal to o and its children.- Specified by:
equalsin interfaceQueryModelNode- Overrides:
equalsin classObject
-
clone
public GroupElem clone()
Description copied from interface:QueryModelNodeReturns a (deep) clone of this query model node. This method recursively clones the entire node tree, starting from this nodes.- Specified by:
clonein interfaceQueryModelNode- Overrides:
clonein classAbstractQueryModelNode- Returns:
- A deep clone of this query model node.
-
-