EclipseLink 2.0.0_ 2.0.0.v20090424-r4050 API Reference

javax.persistence.criteria
Interface AbstractQuery

All Known Subinterfaces:
CriteriaQuery, Subquery<T>

public interface AbstractQuery

The interface AbstractQuery defines functionality that is common to both top-level queries and subqueries. It is not intended to be used directly in query construction. All queries must have: a set of root entities (which may in turn own joins) All queries may have: a conjunction of restrictions


Method Summary
 AbstractQuery distinct(boolean distinct)
          Specify whether duplicate query results will be eliminated.
<X> Root<X>
from(java.lang.Class<X> entityClass)
          Add a query root corresponding to the given entity, forming a cartesian product with any existing roots.
<X> Root<X>
from(Entity<X> entity)
          Add a query root corresponding to the given entity, forming a cartesian product with any existing roots.
 java.util.List<Expression<?>> getGroupList()
          Return a list of the grouping expressions
 Predicate getGroupRestriction()
          Return the predicate that corresponds to the restriction(s) over the grouping items.
 Predicate getRestriction()
          Return the predicate that corresponds to the where clause restriction(s).
 java.util.Set<Root<?>> getRoots()
          Return the query roots.
 AbstractQuery groupBy(Expression<?>... grouping)
          Specify the expressions that are used to form groups over the query results.
 AbstractQuery having(Expression<java.lang.Boolean> restriction)
          Specify a restriction over the groups of the query.
 AbstractQuery having(Predicate... restrictions)
          Specify restrictions over the groups of the query according the conjunction of the specified restriction predicates.
 boolean isDistinct()
          Return whether duplicate query results must be eliminated or retained.
<U> Subquery<U>
subquery(java.lang.Class<U> type)
          Specify that the query is to be used as a subquery having the specified return type.
 AbstractQuery where(Expression<java.lang.Boolean> restriction)
          Modify the query to restrict the query results according to the specified boolean expression.
 AbstractQuery where(Predicate... restrictions)
          Modify the query to restrict the query results according to the conjunction of the specified restriction predicates.
 

Method Detail

from

<X> Root<X> from(Entity<X> entity)
Add a query root corresponding to the given entity, forming a cartesian product with any existing roots.

Parameters:
entity - metamodel entity representing the entity of type X
Returns:
query root corresponding to the given entity

from

<X> Root<X> from(java.lang.Class<X> entityClass)
Add a query root corresponding to the given entity, forming a cartesian product with any existing roots.

Parameters:
entityClass - the entity class
Returns:
query root corresponding to the given entity

getRoots

java.util.Set<Root<?>> getRoots()
Return the query roots.

Returns:
the set of query roots

where

AbstractQuery where(Expression<java.lang.Boolean> restriction)
Modify the query to restrict the query results according to the specified boolean expression. Replaces the previously added restriction(s), if any.

Parameters:
restriction - a simple or compound boolean expression
Returns:
the modified query

where

AbstractQuery where(Predicate... restrictions)
Modify the query to restrict the query results according to the conjunction of the specified restriction predicates. Replaces the previously added restriction(s), if any. If no restrictions are specified, any previously added restrictions are simply removed.

Parameters:
restrictions - zero or more restriction predicates
Returns:
the modified query

groupBy

AbstractQuery groupBy(Expression<?>... grouping)
Specify the expressions that are used to form groups over the query results. Replaces the previous specified grouping expressions, if any. If no grouping expressions are specified, any previously added grouping expressions are simply removed.

Parameters:
grouping - zero or more grouping expressions
Returns:
the modified query

having

AbstractQuery having(Expression<java.lang.Boolean> restriction)
Specify a restriction over the groups of the query. Replaces the previous having restriction(s), if any.

Parameters:
restriction - a simple or compound boolean expression
Returns:
the modified query

having

AbstractQuery having(Predicate... restrictions)
Specify restrictions over the groups of the query according the conjunction of the specified restriction predicates. Replaces the previously added restriction(s), if any. If no restrictions are specified, any previously added restrictions are simply removed.

Parameters:
restrictions - zero or more restriction predicates
Returns:
the modified query

distinct

AbstractQuery distinct(boolean distinct)
Specify whether duplicate query results will be eliminated. A true value will cause duplicates to be eliminated. A false value will cause duplicates to be retained. If distinct has not been specified, duplicate results must be retained.

Parameters:
distinct - boolean value specifying whether duplicate results must be eliminated from the query result or whether they must be retained
Returns:
the modified query.

getGroupList

java.util.List<Expression<?>> getGroupList()
Return a list of the grouping expressions

Returns:
the list of grouping expressions

getRestriction

Predicate getRestriction()
Return the predicate that corresponds to the where clause restriction(s).

Returns:
where clause predicate

getGroupRestriction

Predicate getGroupRestriction()
Return the predicate that corresponds to the restriction(s) over the grouping items.

Returns:
having clause predicate

isDistinct

boolean isDistinct()
Return whether duplicate query results must be eliminated or retained.

Returns:
boolean indicating whether duplicate query results must be eliminated

subquery

<U> Subquery<U> subquery(java.lang.Class<U> type)
Specify that the query is to be used as a subquery having the specified return type.

Returns:
subquery corresponding to the query

EclipseLink 2.0.0_ 2.0.0.v20090424-r4050 API Reference