|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.exolab.castor.jdo.drivers.PostgreSQLCallQuery
PersistenceQuery implementation for use with PostgreSQL stored functions returning instance, which can be fetched only through SELECT of fields of the instance.
| Constructor Summary | |
(package private) |
PostgreSQLCallQuery(java.lang.String call,
java.lang.Class[] types,
java.lang.Class javaClass,
java.lang.String[] fields,
int[] sqlTypes)
|
| Method Summary | |
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,
org.exolab.castor.mapping.AccessMode accessMode,
boolean scrollable)
Execute the query with the give connection and lock type. |
java.lang.Object |
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. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
PostgreSQLCallQuery(java.lang.String call,
java.lang.Class[] types,
java.lang.Class javaClass,
java.lang.String[] fields,
int[] sqlTypes)
| Method Detail |
public boolean absolute(int row)
throws PersistenceException
PersistenceQuery
absolute in interface PersistenceQueryrow - The row to move to
PersistenceException - A persistence error occured
public int size()
throws PersistenceException
PersistenceQuery
size in interface PersistenceQueryPersistenceExceptionpublic 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 PersistenceQueryindex - The parameter indexvalue - The parameter value
java.lang.ArrayIndexOutOfBoundsException
java.lang.IllegalArgumentExceptionpublic java.lang.Class getResultType()
PersistenceQuery
getResultType in interface PersistenceQuery
public void execute(java.lang.Object conn,
org.exolab.castor.mapping.AccessMode accessMode,
boolean scrollable)
throws PersistenceException
PersistenceQueryPersistenceQuery.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 PersistenceQueryconn - 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 PersistenceQueryidentity - The identity of the previous object,
null if this method is called for the first time
PersistenceException - An error reported by the
persistence enginepublic void close()
PersistenceQuery
close in interface PersistenceQuery
public java.lang.Object fetch(ProposedEntity proposedObject)
throws PersistenceException
PersistenceQueryPersistenceQuery.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 PersistenceQueryproposedObject - The fields to load into
PersistenceException - 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)
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||