|
Oracle Fusion Middleware Java API Reference for Oracle TopLink 11g Release 1 (11.1.1) E28847-01 |
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object
org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform
org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
org.eclipse.persistence.platform.database.DatabasePlatform
org.eclipse.persistence.platform.database.OraclePlatform
org.eclipse.persistence.platform.database.oracle.Oracle8Platform
public class Oracle8Platform
Purpose: Supports certain new Oracle 8 data types, and usage of certain Oracle JDBC specific APIs.
Supports Oracle thin JDBC driver LOB >4k binding workaround.
Creates BLOB and CLOB type for byte[] and char[] for table creation.
Supports object-relational data-type creation.
| Field Summary | |
|---|---|
protected int |
lobValueLimitsThe LOB value limits when the Locator is required for the writing |
protected boolean |
usesLocatorForLOBWriteLocator is required for Oracle thin driver to write LOB value exceeds the limits |
| Fields inherited from class org.eclipse.persistence.platform.database.OraclePlatform |
|---|
supportsIdentity, vpdClearIdentifierQuery, vpdSetIdentifierQuery |
| Fields inherited from class org.eclipse.persistence.platform.database.DatabasePlatform |
|---|
DEFAULT_VARCHAR_SIZE |
| Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform |
|---|
castSizeForVarcharParameter, classTypes, cursorCode, DEFAULT_MAX_BATCH_WRITING_SIZE, DEFAULT_PARAMETERIZED_MAX_BATCH_WRITING_SIZE, fieldTypes, IS_VALID_TIMEOUT, isCastRequired, maxBatchWritingSize, partitioningCallback, pingSQL, printOuterJoinInWhereClause, shouldBindAllParameters, shouldBindLiterals, shouldCacheAllStatements, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldOptimizeDataConversion, shouldTrimStrings, statementCacheSize, stringBindingSize, structConverters, supportsAutoCommit, tableCreationSuffix, transactionIsolation, typeConverters, Types_NCLOB, Types_SQLXML, useRownumFiltering, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesStreamsForBinding, usesStringBinding |
| Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform |
|---|
conversionManager, dataTypesConvertedFromAClass, dataTypesConvertedToAClass, defaultSequence, endDelimiter, platformOperators, sequences, sequencesLock, startDelimiter, tableQualifier, timestampQuery |
| Constructor Summary | |
|---|---|
Oracle8Platform() |
|
| Method Summary | |
|---|---|
protected java.util.Hashtable |
buildFieldTypes()INTERNAL: |
void |
copyInto(org.eclipse.persistence.internal.databaseaccess.Platform platform)INTERNAL: Allow for conversion from the Oralce type to the Java type. |
java.sql.Array |
createArray(java.lang.String elementDataTypeName, java.lang.Object[] elements, java.sql.Connection connection)INTERNAL: Platforms that support java.sql.Array may override this method. |
java.sql.Struct |
createStruct(java.lang.String structTypeName, java.lang.Object[] attributes, java.sql.Connection connection)INTERNAL: Platforms that support java.sql.Struct may override this method. |
void |
freeTemporaryObject(java.lang.Object value)INTERNAL: Used by Oracle platforms during reading of ResultSet to free temporary LOBs. |
java.sql.Connection |
getConnection(org.eclipse.persistence.internal.sessions.AbstractSession session, java.sql.Connection connection)INTERNAL: This method is used to unwrap the oracle connection wrapped by the application server. |
java.lang.Object |
getCustomModifyValueForCall(Call call, java.lang.Object value, org.eclipse.persistence.internal.helper.DatabaseField field, boolean shouldBind)INTERNAL Used by SQLCall.translate(..) |
int |
getLobValueLimits()PUBLIC: Return the BLOB/CLOB value limits on thin driver. |
java.lang.Object |
getRefValue(java.sql.Ref ref, java.sql.Connection connection)INTERNAL: Overrides DatabasePlatform method. |
protected boolean |
isBlob(java.lang.Class type)INTERNAL: Used in writeLOB method only to identify a BLOB |
protected boolean |
isClob(java.lang.Class type)INTERNAL: Used in writeLOB method only to identify a CLOB |
boolean |
isNativeConnectionRequiredForLobLocator()INTERNAL: Indicates whether app. server should unwrap connection to use lob locator. |
protected boolean |
lobValueExceedsLimit(java.lang.Object value)INTERNAL: Return if the LOB value size is larger than the limit, i.e. 4k. |
void |
setLobValueLimits(int lobValueLimits)PUBLIC: Set the BLOB/CLOB value limits on thin driver. |
void |
setShouldUseLocatorForLOBWrite(boolean usesLocatorForLOBWrite)PUBLIC: Set if the locator is required for the LOB write. |
boolean |
shouldUseCustomModifyForCall(org.eclipse.persistence.internal.helper.DatabaseField field)INTERNAL Used by SQLCall.appendModify(..) |
boolean |
shouldUseLocatorForLOBWrite()PUBLIC: Return if the locator is required for the LOB write. |
void |
writeLOB(org.eclipse.persistence.internal.helper.DatabaseField field, java.lang.Object value, java.sql.ResultSet resultSet, org.eclipse.persistence.internal.sessions.AbstractSession session)INTERNAL: Write LOB value - only on Oracle8 and up |
| Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform |
|---|
addBatch, addStructConverter, appendBoolean, appendLiteralToCall, appendLiteralToCallWithBinding, appendNumber, appendParameter, appendParameterInternal, appendString, autoCommit, beginTransaction, buildBatchCriteria, buildBatchCriteriaForComplexId, buildClassTypes, buildCreateIndex, buildCreateIndex, buildDropIndex, buildDropIndex, buildProcedureCallString, buildSelectQueryForIdentity, buildSelectQueryForSequenceObject, buildSequenceObjectAlterIncrementWriter, buildSequenceObjectCreationWriter, buildSequenceObjectDeletionWriter, canBatchWriteWithOptimisticLocking, commitTransaction, computeMaxRowsForSQL, convertToDatabaseType, createArray, createPlatformDefaultSequence, createStruct, dontBindUpdateAllQueryUsingTempTables, executeBatch, executeStoredProcedure, getBatchDelimiterString, getCastSizeForVarcharParameter, getClassTypes, getConstraintDeletionString, getCreateTempTableSqlBodyForTable, getCreateTempTableSqlPrefix, getCreateTempTableSqlSuffix, getCreateViewString, getCreationInOutputProcedureToken, getCreationOutputProcedureToken, getCursorCode, getDefaultSequenceTableName, getFieldTypeDefinition, getFieldTypes, getFunctionCallHeader, getIdentifierQuoteCharacter, getIndexNamePrefix, getInOutputProcedureToken, getInputProcedureToken, getJDBCOuterJoinString, getJDBCType, getJDBCType, getJdbcTypeName, getMaxBatchWritingSize, getMaxForeignKeyNameSize, getMaxIndexNameSize, getMaxUniqueKeyNameSize, getNoWaitString, getOutputProcedureToken, getPartitioningCallback, getPingSQL, getProcedureArgumentString, getProcedureAsString, getProcedureBeginString, getProcedureEndString, getQualifiedName, getQualifiedSequenceTableName, getRefValue, getSelectForUpdateNoWaitString, getSelectForUpdateOfString, getSequenceCounterFieldName, getSequenceNameFieldName, getSequencePreallocationSize, getSequenceTableName, getStatementCacheSize, getStringBindingSize, getStructConverters, getTableCreationSuffix, getTempTableForTable, getTransactionIsolation, getTypeConverters, hasPartitioningCallback, initialize, initializeConnectionData, isCastRequired, isDynamicSQLRequiredForFunctions, isInformixOuterJoin, isNullAllowedInSelectClause, isXDBDocument, minimumTimeIncrement, prepareBatchStatement, printFieldIdentityClause, printFieldNotNullClause, printFieldTypeSize, printFieldTypeSize, printFieldUnique, printFieldUnique, printStoredFunctionReturnKeyWord, printValuelist, printValuelist, registerOutputParameter, requiresNamedPrimaryKeyConstraints, requiresProcedureBrackets, requiresProcedureCallBrackets, requiresProcedureCallOuputToken, requiresTableInIndexDropDDL, requiresTypeNameToRegisterOutputParameter, requiresUniqueConstraintCreationOnTableCreate, retrieveFirstPrimaryKeyOrOne, rollbackTransaction, setCastSizeForVarcharParameter, setClassTypes, setCursorCode, setFieldTypes, setIsCastRequired, setMaxBatchWritingSize, setNullFromDatabaseField, setParameterValueInDatabaseCall, setPartitioningCallback, setPingSQL, setPrintOuterJoinInWhereClause, setSequenceCounterFieldName, setSequenceNameFieldName, setSequenceTableName, setShouldBindAllParameters, setShouldBindLiterals, setShouldCacheAllStatements, setShouldForceFieldNamesToUpperCase, setShouldIgnoreCaseOnFieldComparisons, setShouldOptimizeDataConversion, setShouldTrimStrings, setShouldUseRownumFiltering, setStatementCacheSize, setStringBindingSize, setSupportsAutoCommit, setTableCreationSuffix, setTransactionIsolation, setUsesBatchWriting, setUsesByteArrayBinding, setUsesJDBCBatchWriting, setUsesNativeBatchWriting, setUsesNativeSQL, setUsesStreamsForBinding, setUsesStringBinding, shouldAlwaysUseTempStorageForModifyAll, shouldBindAllParameters, shouldBindLiterals, shouldCacheAllStatements, shouldCreateIndicesForPrimaryKeys, shouldCreateIndicesOnUniqueKeys, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldIgnoreException, shouldNativeSequenceUseTransaction, shouldOptimizeDataConversion, shouldPrintAliasForUpdate, shouldPrintConstraintNameAfter, shouldPrintFieldIdentityClause, shouldPrintInOutputTokenBeforeType, shouldPrintInputTokenAtStart, shouldPrintLockingClauseAfterWhereClause, shouldPrintOuterJoinInWhereClause, shouldPrintOutputTokenAtStart, shouldPrintOutputTokenBeforeType, shouldPrintStoredProcedureArgumentNameInCall, shouldPrintStoredProcedureVariablesAfterBeginString, shouldTempTableSpecifyPrimaryKeys, shouldTrimStrings, shouldUseRownumFiltering, supportsANSIInnerJoinSyntax, supportsAutoCommit, supportsForeignKeyConstraints, supportsGlobalTempTables, supportsIndexes, supportsIndividualTableLocking, supportsLocalTempTables, supportsLockingQueriesWithMultipleTables, supportsNativeSequenceNumbers, supportsNestingOuterJoins, supportsOuterJoinsWithBrackets, supportsPrimaryKeyConstraint, supportsTempTables, supportsUniqueColumns, supportsUniqueKeyConstraints, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesSequenceTable, usesStreamsForBinding, usesStringBinding, writeAutoAssignmentSetClause, writeAutoJoinWhereClause, writeCleanUpTempTableSql, writeCreateTempTableSql, writeDeleteFromTargetTableUsingTempTableSql, writeFields, writeFieldsAutoClause, writeFieldsList, writeInsertIntoTableSql, writeJoinWhereClause, writeParameterMarker, writeTableCreationSuffix, writeUpdateOriginalFromTempTableSql |
| Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform |
|---|
addOperator, addSequence, addSequence, clone, convertObject, createConnectionCustomizer, getConversionManager, getDataTypesConvertedFrom, getDataTypesConvertedTo, getDefaultSequence, getDefaultSequenceToWrite, getEndDelimiter, getOperator, getPlatformOperators, getSelectSequenceQuery, getSequence, getSequences, getSequencesToWrite, getStartDelimiter, getTableQualifier, getTimestampFromServer, getUpdateSequenceQuery, hasDefaultSequence, isAccess, isAttunity, isCloudscape, isDB2, isDBase, isDerby, isFirebird, isH2, isHSQL, isInformix, isMaxDB, isMySQL, isODBC, isOracle9, isPointBase, isPostgreSQL, isSQLAnywhere, isSQLServer, isSybase, isSymfoware, isTimesTen, isTimesTen7, removeAllSequences, removeSequence, sequencesAfterCloneCleanup, setConversionManager, setDefaultSequence, setEndDelimiter, setSelectSequenceNumberQuery, setSequencePreallocationSize, setSequences, setStartDelimiter, setTableQualifier, setTimestampQuery, setUpdateSequenceQuery, toString, usesPlatformDefaultSequence |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected boolean usesLocatorForLOBWrite
protected int lobValueLimits
| Constructor Detail |
|---|
public Oracle8Platform()
| Method Detail |
|---|
protected java.util.Hashtable buildFieldTypes()
buildFieldTypes in class OraclePlatformpublic void copyInto(org.eclipse.persistence.internal.databaseaccess.Platform platform)
copyInto in interface org.eclipse.persistence.internal.databaseaccess.PlatformcopyInto in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformprotected boolean lobValueExceedsLimit(java.lang.Object value)
public java.sql.Connection getConnection(org.eclipse.persistence.internal.sessions.AbstractSession session,
java.sql.Connection connection)
getConnection in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public java.lang.Object getCustomModifyValueForCall(Call call,
java.lang.Object value,
org.eclipse.persistence.internal.helper.DatabaseField field,
boolean shouldBind)
getCustomModifyValueForCall in interface org.eclipse.persistence.internal.databaseaccess.PlatformgetCustomModifyValueForCall in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformpublic boolean shouldUseCustomModifyForCall(org.eclipse.persistence.internal.helper.DatabaseField field)
shouldUseCustomModifyForCall in interface org.eclipse.persistence.internal.databaseaccess.PlatformshouldUseCustomModifyForCall in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatform
public void writeLOB(org.eclipse.persistence.internal.helper.DatabaseField field,
java.lang.Object value,
java.sql.ResultSet resultSet,
org.eclipse.persistence.internal.sessions.AbstractSession session)
throws java.sql.SQLException
writeLOB in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformjava.sql.SQLExceptionprotected boolean isBlob(java.lang.Class type)
protected boolean isClob(java.lang.Class type)
public boolean isNativeConnectionRequiredForLobLocator()
isNativeConnectionRequiredForLobLocator in class OraclePlatformpublic void setShouldUseLocatorForLOBWrite(boolean usesLocatorForLOBWrite)
public boolean shouldUseLocatorForLOBWrite()
public int getLobValueLimits()
public void setLobValueLimits(int lobValueLimits)
public java.sql.Array createArray(java.lang.String elementDataTypeName,
java.lang.Object[] elements,
java.sql.Connection connection)
throws java.sql.SQLException
createArray in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformjava.sql.SQLException
public java.sql.Struct createStruct(java.lang.String structTypeName,
java.lang.Object[] attributes,
java.sql.Connection connection)
throws java.sql.SQLException
createStruct in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformjava.sql.SQLException
public java.lang.Object getRefValue(java.sql.Ref ref,
java.sql.Connection connection)
throws java.sql.SQLException
getRefValue in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformjava.sql.SQLException
public void freeTemporaryObject(java.lang.Object value)
throws java.sql.SQLException
freeTemporaryObject in class org.eclipse.persistence.internal.databaseaccess.DatabasePlatformjava.sql.SQLException
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||