# Uses of Package
org.modeshape.jcr.query.process

- Packages that use org.modeshape.jcr.query.process
  Package | Description
  --- | ---
  org.modeshape.jcr.query.lucene | The core query engine, which currently uses Lucene for indexing and raw queries, and the Hibernate Search engine (which does not depend on or use Hibernate Core or JPA) for updating and querying the Lucene indexes.
  org.modeshape.jcr.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.

- Classes in org.modeshape.jcr.query.process used by org.modeshape.jcr.query.lucene
  Class and Description
  AbstractAccessComponent A reusable base class for `ProcessingComponent` implementations that does everything except obtain the correct `QueryResults.Location` objects for the query results.
  ProcessingComponent A component that performs (some) portion of the query processing by `returning the tuples` that result from this stage of processing.
  Processor Interface for a query processor.
  QueryEngine A query engine that is able to execute formal queries expressed in the Graph API's `Abstract Query Model`.
  QueryProcessor An abstract `Processor` implementation that builds a tree of `ProcessingComponent` objects to perform the different parts of the query processing logic.

- Classes in org.modeshape.jcr.query.process used by org.modeshape.jcr.query.process
  Class and Description
  DelegatingComponent
  JoinComponent
  JoinComponent.Joinable Interface defining the value of a tuple that is used in the join condition.
  JoinComponent.TupleMerger A component that will merge the supplied tuple on the left side of a join with the supplied tuple on the right side of the join, to produce a single tuple with all components from the left and right tuples.
  JoinComponent.ValueSelector Interface defining the value of a tuple that is used in the join condition.
  ProcessingComponent A component that performs (some) portion of the query processing by `returning the tuples` that result from this stage of processing.
  ProcessingComponent.DynamicOperation Interface for evaluating a `DynamicOperand` to return the resulting value.
  Processor Interface for a query processor.
  QueryResultColumns Defines the columns associated with the results of a query.
  SelectComponent.ConstraintChecker Interface used to determine whether a tuple satisfies all of the constraints applied to the SELECT node.
  SetOperationComponent
  SortValuesComponent A `ProcessingComponent` implementation that performs a `PROJECT` operation to reduce the columns that appear in the results.

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