Package org.apache.cayenne.query
Class ObjectIdQuery
- java.lang.Object
-
- org.apache.cayenne.query.IndirectQuery
-
- org.apache.cayenne.query.ObjectIdQuery
-
- All Implemented Interfaces:
Serializable
,Query
public class ObjectIdQuery extends IndirectQuery
A query that matches zero or one object or data row corresponding to the ObjectId. Used internally by Cayenne to lookup objects by id. Notice that cache policies of ObjectIdQuery are different from genericQueryMetadata
cache policies. ObjectIdQuery is special - it is the only query that can be done against Cayenne main cache, thus cache handling is significantly different from all other of the queries.- Since:
- 1.2
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static int
CACHE
static int
CACHE_NOREFRESH
static int
CACHE_REFRESH
protected int
cachePolicy
protected boolean
fetchingDataRows
protected QueryMetadata
metadata
protected EntityResolver
metadataResolver
protected ObjectId
objectId
-
Fields inherited from class org.apache.cayenne.query.IndirectQuery
dataMap, lastResolver, name, replacementQuery
-
-
Constructor Summary
Constructors Constructor Description ObjectIdQuery(ObjectId objectID)
Creates a refreshing ObjectIdQuery.ObjectIdQuery(ObjectId objectId, boolean fetchingDataRows, int cachePolicy)
Creates a new ObjectIdQuery.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Query
createReplacementQuery(EntityResolver resolver)
Creates a substitute query.boolean
equals(Object object)
An object is considered equal to this query if it is also a ObjectIdQuery with an equal ObjectId.int
getCachePolicy()
QueryMetadata
getMetaData(EntityResolver resolver)
Returns query metadata object.ObjectId
getObjectId()
int
hashCode()
Implements a standard hashCode contract considering custom 'equals' implementation.boolean
isFetchAllowed()
boolean
isFetchingDataRows()
boolean
isFetchMandatory()
String
toString()
Overrides toString() outputting a short string with query class and ObjectId.-
Methods inherited from class org.apache.cayenne.query.IndirectQuery
createSQLAction, getReplacementQuery, route
-
-
-
-
Field Detail
-
CACHE
public static final int CACHE
- See Also:
- Constant Field Values
-
CACHE_REFRESH
public static final int CACHE_REFRESH
- See Also:
- Constant Field Values
-
CACHE_NOREFRESH
public static final int CACHE_NOREFRESH
- See Also:
- Constant Field Values
-
objectId
protected ObjectId objectId
-
cachePolicy
protected int cachePolicy
-
fetchingDataRows
protected boolean fetchingDataRows
-
metadataResolver
protected transient EntityResolver metadataResolver
-
metadata
protected transient QueryMetadata metadata
-
-
Method Detail
-
getMetaData
public QueryMetadata getMetaData(EntityResolver resolver)
Returns query metadata object.- Specified by:
getMetaData
in interfaceQuery
- Overrides:
getMetaData
in classIndirectQuery
-
getObjectId
public ObjectId getObjectId()
-
createReplacementQuery
protected Query createReplacementQuery(EntityResolver resolver)
Description copied from class:IndirectQuery
Creates a substitute query. An implementor is free to provide an arbitrary replacement query.- Specified by:
createReplacementQuery
in classIndirectQuery
-
getCachePolicy
public int getCachePolicy()
-
isFetchMandatory
public boolean isFetchMandatory()
-
isFetchAllowed
public boolean isFetchAllowed()
-
isFetchingDataRows
public boolean isFetchingDataRows()
-
toString
public String toString()
Overrides toString() outputting a short string with query class and ObjectId.
-
equals
public boolean equals(Object object)
An object is considered equal to this query if it is also a ObjectIdQuery with an equal ObjectId.
-
-