org.jpox.store.query
Class ResultExpressionsQueryable

java.lang.Object
  extended byorg.jpox.store.query.ResultExpressionsQueryable
All Implemented Interfaces:
Queryable

public class ResultExpressionsQueryable
extends java.lang.Object
implements Queryable

Result expressions to be returned by the query. The results might be fields of persistent instances, instances of classes other than the candidate class, or aggregates of fields.

Version:
$Revision: 1.31 $

Field Summary
protected static Localiser LOCALISER
           
 
Constructor Summary
ResultExpressionsQueryable(PersistenceManager pm, java.lang.Class candidateClass, boolean subclasses)
          Constructor.
ResultExpressionsQueryable(PersistenceManager pm, java.lang.Class candidateClass, java.util.Collection userCandidates, boolean subclasses)
          Constructor.
 
Method Summary
 ScalarExpression[] getResultExpressions()
           
 boolean hasAggregatedExpressionsOnly()
          Whether only aggregated expressions are returned
 boolean isEmpty()
          Returns true if this collection contains no elements.
 QueryExpression newQueryStatement()
          Create a new query to search for the candidate classes etc.
 QueryExpression newQueryStatement(java.lang.Class candidateClass)
          Create a query to search for the candidateClass and subclasses if true
 Query.ResultObjectFactory newResultObjectFactory(QueryExpression stmt, boolean ignoreCache, java.lang.Class resultClass, boolean useFetchPlan)
          Returns a suitable query result factory for results produced by the specified query.
 void setResultExpressions(ScalarExpression[] expressions)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOCALISER

protected static final Localiser LOCALISER
Constructor Detail

ResultExpressionsQueryable

public ResultExpressionsQueryable(PersistenceManager pm,
                                  java.lang.Class candidateClass,
                                  boolean subclasses)
Constructor.

Parameters:
pm - Persistence Manager
candidateClass - The candidate
subclasses - Whether to include subclasses

ResultExpressionsQueryable

public ResultExpressionsQueryable(PersistenceManager pm,
                                  java.lang.Class candidateClass,
                                  java.util.Collection userCandidates,
                                  boolean subclasses)
Constructor.

Parameters:
pm - Persistence Manager
candidateClass - The candidate
userCandidates - The users candidates
subclasses - Whether to include subclasses
Method Detail

newQueryStatement

public QueryExpression newQueryStatement()
Create a new query to search for the candidate classes etc.

Specified by:
newQueryStatement in interface Queryable
Returns:
The new QueryStatement.

setResultExpressions

public void setResultExpressions(ScalarExpression[] expressions)
Parameters:
expressions - The expressions to set.

getResultExpressions

public ScalarExpression[] getResultExpressions()
Returns:
The expressions to project.

hasAggregatedExpressionsOnly

public boolean hasAggregatedExpressionsOnly()
Whether only aggregated expressions are returned

Returns:
Whether it has only aggregate expressions

newQueryStatement

public QueryExpression newQueryStatement(java.lang.Class candidateClass)
Create a query to search for the candidateClass and subclasses if true

Specified by:
newQueryStatement in interface Queryable
Parameters:
candidateClass - The candidate
Returns:
The new QueryStatement
See Also:
Queryable.newQueryStatement()

newResultObjectFactory

public Query.ResultObjectFactory newResultObjectFactory(QueryExpression stmt,
                                                        boolean ignoreCache,
                                                        java.lang.Class resultClass,
                                                        boolean useFetchPlan)
Description copied from interface: Queryable
Returns a suitable query result factory for results produced by the specified query.

The stmt argument must have been obtained by a previous call to newQueryStatement() on the same Queryable.

Specified by:
newResultObjectFactory in interface Queryable
Parameters:
stmt - The query statement
ignoreCache - Whether to ignore the cache
resultClass - Create objects of a particular type
useFetchPlan - whether to use the fetch plan to retrieve fields in the same query
Returns:
A factory for creating PersistenceCapable objects from query results.

isEmpty

public boolean isEmpty()
Returns true if this collection contains no elements.

Specified by:
isEmpty in interface Queryable
Returns:
true if this collection contains no elements.


Copyright © -2007 . All Rights Reserved.