Class PLSQLStoredFunctionCall
java.lang.Object
org.eclipse.persistence.internal.databaseaccess.DatasourceCall
org.eclipse.persistence.internal.databaseaccess.DatabaseCall
org.eclipse.persistence.queries.StoredProcedureCall
org.eclipse.persistence.platform.database.oracle.plsql.PLSQLStoredProcedureCall
org.eclipse.persistence.platform.database.oracle.plsql.PLSQLStoredFunctionCall
- All Implemented Interfaces:
Serializable
,Cloneable
,Call
Purpose: Used to define a platform independent function call.
Note that not all platforms support stored functions.
This supports output parameters.
Functions can also be called through custom SQL.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourceCall
org.eclipse.persistence.internal.databaseaccess.DatasourceCall.ParameterType
-
Field Summary
Fields inherited from class org.eclipse.persistence.platform.database.oracle.plsql.PLSQLStoredProcedureCall
arguments, functionId, originalIndex, translationRow, typesInfo
Fields inherited from class org.eclipse.persistence.queries.StoredProcedureCall
optionalArguments, procedureArgumentNames, procedureName
Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatabaseCall
executeReturnValue, fields, fieldsArray, firstResult, FIRSTRESULT_FIELD, generatedKeys, hasAllocatedConnection, hasMultipleResultSets, hasOptimisticLock, ignoreFirstRowSetting, ignoreMaxResultsSetting, isBatchExecutionSupported, isCallableStatementRequired, isCursorOutputProcedure, isFieldMatchingRequired, isMultipleCursorOutputProcedure, isResultSetScrollable, MAXROW_FIELD, maxRows, queryTimeout, queryTimeoutUnit, result, resultSetConcurrency, resultSetFetchSize, resultSetType, returnMultipleResultSetCollections, returnsResultSet, shouldBuildOutputRow, shouldCacheStatement, shouldReturnGeneratedKeys, sqlString, statement, usesBinding
Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourceCall
EXECUTE_UPDATE, isNativeConnectionRequired, isPrepared, NO_RETURN, outputCursors, parameterBindings, parameters, parameterTypes, query, RETURN_CURSOR, RETURN_MANY_ROWS, RETURN_ONE_ROW, returnType, shouldProcessTokenInQuotes
-
Constructor Summary
ConstructorDescriptionPLSQLStoredFunctionCall
(org.eclipse.persistence.internal.helper.DatabaseType databaseType) PLSQLStoredFunctionCall
(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length) PLSQLStoredFunctionCall
(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length, int scale) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
buildProcedureInvocation
(StringBuilder sb, List<PLSQLargument> arguments) INTERNAL Generate portion of the Anonymous PL/SQL block that invokes the target function.getCallHeader
(org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform) INTERNAL: Return call header for the call string.int
INTERNAL: Return the first index of parameter to be placed inside brackets in the call string.boolean
INTERNAL:boolean
void
prepareInternal
(org.eclipse.persistence.internal.sessions.AbstractSession session) INTERNAL:void
setResult
(org.eclipse.persistence.internal.helper.DatabaseType databaseType) PUBLIC: Define the return type of the function.void
setResult
(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length) PUBLIC: Define the return type of the function.void
setResult
(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length, int scale) PUBLIC: Define the return type of the function.Methods inherited from class org.eclipse.persistence.platform.database.oracle.plsql.PLSQLStoredProcedureCall
addNamedArgument, addNamedArgument, addNamedArgument, addNamedArgument, addNamedArgument, addNamedArgument, addNamedArgument, addNamedArgumentValue, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgument, addNamedInOutputArgumentValue, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNamedOutputArgument, addNestedFunctionsForArgument, addUnamedArgument, addUnamedArgument, addUnamedArgument, addUnamedArgument, addUnamedArgument, addUnamedArgumentValue, addUnamedInOutputArgument, addUnamedInOutputArgument, addUnamedInOutputArgument, addUnamedInOutputArgument, addUnamedInOutputArgument, addUnamedInOutputArgument, addUnamedInOutputArgument, addUnamedInOutputArgumentValue, addUnamedOutputArgument, addUnamedOutputArgument, addUnamedOutputArgument, addUnamedOutputArgument, addUnamedOutputArgument, addUnamedOutputArgument, assignIndices, buildBeginBlock, buildDeclareBlock, buildNestedFunctions, buildOutAssignments, buildOutputRow, generateNestedFunction, generateNestedFunction, getArguments, getArguments, getArguments, getLogString, getOutputParameterValue, getPl2SQLName, getSQL2PlName, isStoredPLSQLProcedureCall, prepareStatement, setArguments, translate, useNamedCursorOutputAsResultSet, useNamedCursorOutputAsResultSet, useUnnamedCursorOutputAsResultSet
Methods inherited from class org.eclipse.persistence.queries.StoredProcedureCall
addNamedArgument, addNamedArgument, addNamedArgument, addNamedArgument, addNamedArgument, addNamedCursorOutputArgument, addOptionalArgument, addUnnamedCursorOutputArgument, bindParameter, getOptionalArguments, getProcedureArgumentNames, getProcedureName, hasOptionalArguments, isCallableStatementRequired, isStoredProcedureCall, setHasMultipleResultSets, setOptionalArguments, setProcedureArgumentNames, setProcedureName, setReturnsResultSet, toString, useCursorOutputResultSet, useUnnamedCursorOutputAsResultSet
Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatabaseCall
addContext, appendLogParameters, appendParameter, buildNewQueryMechanism, buildQueryMechanism, createInOutParameter, getCallString, getContexts, getCursorOutIndex, getExecuteReturnValue, getFields, getFieldsArray, getFieldWithTypeFromDescriptor, getFirstResult, getGeneratedKeys, getMaxRows, getOutputParameterValue, getOutputRowFields, getQueryString, getQueryTimeout, getResult, getResultSetConcurrency, getResultSetFetchSize, getResultSetType, getReturnsResultSet, getSQLString, getStatement, hasAllocatedConnection, hasMultipleResultSets, hasOptimisticLock, isBatchExecutionSupported, isCursorOutputProcedure, isCursorReturned, isDynamicCall, isFieldMatchingRequired, isFinished, isLOBLocatorNeeded, isMultipleCursorOutputProcedure, isNonCursorOutputProcedure, isResultSetScrollable, matchFieldOrder, prepare, prepareInternalParameters, returnMultipleResultSetCollections, setBatchExecutionSupported, setContexts, setExecuteReturnValue, setFields, setFirstResult, setGeneratedKeys, setHasAllocatedConnection, setHasOptimisticLock, setIgnoreFirstRowSetting, setIgnoreMaxResultsSetting, setIsCallableStatementRequired, setIsCursorOutputProcedure, setIsFieldMatchingRequired, setIsMultipleCursorOutputProcedure, setIsResultSetScrollable, setMaxRows, setQueryString, setQueryTimeout, setQueryTimeoutUnit, setResult, setResultSetConcurrency, setResultSetFetchSize, setResultSetType, setReturnMultipleResultSetCollections, setShouldBuildOutputRow, setShouldCacheStatement, setShouldReturnGeneratedKeys, setSQLStringInternal, setStatement, shouldBuildOutputRow, shouldCacheStatement, shouldCacheStatement, shouldIgnoreFirstRowSetting, shouldIgnoreMaxResultsSetting, shouldReturnGeneratedKeys
Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourceCall
appendIn, appendIn, appendIn, appendInOut, appendInOut, appendInOut, appendInOut, appendInOut, appendLiteral, appendLiteral, appendLiteral, appendModify, appendModify, appendModify, appendOut, appendOut, appendOut, appendOutCursor, appendOutCursor, appendTranslation, appendTranslation, appendTranslation, areManyRowsReturned, argumentMarker, clone, createField, getOutputCursors, getParameterBindings, getParameters, getParameterTypes, getQuery, getReturnType, getValueForInOutParameter, getValueForInParameter, hasOutputCursors, hasParameters, isEISInteraction, isExecuteUpdate, isJPQLCall, isNativeConnectionRequired, isNothingReturned, isOneRowReturned, isOutputParameterType, isPrepared, isQueryStringCall, isReturnSet, isSQLCall, isUsesBindingSet, returnCursor, returnManyRows, returnNothing, returnOneRow, setExecuteUpdate, setIsNativeConnectionRequired, setIsPrepared, setParameterBindings, setParameters, setParameterTypes, setQuery, setReturnType, setUsesBinding, translateCustomQuery, translatePureSQLCustomQuery, translateQueryString, translateQueryStringAndBindParameters, translateQueryStringForParameterizedIN, usesBinding, usesBinding, usesBinding, whitespace
-
Constructor Details
-
PLSQLStoredFunctionCall
public PLSQLStoredFunctionCall() -
PLSQLStoredFunctionCall
public PLSQLStoredFunctionCall(org.eclipse.persistence.internal.helper.DatabaseType databaseType) -
PLSQLStoredFunctionCall
public PLSQLStoredFunctionCall(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length) -
PLSQLStoredFunctionCall
public PLSQLStoredFunctionCall(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length, int scale)
-
-
Method Details
-
getCallHeader
public String getCallHeader(org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform) INTERNAL: Return call header for the call string.- Overrides:
getCallHeader
in classStoredProcedureCall
-
getFirstParameterIndexForCallString
public int getFirstParameterIndexForCallString()INTERNAL: Return the first index of parameter to be placed inside brackets in the call string.- Overrides:
getFirstParameterIndexForCallString
in classStoredProcedureCall
-
isStoredFunctionCall
public boolean isStoredFunctionCall()INTERNAL:- Overrides:
isStoredFunctionCall
in classorg.eclipse.persistence.internal.databaseaccess.DatasourceCall
-
isStoredPLSQLFunctionCall
public boolean isStoredPLSQLFunctionCall()- Overrides:
isStoredPLSQLFunctionCall
in classorg.eclipse.persistence.internal.databaseaccess.DatasourceCall
-
prepareInternal
public void prepareInternal(org.eclipse.persistence.internal.sessions.AbstractSession session) INTERNAL:- Overrides:
prepareInternal
in classPLSQLStoredProcedureCall
-
setResult
public void setResult(org.eclipse.persistence.internal.helper.DatabaseType databaseType) PUBLIC: Define the return type of the function. -
setResult
public void setResult(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length) PUBLIC: Define the return type of the function. -
setResult
public void setResult(org.eclipse.persistence.internal.helper.DatabaseType databaseType, int length, int scale) PUBLIC: Define the return type of the function. -
buildProcedureInvocation
INTERNAL Generate portion of the Anonymous PL/SQL block that invokes the target function.- Overrides:
buildProcedureInvocation
in classPLSQLStoredProcedureCall
-