org.exolab.castor.persist
public final class QueryResults extends Object
Version: $Revision: 1.1.1.1 $ $Date: 2003/03/03 07:08:47 $
Constructor Summary | |
---|---|
QueryResults(TransactionContext tx, LockEngine engine, PersistenceQuery query, AccessMode accessMode, Database db) |
Method Summary | |
---|---|
boolean | absolute(int row) |
void | close()
Close the query and release all resources held by the query. |
Object | fetch()
Loads the specified object with the identity. |
PersistenceQuery | getQuery()
Returns the associated query.
|
Class | getResultType()
Returns the type of object returned by this query.
|
TransactionContext | getTransaction()
Returns the transaction context in which this query was opened.
|
Object | nextIdentity()
Returns the identity of the next object to be returned.
|
int | size() |
If the object is locked by another transaction this method will block until the lock is released, or a timeout occured. If a timeout occurs or the object has been deleted by the other transaction, this method will report an {@link ObjectNotFoundException}. The query may proceed to the next identity.
If the object has been deleted in this transaction, this method will report an {@link ObjectNotFoundException}. However, the caller may iterate to and obtain the next object.
This method is equivalent to {@link TransactionContext#fetch} with a know cache engine, identity and lock and acts on the query results rather than issuing a new query to load the object.
Returns: The loaded object
Throws: ObjectNotFoundException The object was not found in persistent storage LockNotGrantedException Could not acquire a lock on the object PersistenceException An error reported by the persistence engine TransactionNotInProgressException The transaction has been closed
Returns: The query
Returns: The type of object returned by this query
Returns: The query's transaction context
Returns: The identity of the next object
Throws: PersistenceException An error reported by the persistence engine TransactionNotInProgressException The transaction has been closed