# Package org.modeshape.jcr.query.engine.process

When executing a query, the processing phase involves "running" each branch in the optimized query plan, determining the set of nodes that satisfies each branch, and then joining each branch into a single result.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  BufferedRows.BufferedRow |
  BufferedRows.BufferedRowFactory<T extends BufferedRows.BufferedRow> |
  JoinSequence.BatchFactory | A factory for batches.
  JoinSequence.RangeProducer<K> |
  RestartableSequence.BatchSequence |

- Class Summary
  Class | Description
  --- | ---
  AbstractNodeKeysSequence | The base class of a `NodeSequence` implementation which extracts node keys from 2 different sequences and delegates to subclasses the behavior of deciding which batches to return based on which node keys are present/absent.
  BufferedRows |
  BufferedRows.DoubleNodeRow |
  BufferedRows.DoubleNodeRowSerializer |
  BufferedRows.MultiNodeRow |
  BufferedRows.MultiNodeRowSerializer |
  BufferedRows.QuadNodeRow |
  BufferedRows.QuadNodeRowSerializer |
  BufferedRows.SingleNodeRow |
  BufferedRows.SingleNodeRowSerializer |
  BufferedRows.TripleNodeRow |
  BufferedRows.TripleNodeRowSerializer |
  BufferingSequence |
  CountableSequence | A sequence that will return an accurate size for a given NodeSequence by buffering and counting the nodes and then accessing the buffered sequence.
  DelegatingSequence |
  DependentQuery | A node sequence implementation that performs an independent query to find results that are required for a dependent query.
  DistinctSequence | A `NodeSequence` that wraps another `NodeSequence` and returns only those rows that are seen for the first time.
  ExceptSequence | A `AbstractNodeKeysSequence` implementation which performs an EXCEPT operation between 2 other sequences, keeping only instances which don't have a corresponding value on the right.
  HashJoinSequence | A `NodeSequence` implementation that performs an equijoin of two delegate sequences.
  IntersectSequence | A `AbstractNodeKeysSequence` implementation which performs an INTERSECT operation between 2 other sequences, keeping only instances which have the same unique value in both sequences.
  JoinSequence | A `NodeSequence` implementation that performs a join of two delegate sequences.
  JoinSequence.Range<K> |
  PartialMemoryCountableSequence | A sequence that will return an accurate size for a given NodeSequence by buffering and counting the nodes and then accessing the buffered sequence.
  RestartableSequence | A `NodeSequence` that captures the buffers as they are used (or all at once) so that the sequence can be restarted.
  SecureSequence | A `NodeSequence` implementation which only returns nodes on which an existing query context has `ModeShapePermissions.READ` permissions.
  SortingSequence |

## Package org.modeshape.jcr.query.engine.process Description

When executing a query, the processing phase involves "running" each branch in the optimized query plan, determining the set of nodes that satisfies each branch, and then joining each branch into a single result. This package defines several `NodeSequence` implementations that perform various aspects of this processing.

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