org.openrdf.query.algebra
Class Group
java.lang.Object
org.openrdf.query.algebra.QueryModelNodeBase
org.openrdf.query.algebra.UnaryTupleOperator
org.openrdf.query.algebra.Group
- All Implemented Interfaces:
- Cloneable, QueryModelNode, TupleExpr
public class Group
- extends UnaryTupleOperator
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
Group
public Group(TupleExpr arg)
Group
public Group(TupleExpr arg,
Iterable<String> groupBindingNames)
Group
public Group(TupleExpr arg,
Iterable<String> groupBindingNames,
Iterable<GroupElem> groupElements)
getGroupBindingNames
public Set<String> getGroupBindingNames()
addGroupBindingName
public void addGroupBindingName(String bindingName)
setGroupBindingNames
public void setGroupBindingNames(Iterable<String> bindingNames)
getGroupElements
public List<GroupElem> getGroupElements()
addGroupElement
public void addGroupElement(GroupElem groupElem)
setGroupElements
public void setGroupElements(Iterable<GroupElem> elements)
getAggregateBindingNames
public Set<String> getAggregateBindingNames()
getBindingNames
public Set<String> getBindingNames()
- Description copied from interface:
TupleExpr
- Gets the names of the bindings that are returned by this tuple expression
when it is evaluated.
- Specified by:
getBindingNames in interface TupleExpr- Overrides:
getBindingNames in class UnaryTupleOperator
- Returns:
- A set of binding names.
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 class:
QueryModelNodeBase
- Dummy implementation of
QueryModelNode.visitChildren(org.openrdf.query.algebra.QueryModelVisitor) that does
nothing. Subclasses should override this method when they have child
nodes.
- Specified by:
visitChildren in interface QueryModelNode- Overrides:
visitChildren in class UnaryTupleOperator
- Throws:
X extends Exception
replaceChildNode
public void replaceChildNode(QueryModelNode current,
QueryModelNode replacement)
- Description copied from class:
QueryModelNodeBase
- Default implementation of
QueryModelNode.replaceChildNode(QueryModelNode, QueryModelNode)
that throws an IllegalArgumentException indicating that
current is not a child node of this node.
- Specified by:
replaceChildNode in interface QueryModelNode- Overrides:
replaceChildNode in class UnaryTupleOperator
- Parameters:
current - The current child node.replacement - The new child node.
clone
public Group 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 interface QueryModelNode- Specified by:
clone in interface TupleExpr- Overrides:
clone in class UnaryTupleOperator
- Returns:
- A deep clone of this query model node.
Copyright © 2001-2007 Aduna. All Rights Reserved.