# Package com.holonplatform.core.query

- Interface Summary
  Interface | Description
  --- | ---
  BeanProjection<T> | A `QueryProjection` which uses a `BeanPropertySet` to define the projection selection and returns `BeanPropertySet.getBeanClass()` type results.
  ConstantExpression<T> | Constant value expression which can also act as `QueryProjection`.
  CountAllProjection | A `QueryProjection` to represent the count of all the results of a query.
  NumericQueryExpression<N extends Number> | A `QueryExpression` of `Number` type.
  PathExpression<T> | A `QueryExpression` wich represents a `Path`.
  PropertySetProjection | A `QueryProjection` which uses a `PropertySet` to define the projection selection and returns `PropertyBox` type results.
  Query | Represents a query, which can be used to configure and execute a query on the data managed by a `Datastore`.
  QueryAdapter<C extends QueryConfiguration> | Adapter to perform a query execution using a `QueryOperation`.
  QueryAggregation | Represents a query results aggregation clause.
  QueryAggregation.Builder | `QueryAggregation` builder.
  QueryAggregation.QueryAggregationSupport<C extends QueryAggregation.QueryAggregationSupport<C>> | Interface implemented by classes which support `QueryAggregation`s setting.
  QueryBuilder<Q extends QueryBuilder<Q>> | Builder to configure a `Query`, managing query `DataTarget` and query clauses such as `QueryFilter` and `QuerySort` and handling `ExpressionResolver`s registration.
  QueryConfiguration | Represents the configuration of a query, providing configuration elements and supporting `ExpressionResolver`s.
  QueryConfigurationProvider | Interface that can be used to dynamically provide query configuration elements.
  QueryConfigurationProvider.Builder | Builder to create `QueryConfigurationProvider` instances.
  QueryExpression<T> | Represent a general typed expression used by `Query` clauses.
  QueryFilter | A `Query` expression representing a filter (query restriction) condition.
  QueryFilter.CompositeQueryFilter | A `QueryFilter` which represents a query filters composition.
  QueryFilter.QueryFilterResolver<T extends QueryFilter> | Convenience interface to create an `ExpressionResolver` to resolve a custom `QueryFilter` class into a standard `QueryFilter`.
  QueryFilter.QueryFilterSupport<C extends QueryFilter.QueryFilterSupport<C>> | Interface implemented by classes which support `QueryFilter`s addition.
  QueryFunction<T,A> | Represents a function expression.
  QueryFunction.Avg | A function which represents the average value of a query result.
  QueryFunction.Count | A function which represents the count of a query result values.
  QueryFunction.Max<T> | A function which represents the largest value of a query result.
  QueryFunction.Min<T> | A function which represents the smallest value of a query result.
  QueryFunction.NoArgQueryFunction<T> | A `QueryFunction` which do not support any argument.
  QueryFunction.PropertyQueryFunction<T,A> | A `QueryFunction` which is also a `Property`, allowing the function to be used within a property set query projection and the function value to be collected in a `PropertyBox`.
  QueryFunction.Sum<T extends Number> | A function which represents the sum of a numeric query result values.
  QueryOperation<C extends QueryConfiguration,R> | Represent a query operation expression, providing query configuration and projection.
  QueryProjection<T> | A query projection `Expression` to obtain typed query results.
  QueryProjectionOperations<SR,LR,OR,CR> | Base interface to provide query results using a `QueryProjection`.
  QueryResults | Provide operations to get the results of a `Query` operation using a `QueryProjection`.
  QuerySort | A `Query` expression representing a sort condition.
  QuerySort.CompositeQuerySort | A `QuerySort` which represents a sort expressions list.
  QuerySort.PathQuerySort<T> | A `QuerySort` bound to a `Path` expression.
  QuerySort.QuerySortResolver<T extends QuerySort> | Convenience interface to create an `ExpressionResolver` to resolve a custom `QuerySort` class into a standard `QuerySort`.
  QuerySort.QuerySortSupport<C extends QuerySort.QuerySortSupport<C>> | Interface implemented by classes which support `QuerySort`s addition.
  SelectAllProjection | A `QueryProjection` to obtain all the values af a persistent data entity instance.
  StringFunction | Represents a `QueryFunction` on a String data type.
  StringFunction.Lower | Function to convert a string to lowercase.
  StringFunction.Upper | Function to convert a string to uppercase.
  StringQueryExpression | A `QueryExpression` of `String` type.
  TemporalFunction<T> | Represents a temporal-related `QueryFunction`.
  TemporalFunction.CurrentDate | A function to obtain the current date as a `Date`.
  TemporalFunction.CurrentLocalDate | A function to obtain the current date as a `LocalDate`.
  TemporalFunction.CurrentLocalDateTime | A function to obtain the current date and time as a `LocalDateTime`.
  TemporalFunction.CurrentTimestamp | A function to obtain the current timestamp as a `Date`.
  TemporalFunction.Day | A function to extract the day part of a temporal data type.
  TemporalFunction.Hour | A function to extract the hour part of a temporal data type.
  TemporalFunction.Month | A function to extract the month part of a temporal data type.
  TemporalFunction.Year | A function to extract the year part of a temporal data type.
  TemporalQueryExpression<T> | A `QueryExpression` of a temporal type.

- Enum Summary
  Enum | Description
  --- | ---
  QuerySort.SortDirection | Sort direction (ascending or descending) definition

- Exception Summary
  Exception | Description
  --- | ---
  QueryResults.QueryNonUniqueResultException | Exception thrown by when only one query result was expected but more than one found.

Copyright © 2019 The Holon Platform. All rights reserved.