public abstract class IndirectQuery extends Object implements Query
| Modifier and Type | Field and Description |
|---|---|
protected DataMap |
dataMap |
protected EntityResolver |
lastResolver |
protected String |
name |
protected Query |
replacementQuery |
| Constructor and Description |
|---|
IndirectQuery() |
| Modifier and Type | Method and Description |
|---|---|
<T> T |
acceptVisitor(ConfigurationNodeVisitor<T> visitor) |
protected abstract Query |
createReplacementQuery(EntityResolver resolver)
Creates a substitute query.
|
SQLAction |
createSQLAction(SQLActionVisitor visitor)
Throws an exception as indirect query should not be executed directly.
|
DataMap |
getDataMap() |
QueryMetadata |
getMetaData(EntityResolver resolver)
Returns the metadata obtained from the replacement query.
|
String |
getName()
Returns a symbolic name of the query.
|
protected Query |
getReplacementQuery(EntityResolver resolver)
Returns a replacement query, creating it on demand and caching it for reuse.
|
void |
route(QueryRouter router,
EntityResolver resolver,
Query substitutedQuery)
Delegates routing to a replacement query.
|
void |
setDataMap(DataMap dataMap) |
void |
setName(String name) |
protected String name
protected DataMap dataMap
protected transient Query replacementQuery
protected transient EntityResolver lastResolver
public <T> T acceptVisitor(ConfigurationNodeVisitor<T> visitor)
acceptVisitor in interface ConfigurationNodepublic DataMap getDataMap()
getDataMap in interface Querypublic void setDataMap(DataMap dataMap)
public QueryMetadata getMetaData(EntityResolver resolver)
getMetaData in interface Querypublic String getName()
Querypublic void setName(String name)
public void route(QueryRouter router, EntityResolver resolver, Query substitutedQuery)
protected abstract Query createReplacementQuery(EntityResolver resolver)
protected Query getReplacementQuery(EntityResolver resolver)
public SQLAction createSQLAction(SQLActionVisitor visitor)
createSQLAction in interface QueryCopyright © 2001–2018 Apache Cayenne. All rights reserved.