Package org.apache.cayenne.query
Class BatchQuery
- java.lang.Object
-
- org.apache.cayenne.query.BatchQuery
-
- All Implemented Interfaces:
Serializable
,Query
- Direct Known Subclasses:
DeleteBatchQuery
,InsertBatchQuery
,UpdateBatchQuery
public abstract class BatchQuery extends Object implements Query
BatchQuery and its descendants allow to group similar data for the batch database modifications, including inserts, updates and deletes. Single BatchQuery corresponds to a parameterized PreparedStatement and a matrix of values.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected List<DbAttribute>
dbAttributes
protected DbEntity
dbEntity
protected List<BatchQueryRow>
rows
-
Constructor Summary
Constructors Constructor Description BatchQuery(DbEntity dbEntity, List<DbAttribute> dbAttributes, int batchCapacity)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description SQLAction
createSQLAction(SQLActionVisitor visitor)
Calls "batchAction" on the visitor.List<DbAttribute>
getDbAttributes()
Returns a list of DbAttributes describing batch parameters.DbEntity
getDbEntity()
Returns a DbEntity associated with this batch.QueryMetadata
getMetaData(EntityResolver resolver)
Returns default select parameters.List<BatchQueryRow>
getRows()
boolean
isUsingOptimisticLocking()
Returns true if the batch query uses optimistic locking.void
route(QueryRouter router, EntityResolver resolver, Query substitutedQuery)
A callback method invoked by Cayenne during the routing phase of the query execution.
-
-
-
Field Detail
-
dbEntity
protected DbEntity dbEntity
- Since:
- 1.2
-
rows
protected List<BatchQueryRow> rows
- Since:
- 4.0
-
dbAttributes
protected List<DbAttribute> dbAttributes
-
-
Constructor Detail
-
BatchQuery
public BatchQuery(DbEntity dbEntity, List<DbAttribute> dbAttributes, int batchCapacity)
- Since:
- 4.0
-
-
Method Detail
-
getRows
public List<BatchQueryRow> getRows()
- Since:
- 4.0
-
getMetaData
public QueryMetadata getMetaData(EntityResolver resolver)
Returns default select parameters.- Specified by:
getMetaData
in interfaceQuery
- Since:
- 1.2
-
route
public void route(QueryRouter router, EntityResolver resolver, Query substitutedQuery)
Description copied from interface:Query
A callback method invoked by Cayenne during the routing phase of the query execution. Mapping of DataNodes is provided by QueryRouter. Query should use aQueryRouter.route(QueryEngine, Query, Query)
callback method to route itself. Query can create one or more substitute queries or even provide its own QueryEngine to execute itself.
-
createSQLAction
public SQLAction createSQLAction(SQLActionVisitor visitor)
Calls "batchAction" on the visitor.- Specified by:
createSQLAction
in interfaceQuery
- Since:
- 1.2
-
isUsingOptimisticLocking
public boolean isUsingOptimisticLocking()
Returns true if the batch query uses optimistic locking.- Since:
- 1.1
-
getDbEntity
public DbEntity getDbEntity()
Returns a DbEntity associated with this batch.
-
getDbAttributes
public List<DbAttribute> getDbAttributes()
Returns a list of DbAttributes describing batch parameters.
-
-