|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
org.dbreplicator.replication.DBHandler
Class OracleHandler
java.lang.Objectorg.dbreplicator.replication.DBHandler.AbstractDataBaseHandler
org.dbreplicator.replication.DBHandler.OracleHandler
public class OracleHandler
- extends AbstractDataBaseHandler
Method overrides specific to Oracle.
| Field Summary |
|---|
| Fields inherited from class org.dbreplicator.replication.DBHandler.AbstractDataBaseHandler |
|---|
ignoredColumns_Table, trackPrimaryKeyUpdation_Table, trackReplicationTablesUpdation_Table |
| Constructor Summary | |
|---|---|
OracleHandler()
|
|
OracleHandler(ConnectionPool connectionPool0)
|
|
| Method Summary | |
|---|---|
void |
createScheduleTable(java.lang.String subName)
|
void |
CreateSequenceOnLogTable(java.lang.String pubsubName)
|
void |
CreateSequenceOnRepTable(java.lang.String pubsubName)
|
void |
createShadowTable(java.lang.String pubsubName,
java.lang.String tableName,
java.lang.String allColSequence,
java.lang.String[] primaryColumns)
Creates Shadow Table as per the database. |
void |
createShadowTableTriggers(java.lang.String pubsubName,
java.lang.String tableName,
java.util.ArrayList colInfoList,
java.lang.String[] primCols)
Creates ShadowTable triggers on different replication tables. |
void |
deleteRecordsFromSuperLogTable(java.sql.Statement subStatment)
|
void |
dropPublisherSystemTables(java.sql.Connection con)
|
void |
dropSequences(java.sql.Connection con,
java.lang.String sequenceName)
|
void |
dropSubscriberSystemTables(java.sql.Connection con)
|
int |
getAppropriatePrecision(int columnSize,
java.lang.String datatypeName)
This method is implemented in child classes if precision exceed the maximum precision of the data type |
int |
getAppropriateScale(int columnScale)
|
AbstractColumnObject |
getColumnObject(TypeInfo typeInfo)
According to the sqlType, different column's for different databases are handled saperately. |
java.lang.String |
getTableColumns(int VendorType,
java.lang.String ColumnName,
TypeInfo typeInfo,
int columnPrecision,
java.sql.ResultSet rs)
|
boolean |
isColumnSizeExceedMaximumSize(TypeInfo typeInfo)
|
boolean |
isDataTypeOptionalSizeSupported(TypeInfo typeInfo)
|
boolean |
isForeignKeyException(java.sql.SQLException ex)
To get the foreign key error code to resolve the Synchronization problem when tables have parent - child relationship. |
boolean |
isPrimaryKeyException(java.sql.SQLException ex)
|
boolean |
isSchemaSupported()
isSchemaSupported |
java.sql.PreparedStatement |
makePrimaryPreperedStatement(java.sql.Connection pub_sub_Connection,
java.lang.String[] primaryColumns,
java.lang.String shadowTable,
java.lang.String local_pub_sub_name)
|
java.sql.PreparedStatement |
makePrimaryPreperedStatementBackwardTraversing(java.lang.String[] primaryColumns,
long lastId,
java.lang.String local_pub_sub_name,
java.lang.String shadowTable)
|
void |
makeProvisionForLOBDataTypes(java.util.ArrayList dataTypeList)
|
java.lang.String |
saveRepTableData(java.sql.Connection connection,
java.lang.String pubsubName,
RepTable repTable)
Save the RepTable data which is a system table. |
void |
setColumnPrecisionInTypeInfo(TypeInfo typeInfo,
java.sql.ResultSetMetaData rsmt,
int columnIndex)
|
void |
setTypeInfo(TypeInfo typeInfo,
java.sql.ResultSet rs)
This is a very important function which sets the parameter (instance of Class TypeInfo) with the corresponding typeName of the sqlType for different databases. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
OracleHandler
public OracleHandler()
OracleHandler
public OracleHandler(ConnectionPool connectionPool0)
| Method Detail |
|---|
CreateSequenceOnLogTable
public void CreateSequenceOnLogTable(java.lang.String pubsubName) throws java.sql.SQLException, RepException
- Overrides:
CreateSequenceOnLogTablein classAbstractDataBaseHandler
- Throws:
java.sql.SQLExceptionRepException
CreateSequenceOnRepTable
public void CreateSequenceOnRepTable(java.lang.String pubsubName) throws java.sql.SQLException, RepException
- Overrides:
CreateSequenceOnRepTablein classAbstractDataBaseHandler
- Throws:
java.sql.SQLExceptionRepException
createScheduleTable
public void createScheduleTable(java.lang.String subName) throws java.sql.SQLException, RepException
- Throws:
java.sql.SQLExceptionRepException
createShadowTable
public void createShadowTable(java.lang.String pubsubName, java.lang.String tableName, java.lang.String allColSequence, java.lang.String[] primaryColumns) throws RepException
- Description copied from class:
AbstractDataBaseHandler - Creates Shadow Table as per the database.
- Specified by:
createShadowTablein classAbstractDataBaseHandler
- Throws:
RepException
createShadowTableTriggers
public void createShadowTableTriggers(java.lang.String pubsubName, java.lang.String tableName, java.util.ArrayList colInfoList, java.lang.String[] primCols) throws RepException
- Description copied from class:
AbstractDataBaseHandler - Creates ShadowTable triggers on different replication tables.
- Specified by:
createShadowTableTriggersin classAbstractDataBaseHandler
- Throws:
RepException
isDataTypeOptionalSizeSupported
public boolean isDataTypeOptionalSizeSupported(TypeInfo typeInfo)
- Specified by:
isDataTypeOptionalSizeSupportedin classAbstractDataBaseHandler
setTypeInfo
public void setTypeInfo(TypeInfo typeInfo, java.sql.ResultSet rs) throws RepException, java.sql.SQLException
- Description copied from class:
AbstractDataBaseHandler - This is a very important function which sets the parameter (instance of
Class TypeInfo) with the corresponding typeName of the sqlType for different
databases. So that we can make corresponding queries.
- Specified by:
setTypeInfoin classAbstractDataBaseHandler
- Throws:
RepExceptionjava.sql.SQLException
getColumnObject
public AbstractColumnObject getColumnObject(TypeInfo typeInfo) throws RepException
- Description copied from class:
AbstractDataBaseHandler - According to the sqlType, different column's for different databases are handled
saperately. It returns the object of AbstractColumnObject which is extended
by each type of column Object classes. This fundamental is used basically for
handeling Blob and Clob type of columns.
- Specified by:
getColumnObjectin classAbstractDataBaseHandler
- Throws:
RepException
saveRepTableData
public java.lang.String saveRepTableData(java.sql.Connection connection, java.lang.String pubsubName, RepTable repTable) throws java.sql.SQLException, RepException
- Description copied from class:
AbstractDataBaseHandler - Save the RepTable data which is a system table.
It store the Publication/Subscription Name,
its corresponding table with filter clause and conflict
resolver.
- Overrides:
saveRepTableDatain classAbstractDataBaseHandler
- Throws:
java.sql.SQLExceptionRepException
dropSequences
public void dropSequences(java.sql.Connection con, java.lang.String sequenceName) throws java.sql.SQLException
- Overrides:
dropSequencesin classAbstractDataBaseHandler
- Throws:
java.sql.SQLException
makeProvisionForLOBDataTypes
public void makeProvisionForLOBDataTypes(java.util.ArrayList dataTypeList)
- Overrides:
makeProvisionForLOBDataTypesin classAbstractDataBaseHandler
isColumnSizeExceedMaximumSize
public boolean isColumnSizeExceedMaximumSize(TypeInfo typeInfo) throws java.sql.SQLException, RepException
- Throws:
java.sql.SQLExceptionRepException
isPrimaryKeyException
public boolean isPrimaryKeyException(java.sql.SQLException ex) throws java.sql.SQLException
- Specified by:
isPrimaryKeyExceptionin classAbstractDataBaseHandler
- Throws:
java.sql.SQLException
setColumnPrecisionInTypeInfo
public void setColumnPrecisionInTypeInfo(TypeInfo typeInfo, java.sql.ResultSetMetaData rsmt, int columnIndex) throws java.sql.SQLException
- Overrides:
setColumnPrecisionInTypeInfoin classAbstractDataBaseHandler
- Throws:
java.sql.SQLException
getAppropriatePrecision
public int getAppropriatePrecision(int columnSize, java.lang.String datatypeName)
- Description copied from class:
AbstractDataBaseHandler - This method is implemented in child classes if precision exceed the
maximum precision of the data type
- Overrides:
getAppropriatePrecisionin classAbstractDataBaseHandler
- Parameters:
columnSize- int- Returns:
- int
getTableColumns
public java.lang.String getTableColumns(int VendorType, java.lang.String ColumnName, TypeInfo typeInfo, int columnPrecision, java.sql.ResultSet rs) throws RepException, java.sql.SQLException
- Overrides:
getTableColumnsin classAbstractDataBaseHandler
- Throws:
RepExceptionjava.sql.SQLException
getAppropriateScale
public int getAppropriateScale(int columnScale) throws RepException
- Specified by:
getAppropriateScalein classAbstractDataBaseHandler
- Throws:
RepException
dropPublisherSystemTables
public void dropPublisherSystemTables(java.sql.Connection con)
- Overrides:
dropPublisherSystemTablesin classAbstractDataBaseHandler
dropSubscriberSystemTables
public void dropSubscriberSystemTables(java.sql.Connection con)
- Overrides:
dropSubscriberSystemTablesin classAbstractDataBaseHandler
deleteRecordsFromSuperLogTable
public void deleteRecordsFromSuperLogTable(java.sql.Statement subStatment) throws java.sql.SQLException
- Overrides:
deleteRecordsFromSuperLogTablein classAbstractDataBaseHandler
- Throws:
java.sql.SQLException
makePrimaryPreperedStatement
public java.sql.PreparedStatement makePrimaryPreperedStatement(java.sql.Connection pub_sub_Connection, java.lang.String[] primaryColumns, java.lang.String shadowTable, java.lang.String local_pub_sub_name) throws java.sql.SQLException, RepException
- Specified by:
makePrimaryPreperedStatementin classAbstractDataBaseHandler
- Throws:
java.sql.SQLExceptionRepException
isForeignKeyException
public boolean isForeignKeyException(java.sql.SQLException ex) throws java.sql.SQLException
- Description copied from class:
AbstractDataBaseHandler - To get the foreign key error code to resolve
the Synchronization problem when tables have
parent - child relationship.
- Specified by:
isForeignKeyExceptionin classAbstractDataBaseHandler
- Returns:
- String
- Throws:
java.sql.SQLException
makePrimaryPreperedStatementBackwardTraversing
public java.sql.PreparedStatement makePrimaryPreperedStatementBackwardTraversing(java.lang.String[] primaryColumns, long lastId, java.lang.String local_pub_sub_name, java.lang.String shadowTable) throws java.sql.SQLException, RepException
- Specified by:
makePrimaryPreperedStatementBackwardTraversingin classAbstractDataBaseHandler
- Throws:
java.sql.SQLExceptionRepException
isSchemaSupported
public boolean isSchemaSupported()
- isSchemaSupported
- Specified by:
isSchemaSupportedin classAbstractDataBaseHandler
- Returns:
- boolean
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||


