Uses of Class
org.modeshape.graph.query.plan.PlanNode

Packages that use PlanNode
org.modeshape.graph The ModeShape Graph API defines the types that allow you to work with content organized as a graph. 
org.modeshape.graph.query The Query API provides a mechanism for building and executing queries. 
org.modeshape.graph.query.optimize This package contains the Optimizer interface, a rule-based optimizer implementation, and library of optimization rules. 
org.modeshape.graph.query.plan This package defines the Planner interface, the CanonicalPlanner implementation, and the PlanNode class that is used to represent a canonical query plan. 
org.modeshape.graph.query.process This package defines the QueryProcessor interface, which is responsible for constructing for each query a tree of ProcessingComponent objects that each are responsible for processing a specific aspect of the query and returning the tuples to the parent component. 
 

Uses of PlanNode in org.modeshape.graph
 

Constructors in org.modeshape.graph with parameters of type PlanNode
Graph.AccessQueryProcessor(String graphSourceName, String workspaceName, QueryContext context, QueryResults.Columns columns, PlanNode accessNode)
           
 

Uses of PlanNode in org.modeshape.graph.query
 

Methods in org.modeshape.graph.query with parameters of type PlanNode
protected  QueryResultColumns QueryEngine.determineQueryResultColumns(PlanNode optimizedPlan, PlanHints hints)
           
 

Uses of PlanNode in org.modeshape.graph.query.optimize
 

Methods in org.modeshape.graph.query.optimize that return PlanNode
protected  PlanNode RaiseSelectCriteria.copySelectNode(QueryContext context, PlanNode selectNode, SelectorName selectorName, String propertyName, SelectorName copySelectorName, String copyPropertyName)
           
protected  PlanNode CopyCriteria.copySelectNode(QueryContext context, PlanNode selectNode, SelectorName selectorName, String propertyName, SelectorName copySelectorName, String copyPropertyName)
           
 PlanNode RightOuterToLeftOuterJoins.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RewriteIdentityJoins.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RewriteAsRangeCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode ReplaceViews.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RemoveEmptyAccessNodes.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RaiseSelectCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode PushSelectCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode PushProjects.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode OptimizerRule.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode CopyCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode ChooseJoinAlgorithm.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode AddAccessNodes.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
protected  PlanNode PushSelectCriteria.findBestChildForCriteria(PlanNode criteriaNode, PlanNode originatingNode)
           
protected  PlanNode PushSelectCriteria.findOriginatingNode(PlanNode criteriaNode, List<PlanNode> originatingNodes)
          Find the first node that has all of the same selectors as the supplied criteria.
 PlanNode RuleBasedOptimizer.optimize(QueryContext context, PlanNode plan)
          Optimize the supplied query plan and produce an executable processor plan.
 PlanNode Optimizer.optimize(QueryContext context, PlanNode plan)
          Optimize the supplied query plan and produce an executable processor plan.
 

Methods in org.modeshape.graph.query.optimize with parameters of type PlanNode
protected  boolean PushSelectCriteria.atBoundary(PlanNode criteriaNode, PlanNode originatingNode)
          Determine whether all of the nodes between the criteria node and its originating node are criteria (SELECT) nodes.
protected  PlanNode RaiseSelectCriteria.copySelectNode(QueryContext context, PlanNode selectNode, SelectorName selectorName, String propertyName, SelectorName copySelectorName, String copyPropertyName)
           
protected  PlanNode CopyCriteria.copySelectNode(QueryContext context, PlanNode selectNode, SelectorName selectorName, String propertyName, SelectorName copySelectorName, String copyPropertyName)
           
protected  void CopyCriteria.copySelectNodes(QueryContext context, PlanNode fromJoined, PlanNode toJoined)
           
 PlanNode RightOuterToLeftOuterJoins.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RewriteIdentityJoins.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RewriteAsRangeCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode ReplaceViews.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RemoveEmptyAccessNodes.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode RaiseSelectCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode PushSelectCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode PushProjects.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode OptimizerRule.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode CopyCriteria.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode ChooseJoinAlgorithm.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
 PlanNode AddAccessNodes.execute(QueryContext context, PlanNode plan, LinkedList<OptimizerRule> ruleStack)
          Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
protected  PlanNode PushSelectCriteria.findBestChildForCriteria(PlanNode criteriaNode, PlanNode originatingNode)
           
protected  PlanNode PushSelectCriteria.findOriginatingNode(PlanNode criteriaNode, List<PlanNode> originatingNodes)
          Find the first node that has all of the same selectors as the supplied criteria.
 PlanNode RuleBasedOptimizer.optimize(QueryContext context, PlanNode plan)
          Optimize the supplied query plan and produce an executable processor plan.
 PlanNode Optimizer.optimize(QueryContext context, PlanNode plan)
          Optimize the supplied query plan and produce an executable processor plan.
protected  boolean PushSelectCriteria.pushDownJoinCriteria(PlanNode criteriaNode, PlanNode joinNode)
          Attempt to push down criteria that applies to the JOIN as additional constraints on the JOIN itself.
protected  boolean PushSelectCriteria.pushTowardsOriginatingNode(PlanNode criteriaNode, PlanNode originatingNode)
          Push the criteria node as close to the originating node as possible.
protected  void RewriteIdentityJoins.rewriteJoinNode(QueryContext context, PlanNode joinNode, Map<SelectorName,SelectorName> rewrittenSelectors)
           
 

Method parameters in org.modeshape.graph.query.optimize with type arguments of type PlanNode
protected  PlanNode PushSelectCriteria.findOriginatingNode(PlanNode criteriaNode, List<PlanNode> originatingNodes)
          Find the first node that has all of the same selectors as the supplied criteria.
 

Uses of PlanNode in org.modeshape.graph.query.plan
 

Methods in org.modeshape.graph.query.plan that return PlanNode
protected  PlanNode CanonicalPlanner.attachCriteria(QueryContext context, PlanNode plan, Constraint constraint)
          Attach all criteria above the join nodes.
protected  PlanNode CanonicalPlanner.attachDuplicateRemoval(QueryContext context, PlanNode plan)
          Attach DUP_REMOVE node at top of tree.
protected  PlanNode CanonicalPlanner.attachLimits(QueryContext context, PlanNode plan, Limit limit)
          Attach a LIMIT node at the top of the plan tree.
protected  PlanNode CanonicalPlanner.attachProject(QueryContext context, PlanNode plan, List<? extends Column> columns, Map<SelectorName,Schemata.Table> selectors)
          Attach a PROJECT node at the top of the plan tree.
protected  PlanNode CanonicalPlanner.attachSorting(QueryContext context, PlanNode plan, List<? extends Ordering> orderings)
          Attach SORT node at top of tree.
 PlanNode PlanNode.clone()
           This class returns a new clone of the plan tree rooted at this node.
protected  PlanNode PlanNode.cloneWithoutNewParent()
           
protected  PlanNode CanonicalPlanner.createCanonicalPlan(QueryContext context, Query query)
          Create a canonical query plan for the given query.
protected  PlanNode CanonicalPlanner.createCanonicalPlan(QueryContext context, SetQuery query)
          Create a canonical query plan for the given set query.
 PlanNode Planner.createPlan(QueryContext context, QueryCommand query)
          Create a canonical query plan for the given command.
 PlanNode CanonicalPlanner.createPlan(QueryContext context, QueryCommand query)
          Create a canonical query plan for the given command.
protected  PlanNode CanonicalPlanner.createPlanNode(QueryContext context, Source source, Map<SelectorName,Schemata.Table> usedSelectors)
          Create a JOIN or SOURCE node that contain the source information.
 PlanNode PlanNode.findAncestor(PlanNode.Type typeToFind)
          Starting at the parent of this node, find the lowest (also closest) ancestor that has the specified type.
 PlanNode PlanNode.findAncestor(PlanNode.Type firstTypeToFind, PlanNode.Type... additionalTypesToFind)
          Starting at the parent of this node, find the lowest (also closest) ancestor that has one of the specified types.
 PlanNode PlanNode.findAncestor(Set<PlanNode.Type> typesToFind)
          Starting at the parent of this node, find the lowest (also closest) ancestor that has one of the specified types.
 PlanNode PlanNode.findAtOrBelow(PlanNode.Traversal order, PlanNode.Type typeToFind)
          Find the first node with the specified type that are at or below this node.
 PlanNode PlanNode.findAtOrBelow(PlanNode.Traversal order, PlanNode.Type firstTypeToFind, PlanNode.Type... additionalTypesToFind)
          Find the first node with one of the specified types that are at or below this node.
 PlanNode PlanNode.findAtOrBelow(PlanNode.Traversal order, Set<PlanNode.Type> typesToFind)
          Find the first node with one of the specified types that are at or below this node.
 PlanNode PlanNode.findAtOrBelow(PlanNode.Type typeToFind)
          Find the first node with the specified type that are at or below this node.
 PlanNode PlanNode.findAtOrBelow(PlanNode.Type firstTypeToFind, PlanNode.Type... additionalTypesToFind)
          Find the first node with one of the specified types that are at or below this node.
 PlanNode PlanNode.findAtOrBelow(Set<PlanNode.Type> typesToFind)
          Find the first node with one of the specified types that are at or below this node.
 PlanNode PlanNode.getChild(int index)
          Get the child at the supplied index.
 PlanNode PlanNode.getFirstChild()
          Get the first child.
 PlanNode PlanNode.getLastChild()
          Get the last child.
 PlanNode PlanNode.getParent()
          Get the parent of this node.
 PlanNode PlanNode.removeFromParent()
          Remove this node from its parent, and return the node that used to be the parent of this node.
 

Methods in org.modeshape.graph.query.plan that return types with arguments of type PlanNode
 List<PlanNode> PlanNode.findAllAtOrBelow()
          Find all of the nodes that are at or below this node.
 List<PlanNode> PlanNode.findAllAtOrBelow(PlanNode.Traversal order)
          Find all of the nodes that are at or below this node.
 List<PlanNode> PlanNode.findAllAtOrBelow(PlanNode.Traversal order, PlanNode.Type typeToFind)
          Find all of the nodes of the specified type that are at or below this node.
 List<PlanNode> PlanNode.findAllAtOrBelow(PlanNode.Traversal order, PlanNode.Type firstTypeToFind, PlanNode.Type... additionalTypesToFind)
          Find all of the nodes with one of the specified types that are at or below this node.
 List<PlanNode> PlanNode.findAllAtOrBelow(PlanNode.Traversal order, Set<PlanNode.Type> typesToFind)
          Find all of the nodes with one of the specified types that are at or below this node.
 List<PlanNode> PlanNode.findAllAtOrBelow(PlanNode.Type typeToFind)
          Find all of the nodes of the specified type that are at or below this node.
 List<PlanNode> PlanNode.findAllAtOrBelow(PlanNode.Type firstTypeToFind, PlanNode.Type... additionalTypesToFind)
          Find all of the nodes with one of the specified types that are at or below this node.
 List<PlanNode> PlanNode.findAllAtOrBelow(Set<PlanNode.Type> typesToFind)
          Find all of the nodes with one of the specified types that are at or below this node.
 List<PlanNode> PlanNode.findAllFirstNodesAtOrBelow(PlanNode.Type typeToFind)
          Look at nodes below this node, searching for nodes that have the supplied type.
 List<PlanNode> PlanNode.getChildren()
          Get the unmodifiable list of child nodes.
 LinkedList<PlanNode> PlanNode.getPathTo(PlanNode descendant)
          Get the path from this node (inclusive) to the supplied descendant node (inclusive)
 Iterator<PlanNode> PlanNode.iterator()
           This iterator is immutable.
 List<PlanNode> PlanNode.removeAllChildren()
          Remove all children from this node.
 

Methods in org.modeshape.graph.query.plan with parameters of type PlanNode
 void PlanNode.addChildren(PlanNode first, PlanNode second)
          Add the supplied nodes at the end of the list of children.
 void PlanNode.addChildren(PlanNode first, PlanNode second, PlanNode third)
          Add the supplied nodes at the end of the list of children.
 void PlanNode.addFirstChild(PlanNode child)
          Add the supplied node to the front of the list of children.
 void PlanNode.addLastChild(PlanNode child)
          Add the supplied node to the end of the list of children.
protected  PlanNode CanonicalPlanner.attachCriteria(QueryContext context, PlanNode plan, Constraint constraint)
          Attach all criteria above the join nodes.
protected  PlanNode CanonicalPlanner.attachDuplicateRemoval(QueryContext context, PlanNode plan)
          Attach DUP_REMOVE node at top of tree.
protected  PlanNode CanonicalPlanner.attachLimits(QueryContext context, PlanNode plan, Limit limit)
          Attach a LIMIT node at the top of the plan tree.
protected  PlanNode CanonicalPlanner.attachProject(QueryContext context, PlanNode plan, List<? extends Column> columns, Map<SelectorName,Schemata.Table> selectors)
          Attach a PROJECT node at the top of the plan tree.
protected  PlanNode CanonicalPlanner.attachSorting(QueryContext context, PlanNode plan, List<? extends Ordering> orderings)
          Attach SORT node at top of tree.
static PlanUtil.ColumnMapping PlanUtil.createMappingFor(Schemata.View view, PlanNode viewPlan)
           
static PlanUtil.ColumnMapping PlanUtil.createMappingForAliased(SelectorName tableAlias, Schemata.Table table, PlanNode tableSourceNode)
           
static PlanUtil.ColumnMapping PlanUtil.createMappingForAliased(SelectorName viewAlias, Schemata.View view, PlanNode viewPlan)
           
 void PlanNode.extractChild(PlanNode child)
          Remove the child node from this node, and replace that child with its first child (if there is one).
static List<Column> PlanUtil.findRequiredColumns(QueryContext context, PlanNode planNode)
          Collected the minimum set of columns from the supplied table that are required by or used within the plan at the supplied node or above.
static List<String> PlanUtil.findRequiredColumnTypes(QueryContext context, List<Column> columns, PlanNode node)
           
 LinkedList<PlanNode> PlanNode.getPathTo(PlanNode descendant)
          Get the path from this node (inclusive) to the supplied descendant node (inclusive)
 void PlanNode.insertAsParent(PlanNode newParent)
          Insert the supplied node into the plan node tree immediately above this node.
 boolean PlanNode.isAbove(PlanNode possibleDescendant)
          Determine if the supplied node is a descendant of this node.
 boolean PlanNode.isBelow(PlanNode possibleAncestor)
          Determine if the supplied node is an ancestor of this node.
 boolean PlanNode.isSameAs(PlanNode other)
          Determine whether the supplied plan is equivalent to this plan.
 boolean PlanNode.removeChild(PlanNode child)
          Remove the node from this node.
 boolean PlanNode.replaceChild(PlanNode child, PlanNode replacement)
          Replace the supplied child with another node.
static Constraint PlanUtil.replaceReferences(QueryContext context, Constraint constraint, PlanUtil.ColumnMapping mapping, PlanNode node)
           
static void PlanUtil.replaceReferencesToRemovedSource(QueryContext context, PlanNode planNode, Map<SelectorName,SelectorName> rewrittenSelectors)
           
static DynamicOperand PlanUtil.replaceViewReferences(QueryContext context, DynamicOperand operand, PlanUtil.ColumnMapping mapping, PlanNode node)
           
static JoinCondition PlanUtil.replaceViewReferences(QueryContext context, JoinCondition joinCondition, PlanUtil.ColumnMapping mapping, PlanNode node)
           
static void PlanUtil.replaceViewReferences(QueryContext context, PlanNode topOfViewInPlan, PlanUtil.ColumnMapping mappings)
           
protected static void PlanUtil.replaceViewReferences(QueryContext context, PlanNode node, PlanUtil.ColumnMapping mappings, SelectorName viewName, List<PlanNode> potentiallyRemovableSources)
           
 void PlanNode.setParent(PlanNode parent)
          Set the parent for this node.
static void PlanUtil.setSelectorsOnSubplan(PlanNode subplan, Set<SelectorName> selectors)
           
 

Method parameters in org.modeshape.graph.query.plan with type arguments of type PlanNode
 void PlanNode.addChildren(Iterable<PlanNode> otherChildren)
          Add the supplied nodes at the end of the list of children.
protected static void PlanUtil.replaceViewReferences(QueryContext context, PlanNode node, PlanUtil.ColumnMapping mappings, SelectorName viewName, List<PlanNode> potentiallyRemovableSources)
           
 

Constructors in org.modeshape.graph.query.plan with parameters of type PlanNode
PlanNode(PlanNode.Type type, PlanNode parent)
          Create a new plan node with the supplied initial type ad that is a child of the supplied parent.
PlanNode(PlanNode.Type type, PlanNode parent, Iterable<SelectorName> selectors)
          Create a new plan node with the supplied initial type ad that is a child of the supplied parent.
PlanNode(PlanNode.Type type, PlanNode parent, SelectorName... selectors)
          Create a new plan node with the supplied initial type ad that is a child of the supplied parent.
 

Uses of PlanNode in org.modeshape.graph.query.process
 

Fields in org.modeshape.graph.query.process declared as PlanNode
protected  PlanNode AbstractAccessComponent.accessNode
           
 

Methods in org.modeshape.graph.query.process with parameters of type PlanNode
protected abstract  ProcessingComponent QueryProcessor.createAccessComponent(QueryCommand originalQuery, QueryContext context, PlanNode accessNode, QueryResults.Columns resultColumns, SelectComponent.Analyzer analyzer)
          Create the ProcessingComponent that processes a single PlanNode.Type.ACCESS branch of a query plan.
protected  QueryResults.Columns QueryProcessor.createColumnsFor(PlanNode node, QueryResults.Columns projectedColumns)
           
protected  ProcessingComponent QueryProcessor.createComponent(QueryCommand originalQuery, QueryContext context, PlanNode node, QueryResults.Columns columns, SelectComponent.Analyzer analyzer)
          Method that is called to build up the ProcessingComponent objects that correspond to the optimized query plan.
 QueryResults QueryProcessor.execute(QueryContext context, QueryCommand command, QueryResults.Statistics statistics, PlanNode plan)
          Process the supplied query plan for the given command and return the results.
 QueryResults Processor.execute(QueryContext context, QueryCommand command, QueryResults.Statistics statistics, PlanNode plan)
          Process the supplied query plan for the given command and return the results.
 

Constructors in org.modeshape.graph.query.process with parameters of type PlanNode
AbstractAccessComponent(QueryContext context, QueryResults.Columns columns, PlanNode accessNode)
           
 



Copyright © 2008-2010 JBoss, a division of Red Hat. All Rights Reserved.