|
||||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||
java.lang.Objectorg.objectweb.speedo.query.lib.QueryDefinitionImpl
org.objectweb.speedo.query.lib.SpeedoQuery
SpeedoQuery is the basic implementation of the javax.jdo.Query interface. This class is just a wrapper to a SpeedoCompiledQuery object which is a reused object.
| Field Summary | |
|---|---|
java.util.Map |
extensions
|
| Fields inherited from class org.objectweb.speedo.query.lib.QueryDefinitionImpl |
|---|
candidateClass, candidateInstances, extentClass, filter, grouping, ignoreCache, importStatements, indexFirst, indexLast, order, parameters, result, resultClass, unique, variables, withPrefetch |
| Fields inherited from interface javax.jdo.Query |
|---|
JDOQL, SQL |
| Constructor Summary | |
|---|---|
SpeedoQuery()
|
|
| Method Summary | |
|---|---|
void |
addExtension(java.lang.String key,
java.lang.Object value)
|
void |
close(java.lang.Object queryResult)
Close a query result and release any resources associated with it. |
void |
closeAll()
Close all query results associated with this Query instance, and release all resources associated with them. |
void |
compile()
Verify the elements of the query and provide a hint to the query to prepare and optimize an execution plan. |
void |
declareImports(java.lang.String imports)
Set the import statements to be used to identify the fully qualified name of variables or parameters. |
void |
declareParameters(java.lang.String parameters)
Declare the list of parameters query execution. |
void |
declareVariables(java.lang.String variables)
Declare the unbound variables to be used in the query. |
void |
defineWith(QueryDefinition qd)
|
long |
deletePersistentAll()
|
long |
deletePersistentAll(java.util.Map arg0)
|
long |
deletePersistentAll(java.lang.Object[] arg0)
|
java.lang.Object |
execute()
Execute the query and return the filtered Set. |
java.lang.Object |
execute(java.lang.Object p1)
Execute the query and return the filtered Set. |
java.lang.Object |
execute(java.lang.Object p1,
java.lang.Object p2)
Execute the query and return the filtered Set. |
java.lang.Object |
execute(java.lang.Object p1,
java.lang.Object p2,
java.lang.Object p3)
Execute the query and return the filtered Set. |
java.lang.Object |
executeWithArray(java.lang.Object[] anarray)
Execute the query and return the filtered Set. |
java.lang.Object |
executeWithMap(java.util.Map amap)
Execute the query and return the filtered Set. |
javax.jdo.FetchPlan |
getFetchPlan()
|
boolean |
getIgnoreCache()
Get the ignoreCache option setting. |
javax.jdo.PersistenceManager |
getPersistenceManager()
Get the PersistenceManager associated with this Query. |
CompiledQuery |
getQueryCompiler()
|
QueryManager |
getQueryManager()
|
boolean |
isUnmodifiable()
|
void |
setCandidates(java.util.Collection pcs)
Set the candidate Set to query. |
void |
setCandidates(javax.jdo.Extent pcs)
Set the candidate Extent to query. |
void |
setClass(java.lang.Class cls)
Set the class of the candidate instances of the query. |
void |
setExtensions(java.util.Map exts)
|
void |
setFetchPlan(javax.jdo.FetchPlan fp)
|
void |
setFilter(java.lang.String f)
Set the filter for the query. |
void |
setGrouping(java.lang.String arg0)
|
void |
setIgnoreCache(boolean ignoreCache)
Set the ignoreCache option. |
void |
setIncludeSubClasses(boolean val)
|
void |
setLogger(org.objectweb.util.monolog.api.Logger logger)
|
void |
setOrdering(java.lang.String ordering)
Set the ordering specification for the result Set. |
void |
setProxyManager(ProxyManager _pm)
|
void |
setQueryCompiler(CompiledQuery _qc)
|
void |
setQueryManager(QueryManager _qm)
|
void |
setRange(long first,
long last)
|
void |
setResult(java.lang.String result)
|
void |
setResultClass(java.lang.Class resultClass)
|
void |
setUnique(boolean unique)
|
void |
setUnmodifiable()
|
| Methods inherited from class org.objectweb.speedo.query.lib.QueryDefinitionImpl |
|---|
equals, getCandidateClass, getCollection, getExtent, getFilter, getGrouping, getImportStatements, getIncludeSubClasses, getIndexFirst, getIndexLast, getOrder, getParameters, getResult, getResultClass, getUnique, getVariables, hashCode, isCollection, isIgnoreCache, qdToString, toString, withPrefetch, withPrefetch |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Field Detail |
public java.util.Map extensions
| Constructor Detail |
public SpeedoQuery()
| Method Detail |
public void setLogger(org.objectweb.util.monolog.api.Logger logger)
public QueryManager getQueryManager()
public void setQueryManager(QueryManager _qm)
public CompiledQuery getQueryCompiler()
public void setQueryCompiler(CompiledQuery _qc)
public void setProxyManager(ProxyManager _pm)
public void defineWith(QueryDefinition qd)
defineWith in class QueryDefinitionImplpublic void setClass(java.lang.Class cls)
The class specifies the class of the candidates of the query. Elements of the candidate collection that are of the specified class are filtered before being put into the result Set.
setClass in interface javax.jdo.Querycls - the Class of the candidate instances.public void setCandidates(javax.jdo.Extent pcs)
setCandidates in interface javax.jdo.Querypcs - the Candidate Extent.public void setCandidates(java.util.Collection pcs)
setCandidates in interface javax.jdo.Querypcs - the Candidate collection.public void setFilter(java.lang.String f)
The filter specification is a String containing a boolean expression that is to be evaluated for each of the instances in the candidate collection. If the filter is not specified, then it defaults to "true", which has the effect of filtering the input Set only for class type.
An element of the candidate collection is returned in the result if:
The user may denote uniqueness in the filter expression by explicitly declaring an expression (for example, e1 != e2).
Rules for constructing valid expressions follow the Java language, except for these differences:
Identifiers in the expression are considered to be in the name space of the specified class, with the addition of declared imports, parameters and variables. As in the Java language, this is a reserved word which means the element of the collection being evaluated.
Navigation through single-valued fields is specified by the Java language syntax of field_name.field_name....field_name.
A JDO implementation is allowed to reorder the filter expression for optimization purposes.
setFilter in interface javax.jdo.Queryf - the query filter.public void declareImports(java.lang.String imports)
The String parameter to this method follows the syntax of the import statement of the Java language.
declareImports in interface javax.jdo.Queryimports - import statements separated by semicolons.public void declareParameters(java.lang.String parameters)
The String parameter to this method follows the syntax for formal parameters in the Java language.
declareParameters in interface javax.jdo.Queryparameters - the list of parameters separated by commas.public void declareVariables(java.lang.String variables)
declareVariables in interface javax.jdo.Queryvariables - the variables separated by semicolons.public void setOrdering(java.lang.String ordering)
Each ordering declaration is the name of the field on which to order the results followed by one of the following words: "ascending" or "descending".
The field must be declared in the candidate class or must be a navigation expression starting with a field in the candidate class.
Valid field types are primitive types except boolean; wrapper types except Boolean; BigDecimal; BigInteger; String; and Date.
setOrdering in interface javax.jdo.Queryordering - the ordering specification.public void setIgnoreCache(boolean ignoreCache)
setIgnoreCache in interface javax.jdo.QueryignoreCache - the setting of the ignoreCache option.public boolean getIgnoreCache()
getIgnoreCache in interface javax.jdo.QuerysetIgnoreCache(boolean)public void setIncludeSubClasses(boolean val)
public void compile()
compile in interface javax.jdo.Querypublic java.lang.Object execute()
execute in interface javax.jdo.QueryexecuteWithArray(java.lang.Object[] parameters)public java.lang.Object execute(java.lang.Object p1)
execute in interface javax.jdo.Queryp1 - the value of the first parameter declared.
executeWithArray(java.lang.Object[] parameters)
public java.lang.Object execute(java.lang.Object p1,
java.lang.Object p2)
execute in interface javax.jdo.Queryp1 - the value of the first parameter declared.p2 - the value of the second parameter declared.
executeWithArray(java.lang.Object[] parameters)
public java.lang.Object execute(java.lang.Object p1,
java.lang.Object p2,
java.lang.Object p3)
execute in interface javax.jdo.Queryp1 - the value of the first parameter declared.p2 - the value of the second parameter declared.p3 - the value of the third parameter declared.
executeWithArray(java.lang.Object[] parameters)public java.lang.Object executeWithMap(java.util.Map amap)
executeWithMap in interface javax.jdo.Queryamap - the Map containing all of the parameters.
executeWithArray(java.lang.Object[] parameters)public java.lang.Object executeWithArray(java.lang.Object[] anarray)
The execution of the query obtains the values of the parameters and matches them against the declared parameters in order. The names of the declared parameters are ignored. The type of the declared parameters must match the type of the passed parameters, except that the passed parameters might need to be unwrapped to get their primitive values.
The filter, import, declared parameters, declared variables, and ordering statements are verified for consistency.
Each element in the candidate Set is examined to see that it is assignment compatible to the Class of the query. It is then evaluated by the boolean expression of the filter. The element passes the filter if there exist unique values for all variables for which the filter expression evaluates to true.
executeWithArray in interface javax.jdo.Queryanarray - the Object array with all of the parameters.
public javax.jdo.PersistenceManager getPersistenceManager()
If this Query was restored from a serialized form, it has no PersistenceManager, and this method returns null.
getPersistenceManager in interface javax.jdo.Querypublic void close(java.lang.Object queryResult)
close in interface javax.jdo.QueryqueryResult - the result of execute(...) on this Query instance.public void closeAll()
closeAll in interface javax.jdo.Querypublic javax.jdo.FetchPlan getFetchPlan()
getFetchPlan in interface javax.jdo.Querypublic void setFetchPlan(javax.jdo.FetchPlan fp)
public long deletePersistentAll()
deletePersistentAll in interface javax.jdo.Querypublic long deletePersistentAll(java.util.Map arg0)
deletePersistentAll in interface javax.jdo.Querypublic long deletePersistentAll(java.lang.Object[] arg0)
deletePersistentAll in interface javax.jdo.Querypublic void setGrouping(java.lang.String arg0)
setGrouping in interface javax.jdo.Query
public void setRange(long first,
long last)
setRange in interface javax.jdo.Querypublic void setUnique(boolean unique)
setUnique in interface javax.jdo.Querypublic void setResult(java.lang.String result)
setResult in interface javax.jdo.Querypublic void setResultClass(java.lang.Class resultClass)
setResultClass in interface javax.jdo.Querypublic void setExtensions(java.util.Map exts)
setExtensions in interface javax.jdo.Query
public void addExtension(java.lang.String key,
java.lang.Object value)
addExtension in interface javax.jdo.Querypublic boolean isUnmodifiable()
isUnmodifiable in interface javax.jdo.Querypublic void setUnmodifiable()
setUnmodifiable in interface javax.jdo.Query
|
||||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||||