public class StoredProcedureQueryImpl extends QueryImpl implements javax.persistence.StoredProcedureQuery
Constructor and Description |
---|
StoredProcedureQueryImpl(DatabaseQuery query,
EntityManagerImpl entityManager)
Create an EJBQueryImpl with a DatabaseQuery.
|
StoredProcedureQueryImpl(java.lang.String name,
EntityManagerImpl entityManager)
Create an EJBQueryImpl with either a query name or an jpql string.
|
Modifier and Type | Method and Description |
---|---|
static DatabaseQuery |
buildResultSetMappingNameQuery(java.util.List<java.lang.String> resultSetMappingNames,
StoredProcedureCall call)
Build a ResultSetMappingQuery from a sql result set mapping name and a
stored procedure call.
|
static DatabaseQuery |
buildResultSetMappingNameQuery(java.util.List<java.lang.String> resultSetMappingNames,
StoredProcedureCall call,
java.util.Map<java.lang.String,java.lang.Object> hints,
java.lang.ClassLoader classLoader,
AbstractSession session)
Build a ResultSetMappingQuery from a sql result set mapping name and a
stored procedure call.
|
static DatabaseQuery |
buildResultSetMappingQuery(java.util.List<SQLResultSetMapping> resultSetMappings,
StoredProcedureCall call)
Build a ResultSetMappingQuery from the sql result set mappings given
a stored procedure call.
|
static DatabaseQuery |
buildResultSetMappingQuery(java.util.List<SQLResultSetMapping> resultSetMappings,
StoredProcedureCall call,
java.util.Map<java.lang.String,java.lang.Object> hints,
java.lang.ClassLoader classLoader,
AbstractSession session)
Build a ResultSetMappingQuery from the sql result set mappings given
a stored procedure call.
|
static DatabaseQuery |
buildStoredProcedureQuery(java.lang.Class resultClass,
StoredProcedureCall call,
java.util.Map<java.lang.String,java.lang.Object> hints,
java.lang.ClassLoader classLoader,
AbstractSession session)
Build a ReadAllQuery from a class and stored procedure call.
|
static DatabaseQuery |
buildStoredProcedureQuery(StoredProcedureCall call,
java.util.Map<java.lang.String,java.lang.Object> hints,
java.lang.ClassLoader classLoader,
AbstractSession session)
Build a DataReadQuery with the stored procedure call given.
|
static DatabaseQuery |
buildStoredProcedureQuery(java.lang.String sqlResultSetMappingName,
StoredProcedureCall call,
java.util.Map<java.lang.String,java.lang.Object> hints,
java.lang.ClassLoader classLoader,
AbstractSession session)
Build a ResultSetMappingQuery from a sql result set mapping name and a
stored procedure call.
|
void |
close()
Call this method to close any open connections to the database.
|
boolean |
execute()
Returns true if the first result corresponds to a result set, and false
if it is an update count or if there are no results other than through
INOUT and OUT parameters, if any.
|
int |
executeUpdate()
Execute an update or delete statement (from a stored procedure query).
|
void |
finalize()
Finalize method in case the query is not closed.
|
java.lang.Object |
getOutputParameterValue(int position)
Used to retrieve the values passed back from the procedure through INOUT
and OUT parameters.
|
java.lang.Object |
getOutputParameterValue(java.lang.String parameterName)
Used to retrieve the values passed back from the procedure through INOUT
and OUT parameters.
|
java.util.List |
getResultList()
Execute the query and return the query results as a List.
|
java.lang.Object |
getSingleResult()
Execute the query and return the single query result.
|
int |
getUpdateCount()
Returns the update count or -1 if there is no pending result
or if the next result is not an update count.
|
boolean |
hasMoreResults()
Returns true if the next result corresponds to a result set, and false if
it is an update count or if there are no results other than through INOUT
and OUT parameters, if any.
|
javax.persistence.StoredProcedureQuery |
registerStoredProcedureParameter(int position,
java.lang.Class type,
javax.persistence.ParameterMode mode)
Register a positional parameter.
|
javax.persistence.StoredProcedureQuery |
registerStoredProcedureParameter(java.lang.String parameterName,
java.lang.Class type,
javax.persistence.ParameterMode mode)
Register a named parameter.
|
StoredProcedureQueryImpl |
setFirstResult(int startPosition)
Set the position of the first result to retrieve.
|
StoredProcedureQueryImpl |
setFlushMode(javax.persistence.FlushModeType flushMode)
Set the flush mode type to be used for the query execution.
|
javax.persistence.StoredProcedureQuery |
setHint(java.lang.String hintName,
java.lang.Object value)
Set a query property or hint.
|
StoredProcedureQueryImpl |
setLockMode(javax.persistence.LockModeType lockMode)
Set the lock mode type to be used for the query execution.
|
StoredProcedureQueryImpl |
setMaxResults(int maxResult)
Set the maximum number of results to retrieve.
|
javax.persistence.StoredProcedureQuery |
setParameter(int position,
java.util.Calendar value,
javax.persistence.TemporalType temporalType)
Bind an instance of java.util.Calendar to a positional parameter.
|
javax.persistence.StoredProcedureQuery |
setParameter(int position,
java.util.Date value,
javax.persistence.TemporalType temporalType)
Bind an instance of java.util.Date to a positional parameter.
|
javax.persistence.StoredProcedureQuery |
setParameter(int position,
java.lang.Object value)
Bind an argument to a positional parameter.
|
javax.persistence.StoredProcedureQuery |
setParameter(javax.persistence.Parameter<java.util.Calendar> param,
java.util.Calendar value,
javax.persistence.TemporalType temporalType)
Bind an instance of java.util.Calendar to a Parameter object.
|
javax.persistence.StoredProcedureQuery |
setParameter(javax.persistence.Parameter<java.util.Date> param,
java.util.Date value,
javax.persistence.TemporalType temporalType)
Bind an instance of java.util.Date to a Parameter object.
|
<T> javax.persistence.StoredProcedureQuery |
setParameter(javax.persistence.Parameter<T> param,
T value)
Bind the value of a Parameter object.
|
javax.persistence.StoredProcedureQuery |
setParameter(java.lang.String name,
java.util.Calendar value,
javax.persistence.TemporalType temporalType)
Bind an instance of java.util.Calendar to a named parameter.
|
javax.persistence.StoredProcedureQuery |
setParameter(java.lang.String name,
java.util.Date value,
javax.persistence.TemporalType temporalType)
Bind an instance of java.util.Date to a named parameter.
|
javax.persistence.StoredProcedureQuery |
setParameter(java.lang.String name,
java.lang.Object value)
Bind an argument to a named parameter.
|
getDatabaseQuery, getDatabaseQueryInternal, getEntityManager, getFirstResult, getFlushMode, getHints, getLockMode, getMaxResults, getMaxResultsInternal, getParameter, getParameter, getParameter, getParameter, getParameterId, getParameters, getParameterValue, getParameterValue, getParameterValue, getSupportedHints, isBound, setDatabaseQuery, setMaxResultsInternal, toString, unwrap
public StoredProcedureQueryImpl(DatabaseQuery query, EntityManagerImpl entityManager)
public StoredProcedureQueryImpl(java.lang.String name, EntityManagerImpl entityManager)
isNamedQuery
- determines whether to treat the queryDescription as jpql or a
query name.public static DatabaseQuery buildResultSetMappingNameQuery(java.util.List<java.lang.String> resultSetMappingNames, StoredProcedureCall call)
public static DatabaseQuery buildResultSetMappingNameQuery(java.util.List<java.lang.String> resultSetMappingNames, StoredProcedureCall call, java.util.Map<java.lang.String,java.lang.Object> hints, java.lang.ClassLoader classLoader, AbstractSession session)
public static DatabaseQuery buildResultSetMappingQuery(java.util.List<SQLResultSetMapping> resultSetMappings, StoredProcedureCall call)
public static DatabaseQuery buildResultSetMappingQuery(java.util.List<SQLResultSetMapping> resultSetMappings, StoredProcedureCall call, java.util.Map<java.lang.String,java.lang.Object> hints, java.lang.ClassLoader classLoader, AbstractSession session)
public static DatabaseQuery buildStoredProcedureQuery(java.lang.Class resultClass, StoredProcedureCall call, java.util.Map<java.lang.String,java.lang.Object> hints, java.lang.ClassLoader classLoader, AbstractSession session)
public static DatabaseQuery buildStoredProcedureQuery(StoredProcedureCall call, java.util.Map<java.lang.String,java.lang.Object> hints, java.lang.ClassLoader classLoader, AbstractSession session)
public static DatabaseQuery buildStoredProcedureQuery(java.lang.String sqlResultSetMappingName, StoredProcedureCall call, java.util.Map<java.lang.String,java.lang.Object> hints, java.lang.ClassLoader classLoader, AbstractSession session)
public void close()
public boolean execute()
execute
in interface javax.persistence.StoredProcedureQuery
javax.persistence.QueryTimeoutException
- if the query execution exceeds the query
timeout value set and only the statement is rolled backjavax.persistence.PersistenceException
- if the query execution exceeds the query
timeout value set and the transaction is rolled backpublic int executeUpdate()
executeUpdate
in interface javax.persistence.Query
executeUpdate
in interface javax.persistence.StoredProcedureQuery
executeUpdate
in class QueryImpl
public void finalize()
finalize
in class java.lang.Object
public java.lang.Object getOutputParameterValue(int position)
getOutputParameterValue
in interface javax.persistence.StoredProcedureQuery
position
- parameter positionjava.lang.IllegalArgumentException
- if the position does not correspond to a
parameter of the query or is not an INOUT or OUT parameterpublic java.lang.Object getOutputParameterValue(java.lang.String parameterName)
getOutputParameterValue
in interface javax.persistence.StoredProcedureQuery
parameterName
- name of the parameter as registered or specified in
metadatajava.lang.IllegalArgumentException
- if the parameter name does not
correspond to a parameter of the query or is not an INOUT or OUT parameterpublic java.util.List getResultList()
getResultList
in interface javax.persistence.Query
getResultList
in interface javax.persistence.StoredProcedureQuery
getResultList
in class QueryImpl
public java.lang.Object getSingleResult()
getSingleResult
in interface javax.persistence.Query
getSingleResult
in interface javax.persistence.StoredProcedureQuery
getSingleResult
in class QueryImpl
public int getUpdateCount()
getUpdateCount
in interface javax.persistence.StoredProcedureQuery
javax.persistence.QueryTimeoutException
- if the query execution exceeds
the query timeout value set and only the statement is
rolled backjavax.persistence.PersistenceException
- if the query execution exceeds
the query timeout value set and the transaction
is rolled backpublic boolean hasMoreResults()
hasMoreResults
in interface javax.persistence.StoredProcedureQuery
javax.persistence.QueryTimeoutException
- if the query execution exceeds the query
timeout value set and only the statement is rolled backjavax.persistence.PersistenceException
- if the query execution exceeds the query
timeout value set and the transaction is rolled backpublic javax.persistence.StoredProcedureQuery registerStoredProcedureParameter(int position, java.lang.Class type, javax.persistence.ParameterMode mode)
registerStoredProcedureParameter
in interface javax.persistence.StoredProcedureQuery
position
- parameter positiontype
- type of the parametermode
- parameter modepublic javax.persistence.StoredProcedureQuery registerStoredProcedureParameter(java.lang.String parameterName, java.lang.Class type, javax.persistence.ParameterMode mode)
registerStoredProcedureParameter
in interface javax.persistence.StoredProcedureQuery
parameterName
- name of the parameter as registered or
specified in metadatatype
- type of the parametermode
- parameter modepublic StoredProcedureQueryImpl setFirstResult(int startPosition)
setFirstResult
in interface javax.persistence.Query
setFirstResult
in class QueryImpl
start
- position of the first result, numbered from 0public StoredProcedureQueryImpl setFlushMode(javax.persistence.FlushModeType flushMode)
setFlushMode
in interface javax.persistence.Query
setFlushMode
in interface javax.persistence.StoredProcedureQuery
setFlushMode
in class QueryImpl
flushMode
- flush modepublic javax.persistence.StoredProcedureQuery setHint(java.lang.String hintName, java.lang.Object value)
setHint
in interface javax.persistence.Query
setHint
in interface javax.persistence.StoredProcedureQuery
hintName
- name of the property or hintvalue
- value for the property or hintjava.lang.IllegalArgumentException
- if the second argument is not valid for
the implementationpublic StoredProcedureQueryImpl setLockMode(javax.persistence.LockModeType lockMode)
setLockMode
in interface javax.persistence.Query
setLockMode
in class QueryImpl
lockMode
- java.lang.IllegalStateException
- if not a Java Persistence query language SELECT querypublic StoredProcedureQueryImpl setMaxResults(int maxResult)
setMaxResults
in interface javax.persistence.Query
setMaxResults
in class QueryImpl
maxResult
- public javax.persistence.StoredProcedureQuery setParameter(int position, java.util.Calendar value, javax.persistence.TemporalType temporalType)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
position
- value
- temporalType
- java.lang.IllegalArgumentException
- if position does not correspond to a
positional parameter of the query or if the value argument is of
incorrect typepublic javax.persistence.StoredProcedureQuery setParameter(int position, java.util.Date value, javax.persistence.TemporalType temporalType)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
position
- value
- temporalType
- java.lang.IllegalArgumentException
- if position does not correspond to a
positional parameter of the query or if the value argument is of
incorrect typepublic javax.persistence.StoredProcedureQuery setParameter(int position, java.lang.Object value)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
position
- value
- java.lang.IllegalArgumentException
- if position does not correspond to a
positional parameter of the query or if the argument is of incorrect typepublic javax.persistence.StoredProcedureQuery setParameter(javax.persistence.Parameter<java.util.Calendar> param, java.util.Calendar value, javax.persistence.TemporalType temporalType)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
param
- value
- temporalType
- java.lang.IllegalArgumentException
- if the parameter does not correspond to
a parameter of the querypublic javax.persistence.StoredProcedureQuery setParameter(javax.persistence.Parameter<java.util.Date> param, java.util.Date value, javax.persistence.TemporalType temporalType)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
param
- value
- temporalType
- java.lang.IllegalArgumentException
- if the parameter does not correspond to
a parameter of the querypublic <T> javax.persistence.StoredProcedureQuery setParameter(javax.persistence.Parameter<T> param, T value)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
param
- value
- java.lang.IllegalArgumentException
- if the parameter does not correspond to
a parameter of the querypublic javax.persistence.StoredProcedureQuery setParameter(java.lang.String name, java.util.Calendar value, javax.persistence.TemporalType temporalType)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
name
- value
- temporalType
- java.lang.IllegalArgumentException
- if the parameter name does not
correspond to a parameter of the query or if the value argument is of
incorrect typepublic javax.persistence.StoredProcedureQuery setParameter(java.lang.String name, java.util.Date value, javax.persistence.TemporalType temporalType)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
name
- value
- temporalType
- java.lang.IllegalArgumentException
- if the parameter name does not
correspond to a parameter of the query or if the value argument is of
incorrect typepublic javax.persistence.StoredProcedureQuery setParameter(java.lang.String name, java.lang.Object value)
setParameter
in interface javax.persistence.Query
setParameter
in interface javax.persistence.StoredProcedureQuery
name
- value
- java.lang.IllegalArgumentException
- if the parameter name does not
correspond to a parameter of the query or if the argument is of incorrect
typeEclipseLink 2.6.3, "build v20160428-59c81c5" API Reference