PersistenceQuery
final class PostgreSQLCallQuery extends java.lang.Object implements PersistenceQuery
Constructor | Description |
---|---|
PostgreSQLCallQuery(java.lang.String call,
java.lang.Class<?>[] types,
java.lang.Class<?> javaClass,
java.lang.String[] fields,
int[] sqlTypes) |
Modifier and Type | Method | Description |
---|---|---|
boolean |
absolute(int row) |
Moves the result of the query to the absolute position in the
resultset.
|
void |
close() |
Close the query and release all resources held by the query.
|
void |
execute(java.lang.Object conn,
AccessMode accessMode,
boolean scrollable) |
Execute the query with the give connection and lock type.
|
void |
fetch(ProposedEntity proposedObject) |
Loades the object.
|
int |
getParameterCount() |
|
java.lang.Class<?> |
getParameterType(int index) |
|
java.lang.Class<?> |
getResultType() |
Returns the type of object returned by this query.
|
Identity |
nextIdentity(Identity identity) |
Returns the identity of the next object to be returned.
|
void |
setParameter(int index,
java.lang.Object value) |
Sets the value of a paramter.
|
int |
size() |
Finds the size of the resulting resultset from the query.
|
PostgreSQLCallQuery(java.lang.String call, java.lang.Class<?>[] types, java.lang.Class<?> javaClass, java.lang.String[] fields, int[] sqlTypes)
public boolean absolute(int row) throws PersistenceException
PersistenceQuery
absolute
in interface PersistenceQuery
row
- The row to move toPersistenceException
- A persistence error occuredpublic int size() throws PersistenceException
PersistenceQuery
size
in interface PersistenceQuery
PersistenceException
public int getParameterCount()
public java.lang.Class<?> getParameterType(int index) throws java.lang.ArrayIndexOutOfBoundsException
java.lang.ArrayIndexOutOfBoundsException
public void setParameter(int index, java.lang.Object value) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException
PersistenceQuery
setParameter
in interface PersistenceQuery
index
- The parameter indexvalue
- The parameter valuejava.lang.ArrayIndexOutOfBoundsException
java.lang.IllegalArgumentException
public java.lang.Class<?> getResultType()
PersistenceQuery
getResultType
in interface PersistenceQuery
public void execute(java.lang.Object conn, AccessMode accessMode, boolean scrollable) throws PersistenceException
PersistenceQuery
PersistenceQuery.nextIdentity(org.exolab.castor.persist.spi.Identity)
and PersistenceQuery.fetch(org.castor.persist.ProposedEntity)
. The
query parameters will be reset. A new query may be issued by
providing new query parameters and calling PersistenceQuery.execute(Object, AccessMode, boolean)
.execute
in interface PersistenceQuery
conn
- An open connectionaccessMode
- The access mode (null equals shared)scrollable
- The db cursor mode.PersistenceException
- An invalid query or an error reported
by the persistence engine.public Identity nextIdentity(Identity identity) throws PersistenceException
PersistenceQuery
nextIdentity
in interface PersistenceQuery
identity
- The identity of the previous object,
null if this method is called for the first timePersistenceException
- An error reported by the
persistence enginepublic void close()
PersistenceQuery
close
in interface PersistenceQuery
public void fetch(ProposedEntity proposedObject) throws PersistenceException
PersistenceQuery
PersistenceQuery.nextIdentity(org.exolab.castor.persist.spi.Identity)
with the same identity.
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 ObjectNotFoundException
. The query may proceed to the next
identity.
This method is equivalent to Persistence.load(java.lang.Object, org.castor.persist.ProposedEntity, org.exolab.castor.persist.spi.Identity, org.exolab.castor.mapping.AccessMode)
with a
known cache engine and access mode and acts on the query
results rather than issuing a new query to load the object.
fetch
in interface PersistenceQuery
proposedObject
- The fields to load intoPersistenceException
- The object was not found in
persistent storage or any other persistence error occured.Persistence.load(java.lang.Object, org.castor.persist.ProposedEntity, org.exolab.castor.persist.spi.Identity, org.exolab.castor.mapping.AccessMode)
Intalio Inc. (C) 1999-2008. All rights reserved http://www.intalio.com