Package org.jumpmind.symmetric.db.oracle
Class OracleSymmetricDialect
java.lang.Object
org.jumpmind.symmetric.db.AbstractSymmetricDialect
org.jumpmind.symmetric.db.oracle.OracleSymmetricDialect
- All Implemented Interfaces:
ISymmetricDialect
-
Field Summary
Fields inherited from class org.jumpmind.symmetric.db.AbstractSymmetricDialect
databaseMajorVersion, databaseMinorVersion, databaseName, databaseProductVersion, driverName, driverVersion, extensionService, isSpatialTypesEnabled, log, MAX_SYMMETRIC_SUPPORTED_TRIGGER_SIZE, parameterService, platform, sqlKeywords, sqlReplacementTokens, supportsDdlTriggers, supportsGetGeneratedKeys, supportsSubselectsInDelete, supportsSubselectsInUpdate, supportsTransactionViews, tablePrefixLowerCase, targetDialect, triggerTemplate
-
Constructor Summary
ConstructorsConstructorDescriptionOracleSymmetricDialect
(IParameterService parameterService, IDatabasePlatform platform) -
Method Summary
Modifier and TypeMethodDescriptionfinal boolean
areDatabaseTransactionsPendingSince
(long time) protected void
void
boolean
createOrAlterTablesIfNecessary
(String... tableNames) void
void
createTrigger
(StringBuilder sqlBuffer, DataEventType dml, Trigger trigger, TriggerHistory history, Channel channel, String tablePrefix, Table table, ISqlTransaction transaction) void
disableSyncTriggers
(ISqlTransaction transaction, String nodeId) boolean
doesDdlTriggerExist
(String catalogName, String schema, String triggerName) protected boolean
doesTriggerExistOnPlatform
(StringBuilder sqlBuffer, String catalog, String schema, String tableName, String triggerName) void
void
enableSyncTriggers
(ISqlTransaction transaction) long
getCurrentSequenceValue
(SequenceIdentifier identifier) protected String
protected String
getDropTriggerSql
(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName, String tableName) getInitialLoadTwoPassLobLengthSql
(Column column, boolean isFirstPass) getSequenceName
(SequenceIdentifier identifier) protected String
getTransactionId
(ISqlTransaction transaction) getTransactionTriggerExpression
(String defaultCatalog, String defaultSchema, Trigger trigger) boolean
isInitialLoadTwoPassLob
(Table table) massageDataExtractionSql
(String sql, boolean isContainsBigLob) massageForLob
(String sql, boolean isContainsBigLob) void
removeDdlTrigger
(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName) boolean
Methods inherited from class org.jumpmind.symmetric.db.AbstractSymmetricDialect
canGapsOccurInCapturedDataIds, cleanupTriggers, close, createCsvDataSql, createCsvPrimaryKeySql, createDdlTrigger, createInitialLoadSqlFor, createPostDdlTriggerDDL, createPostTriggerDDL, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlForMultipleTables, createRequiredDatabaseObjects, createTrigger, disableSyncTriggers, doesTriggerExist, dropTablesAndDatabaseObjects, escapesTemplatesForDatabaseInserts, getColumnPositionUsingTemplate, getCreateRequiredDatabaseObjectsDDL, getCreateSymmetricDDL, getDatabaseTime, getDataHasChangedCondition, getDriverName, getDriverVersion, getEngineName, getInitialLoadTableAlias, getInitialLoadTwoPassLobSql, getMajorVersion, getMasterCollation, getMaxTriggerNameLength, getMinorVersion, getName, getParameterService, getPlatform, getProductVersion, getSequenceKeyName, getSourceNodeExpression, getSqlKeywords, getSqlReplacementTokens, getSqlTypeForIds, getSymmetricDdlChanges, getTablePrefix, getTargetDialect, getTargetDialect, getTargetPlatform, getTargetPlatform, getTriggerTemplate, getVersion, initTablesAndDatabaseObjects, insertWithGeneratedKey, insertWithGeneratedKey, install, installed, isBlobSyncSupported, isClobSyncSupported, isTransactionIdOverrideSupported, logSql, merge, needsToSelectLobData, orderColumns, postCreateDdlTrigger, postCreateTrigger, prefixConfigDatabase, preProcessTriggerSqlClause, readDatabaseFromXml, readSymmetricSchemaFromDatabase, removeTrigger, removeTrigger, replaceTokens, requiresAutoCommitFalseToSetFetchSize, setExtensionService, setTargetDialect, supportsBatchUpdates, supportsDdlTriggers, supportsOpenCursorsAcrossCommit, supportsSubselectsInDelete, supportsSubselectsInUpdate, supportsTransactionViews, switchCatalogForTriggerInstall, truncateTable, uninstall, uninstall, verifyDatabaseIsCompatible
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jumpmind.symmetric.db.ISymmetricDialect
canGapsOccurInCapturedDataIds, cleanupTriggers, createCsvDataSql, createCsvPrimaryKeySql, createDdlTrigger, createInitialLoadSqlFor, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlFor, createPurgeSqlForMultipleTables, createRequiredDatabaseObjects, createTrigger, disableSyncTriggers, doesTriggerExist, dropTablesAndDatabaseObjects, escapesTemplatesForDatabaseInserts, getColumnPositionUsingTemplate, getCreateRequiredDatabaseObjectsDDL, getCreateSymmetricDDL, getDatabaseTime, getDataHasChangedCondition, getDriverName, getDriverVersion, getEngineName, getInitialLoadTableAlias, getInitialLoadTwoPassLobSql, getMajorVersion, getMasterCollation, getMaxTriggerNameLength, getMinorVersion, getName, getParameterService, getPlatform, getProductVersion, getSequenceKeyName, getSourceNodeExpression, getSqlKeywords, getSqlReplacementTokens, getSqlTypeForIds, getSymmetricDdlChanges, getTablePrefix, getTargetDialect, getTargetDialect, getTargetPlatform, getTargetPlatform, getTriggerTemplate, getVersion, initTablesAndDatabaseObjects, insertWithGeneratedKey, insertWithGeneratedKey, isBlobSyncSupported, isClobSyncSupported, isTransactionIdOverrideSupported, needsToSelectLobData, orderColumns, preProcessTriggerSqlClause, removeTrigger, removeTrigger, setExtensionService, setTargetDialect, supportsBatchUpdates, supportsDdlTriggers, supportsOpenCursorsAcrossCommit, supportsSubselectsInDelete, supportsSubselectsInUpdate, supportsTransactionViews, truncateTable, verifyDatabaseIsCompatible
-
Constructor Details
-
OracleSymmetricDialect
-
-
Method Details
-
readSymmetricSchemaFromXml
- Specified by:
readSymmetricSchemaFromXml
in interfaceISymmetricDialect
- Overrides:
readSymmetricSchemaFromXml
in classAbstractSymmetricDialect
-
buildSqlReplacementTokens
protected void buildSqlReplacementTokens()- Overrides:
buildSqlReplacementTokens
in classAbstractSymmetricDialect
-
doesTriggerExistOnPlatform
protected boolean doesTriggerExistOnPlatform(StringBuilder sqlBuffer, String catalog, String schema, String tableName, String triggerName) - Specified by:
doesTriggerExistOnPlatform
in classAbstractSymmetricDialect
-
getDropTriggerSql
protected String getDropTriggerSql(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName, String tableName) - Overrides:
getDropTriggerSql
in classAbstractSymmetricDialect
-
createTrigger
public void createTrigger(StringBuilder sqlBuffer, DataEventType dml, Trigger trigger, TriggerHistory history, Channel channel, String tablePrefix, Table table, ISqlTransaction transaction) - Specified by:
createTrigger
in interfaceISymmetricDialect
- Overrides:
createTrigger
in classAbstractSymmetricDialect
-
doesDdlTriggerExist
- Specified by:
doesDdlTriggerExist
in interfaceISymmetricDialect
- Overrides:
doesDdlTriggerExist
in classAbstractSymmetricDialect
-
removeDdlTrigger
public void removeDdlTrigger(StringBuilder sqlBuffer, String catalogName, String schemaName, String triggerName) - Specified by:
removeDdlTrigger
in interfaceISymmetricDialect
- Overrides:
removeDdlTrigger
in classAbstractSymmetricDialect
-
createRequiredDatabaseObjectsImpl
- Overrides:
createRequiredDatabaseObjectsImpl
in classAbstractSymmetricDialect
-
createOrAlterTablesIfNecessary
- Specified by:
createOrAlterTablesIfNecessary
in interfaceISymmetricDialect
- Overrides:
createOrAlterTablesIfNecessary
in classAbstractSymmetricDialect
-
dropRequiredDatabaseObjects
public void dropRequiredDatabaseObjects()- Specified by:
dropRequiredDatabaseObjects
in interfaceISymmetricDialect
- Specified by:
dropRequiredDatabaseObjects
in classAbstractSymmetricDialect
-
getBinaryEncoding
- Specified by:
getBinaryEncoding
in interfaceISymmetricDialect
- Specified by:
getBinaryEncoding
in classAbstractSymmetricDialect
-
getTransactionTriggerExpression
public String getTransactionTriggerExpression(String defaultCatalog, String defaultSchema, Trigger trigger) - Specified by:
getTransactionTriggerExpression
in interfaceISymmetricDialect
- Overrides:
getTransactionTriggerExpression
in classAbstractSymmetricDialect
-
getTransactionId
- Specified by:
getTransactionId
in interfaceISymmetricDialect
- Overrides:
getTransactionId
in classAbstractSymmetricDialect
-
supportsTransactionId
public boolean supportsTransactionId()- Specified by:
supportsTransactionId
in interfaceISymmetricDialect
- Overrides:
supportsTransactionId
in classAbstractSymmetricDialect
-
getSequenceName
- Specified by:
getSequenceName
in interfaceISymmetricDialect
- Overrides:
getSequenceName
in classAbstractSymmetricDialect
-
getCurrentSequenceValue
- Specified by:
getCurrentSequenceValue
in interfaceISymmetricDialect
- Overrides:
getCurrentSequenceValue
in classAbstractSymmetricDialect
-
cleanDatabase
public void cleanDatabase()- Specified by:
cleanDatabase
in interfaceISymmetricDialect
-
getSymmetricPackageName
-
disableSyncTriggers
- Specified by:
disableSyncTriggers
in interfaceISymmetricDialect
-
enableSyncTriggers
- Specified by:
enableSyncTriggers
in interfaceISymmetricDialect
-
getSyncTriggersExpression
- Specified by:
getSyncTriggersExpression
in interfaceISymmetricDialect
-
getSyncTriggersOnIncomingExpression
- Specified by:
getSyncTriggersOnIncomingExpression
in interfaceISymmetricDialect
- Overrides:
getSyncTriggersOnIncomingExpression
in classAbstractSymmetricDialect
-
areDatabaseTransactionsPendingSince
public final boolean areDatabaseTransactionsPendingSince(long time) - Specified by:
areDatabaseTransactionsPendingSince
in interfaceISymmetricDialect
- Overrides:
areDatabaseTransactionsPendingSince
in classAbstractSymmetricDialect
-
getEarliestTransactionStartTime
- Specified by:
getEarliestTransactionStartTime
in interfaceISymmetricDialect
- Overrides:
getEarliestTransactionStartTime
in classAbstractSymmetricDialect
-
massageDataExtractionSql
- Specified by:
massageDataExtractionSql
in interfaceISymmetricDialect
- Overrides:
massageDataExtractionSql
in classAbstractSymmetricDialect
-
massageForLob
- Specified by:
massageForLob
in interfaceISymmetricDialect
- Overrides:
massageForLob
in classAbstractSymmetricDialect
-
isInitialLoadTwoPassLob
- Specified by:
isInitialLoadTwoPassLob
in interfaceISymmetricDialect
- Overrides:
isInitialLoadTwoPassLob
in classAbstractSymmetricDialect
-
getInitialLoadTwoPassLobLengthSql
- Overrides:
getInitialLoadTwoPassLobLengthSql
in classAbstractSymmetricDialect
-
getDbSpecificDataHasChangedCondition
- Overrides:
getDbSpecificDataHasChangedCondition
in classAbstractSymmetricDialect
-
getTemplateNumberPrecisionSpec
- Specified by:
getTemplateNumberPrecisionSpec
in interfaceISymmetricDialect
- Overrides:
getTemplateNumberPrecisionSpec
in classAbstractSymmetricDialect
-
getSymTablePermissions
- Specified by:
getSymTablePermissions
in interfaceISymmetricDialect
- Overrides:
getSymTablePermissions
in classAbstractSymmetricDialect
-
getDatabaseTimeSQL
- Specified by:
getDatabaseTimeSQL
in interfaceISymmetricDialect
- Overrides:
getDatabaseTimeSQL
in classAbstractSymmetricDialect
-