Top Description Fields Constructors Methods
org.eclipse.persistence.internal.jpa

public Class StoredProcedureQueryImpl

extends QueryImpl
implements StoredProcedureQuery
Class Inheritance
All Implemented Interfaces
jakarta.persistence.StoredProcedureQuery, jakarta.persistence.Query
Imports
java.sql.CallableStatement, .ResultSet, .ResultSetMetaData, .SQLException, .Statement, java.util.Calendar, .Date, .HashMap, .List, .Map, .Vector, jakarta.persistence.FlushModeType, .LockModeType, .LockTimeoutException, .Parameter, .ParameterMode, .PersistenceException, .QueryTimeoutException, .StoredProcedureQuery, .TemporalType, org.eclipse.persistence.exceptions.DatabaseException, org.eclipse.persistence.internal.databaseaccess.*, .DatasourceCall.ParameterType, org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.jpa.querydef.ParameterExpressionImpl, org.eclipse.persistence.internal.localization.ExceptionLocalization, org.eclipse.persistence.internal.sessions.AbstractRecord, .AbstractSession, org.eclipse.persistence.logging.SessionLog, org.eclipse.persistence.queries.DataReadQuery, .DatabaseQuery, .ReadAllQuery, .ResultSetMappingQuery, .SQLResultSetMapping, .StoredProcedureCall

Concrete JPA query class. The JPA query wraps a StoredProcesureQuery which is executed.

Field Summary

Modifier and TypeField and Description
protected DatabaseCall
protected int
protected Statement
protected boolean
protected boolean
protected int
Inherited from org.eclipse.persistence.internal.jpa.QueryImpl:
databaseQueryentityManagerfirstResultIndexisSharedlockModemaxResultsparametersparameterValuesqueryNameUNDEFINED

Constructor Summary

AccessConstructor and Description
protected
StoredProcedureQueryImpl(EntityManagerImpl entityManager)

Base constructor for StoredProcedureQueryImpl.

public
StoredProcedureQueryImpl(DatabaseQuery query, EntityManagerImpl entityManager)

Create an StoredProcedureQueryImpl with a DatabaseQuery.

public
StoredProcedureQueryImpl(String name, EntityManagerImpl entityManager)

Create an StoredProcedureQueryImpl with a query name.

Method Summary

Modifier and TypeMethod and Description
protected List<E>
buildResultRecords(ResultSet resultSet)

Build the given result set into a list objects.

public static DatabaseQuery
buildResultSetMappingNameQuery(List<String> resultSetMappingNames, StoredProcedureCall call)

Build a ResultSetMappingQuery from a sql result set mapping name and a stored procedure call.

public static DatabaseQuery
buildResultSetMappingNameQuery(List<String> resultSetMappingNames, StoredProcedureCall call, Map<String, Object> hints, ClassLoader classLoader, AbstractSession session)

Build a ResultSetMappingQuery from a sql result set mapping name and a stored procedure call.

public static DatabaseQuery
buildResultSetMappingQuery(List<SQLResultSetMapping> resultSetMappings, StoredProcedureCall call)

Build a ResultSetMappingQuery from the sql result set mappings given a stored procedure call.

public static DatabaseQuery
buildResultSetMappingQuery(List<SQLResultSetMapping> resultSetMappings, StoredProcedureCall call, Map<String, Object> hints, ClassLoader classLoader, AbstractSession session)

Build a ResultSetMappingQuery from the sql result set mappings given a stored procedure call.

public static DatabaseQuery
buildStoredProcedureQuery(Class<?> resultClass, StoredProcedureCall call, Map<String, Object> hints, ClassLoader classLoader, AbstractSession session)

Build a ReadAllQuery from a class and stored procedure call.

public static DatabaseQuery
buildStoredProcedureQuery(StoredProcedureCall call, Map<String, Object> hints, ClassLoader classLoader, AbstractSession session)

Build a DataReadQuery with the stored procedure call given.

public static DatabaseQuery
buildStoredProcedureQuery(String sqlResultSetMappingName, StoredProcedureCall call, Map<String, Object> hints, ClassLoader classLoader, AbstractSession session)

Build a ResultSetMappingQuery from a sql result set mapping name and a stored procedure call.

public void
close()

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.close.

Call this method to close any open connections to the database.
public boolean

Returns:

true if first result corresponds to result set
execute
()

Implements jakarta.persistence.StoredProcedureQuery.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.
public int

Returns:

the number of entities updated or deleted
executeUpdate
()

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.executeUpdate.

Implements jakarta.persistence.StoredProcedureQuery.executeUpdate.

Execute an update or delete statement (from a stored procedure query).
public void
finalize()

Overrides java.lang.Object.finalize.

Finalize method in case the query is not closed.
protected StoredProcedureCall
getCall()

Return the stored procedure call associated with this query.

protected Map<String, Parameter<?>>
public Object

Returns:

the result that is passed back through the parameter
getOutputParameterValue
(int
parameter position
position
)

Implements jakarta.persistence.StoredProcedureQuery.getOutputParameterValue.

Used to retrieve the values passed back from the procedure through INOUT and OUT parameters.
public Object

Returns:

the result that is passed back through the parameter
getOutputParameterValue
(String
name of the parameter as registered or specified in metadata
parameterName
)

Implements jakarta.persistence.StoredProcedureQuery.getOutputParameterValue.

Used to retrieve the values passed back from the procedure through INOUT and OUT parameters.
public List<E>

Returns:

a list of the results
getResultList
()

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.getResultList.

Implements jakarta.persistence.StoredProcedureQuery.getResultList.

Execute the query and return the query results as a List.
protected ResultSetMappingQuery
getResultSetMappingQuery()

Return the ResultSetMappingQuery for this stored procedure query.

public Object

Returns:

a single result object.
getSingleResult
()

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.getSingleResult.

Implements jakarta.persistence.StoredProcedureQuery.getSingleResult.

Execute the query and return the single query result.
public int

Returns:

update count or -1 if there is no pending result or if the next result is not an update count
getUpdateCount
()

Implements jakarta.persistence.StoredProcedureQuery.getUpdateCount.

Returns the update count or -1 if there is no pending result or if the next result is not an update count.
public boolean

Returns:

true if next result corresponds to result set
hasMoreResults
()

Implements jakarta.persistence.StoredProcedureQuery.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.
private boolean
protected boolean
isValidCallableStatement()

Returns true if the execute statement for this query is 1) not null (i.e. query has been executed and 2) is an instance of callable statement, meaning there are out parameters associated with it.

private void
moveResultPointer()

INTERNAL: Move the pointer up and update our has more results flag.

public StoredProcedureQuery

Returns:

the same query instance
registerStoredProcedureParameter
(int
parameter position
position
,
Class<T>
type of the parameter
type
,
ParameterMode
parameter mode
mode
)

Implements jakarta.persistence.StoredProcedureQuery.registerStoredProcedureParameter.

Register a positional parameter.
public StoredProcedureQuery

Returns:

the same query instance
registerStoredProcedureParameter
(String
name of the parameter as registered or specified in metadata
parameterName
,
Class<T>
type of the parameter
type
,
ParameterMode
parameter mode
mode
)

Implements jakarta.persistence.StoredProcedureQuery.registerStoredProcedureParameter.

Register a named parameter.
public StoredProcedureQueryImpl

Returns:

the same query instance
setFirstResult
(int
position of the first result, numbered from 0
startPosition
)

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.setFirstResult.

Implements jakarta.persistence.Query.setFirstResult.

Set the position of the first result to retrieve.
public StoredProcedureQueryImpl

Returns:

the same query instance
setFlushMode
(FlushModeType
flush mode
flushMode
)

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.setFlushMode.

Implements jakarta.persistence.StoredProcedureQuery.setFlushMode.

Set the flush mode type to be used for the query execution.
public StoredProcedureQuery

Returns:

the same query instance
setHint
(String
name of the property or hint
hintName
,
Object
value for the property or hint
value
)

Implements jakarta.persistence.StoredProcedureQuery.setHint.

Set a query property or hint.
public StoredProcedureQueryImpl
setLockMode(LockModeType
lock mode
lockMode
)

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.setLockMode.

Implements jakarta.persistence.Query.setLockMode.

Set the lock mode type to be used for the query execution.
public StoredProcedureQueryImpl

Returns:

the same query instance
setMaxResults
(int
maximum number of results to retrieve
maxResult
)

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.setMaxResults.

Implements jakarta.persistence.Query.setMaxResults.

Set the maximum number of results to retrieve.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(int
position
position
,
Calendar
parameter value
value
,
TemporalType
temporal type
temporalType
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an instance of java.util.Calendar to a positional parameter.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(int
position
position
,
Date
parameter value
value
,
TemporalType
temporal type
temporalType
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an instance of java.util.Date to a positional parameter.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(int
position
position
,
Object
parameter value
value
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an argument to a positional parameter.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(Parameter<Calendar>
parameter object
param
,
Calendar
parameter value
value
,
TemporalType
temporal type
temporalType
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an instance of java.util.Calendar to a Parameter object.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(Parameter<Date>
parameter object
param
,
Date
parameter value
value
,
TemporalType
temporal type
temporalType
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an instance of java.util.Date to a Parameter object.
public <T> StoredProcedureQuery

Returns:

the same query instance
setParameter
(Parameter<T>
parameter object
param
,
T
parameter value
value
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind the value of a Parameter object.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(String
parameter name
name
,
Calendar
parameter value
value
,
TemporalType
temporal type
temporalType
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an instance of java.util.Calendar to a named parameter.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(String
parameter name
name
,
Date
parameter value
value
,
TemporalType
temporal type
temporalType
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an instance of java.util.Date to a named parameter.
public StoredProcedureQuery

Returns:

the same query instance
setParameter
(String
parameter name
name
,
Object
parameter value
value
)

Implements jakarta.persistence.StoredProcedureQuery.setParameter.

Bind an argument to a named parameter.
protected void
setParameterInternal(String
the parameter name
name
,
Object
to bind
value
,
boolean
defines if index or named
isIndex
)

Overrides org.eclipse.persistence.internal.jpa.QueryImpl.setParameterInternal.

Bind an argument to a named or indexed parameter.
Inherited from org.eclipse.persistence.internal.jpa.QueryImpl:
applyArgumentsapplyHintscloneSharedQueryconvertTemporalTypeexecuteReadQuerygetActiveSessiongetDatabaseQuerygetDatabaseQueryInternalgetDetailedExceptiongetEntityManagergetFirstResultgetFlushModegetHintsgetLockModegetMaxResultsgetMaxResultsInternalgetParametergetParametergetParametergetParametergetParameterIdgetParametersgetParameterValuegetParameterValuegetParameterValuegetSupportedHintsisBoundisFlushModeAUTOisValidActualParameterperformPreQueryFlushprocessParameterspropagateResultPropertiessetAsDataModifyQuerysetAsSQLModifyQuerysetAsSQLReadQuerysetDatabaseQuerysetFirstResultInternalsetHintInternalsetMaxResultsInternalsetParameterInternalsetRollbackOnlythrowNonUniqueResultExceptionthrowNoResultExceptiontoStringunwrap