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
public class PLSQLStoredFunctionCall extends PLSQLStoredProcedureCall
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:
- Serialized Form
-
-
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
Constructors Constructor Description PLSQLStoredFunctionCall()
PLSQLStoredFunctionCall(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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
buildProcedureInvocation(StringBuilder sb, List<PLSQLargument> arguments)
INTERNAL Generate portion of the Anonymous PL/SQL block that invokes the target function.String
getCallHeader(org.eclipse.persistence.internal.databaseaccess.DatabasePlatform platform)
INTERNAL: Return call header for the call string.int
getFirstParameterIndexForCallString()
INTERNAL: Return the first index of parameter to be placed inside brackets in the call string.boolean
isStoredFunctionCall()
INTERNAL:boolean
isStoredPLSQLFunctionCall()
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 Detail
-
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 Detail
-
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
protected void buildProcedureInvocation(StringBuilder sb, List<PLSQLargument> arguments)
INTERNAL Generate portion of the Anonymous PL/SQL block that invokes the target function.- Overrides:
buildProcedureInvocation
in classPLSQLStoredProcedureCall
-
-