|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
org.dbreplicator.replication.DBHandler
Class DaffodilDBHandler
java.lang.Objectorg.dbreplicator.replication.DBHandler.AbstractDataBaseHandler
org.dbreplicator.replication.DBHandler.DaffodilDBHandler
public class DaffodilDBHandler
- extends AbstractDataBaseHandler
Method overrides specific to the Daffodil/One$DB database engine.
| Field Summary |
|---|
| Fields inherited from class org.dbreplicator.replication.DBHandler.AbstractDataBaseHandler |
|---|
ignoredColumns_Table, trackPrimaryKeyUpdation_Table, trackReplicationTablesUpdation_Table |
| Constructor Summary | |
|---|---|
DaffodilDBHandler()
|
|
DaffodilDBHandler(ConnectionPool connectionPool0)
|
|
| Method Summary | |
|---|---|
void |
createSchemas(java.lang.String pubName,
java.util.ArrayList schemas)
|
void |
createShadowTable(java.lang.String pubsubName,
java.lang.String tableName,
java.lang.String allColseq,
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. |
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)
|
java.lang.String |
getBookMarkTableName()
|
AbstractColumnObject |
getColumnObject(TypeInfo typeInfo)
According to the sqlType, different column's for different databases are handled saperately. |
java.lang.String |
getIgnoredColumns_Table()
|
java.lang.String |
getLogTableName()
|
java.lang.String |
getPublicationTableName()
|
java.lang.String |
getRepTableName()
|
java.lang.String |
getSubscriptionTableName()
|
java.lang.String |
getTrackPrimayKeyUpdation_Table()
|
java.lang.String |
getTrackReplicationTablesUpdation_Table()
|
boolean |
isColumnSizeExceedMaximumSize(TypeInfo typeInfo)
|
boolean |
isColumnSizeExceedMaximumSize1(java.sql.ResultSet rs,
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 DaffodilDB supoort the schema so it return true |
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 |
setColumnPrecisionInTypeInfo(TypeInfo typeInfo,
java.sql.ResultSetMetaData rsmt,
int columnIndex)
|
void |
setDefaultSchema(java.sql.Connection connection)
It checks from the sqlType values whether the datatype is optional size supported or not. |
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 |
|---|
DaffodilDBHandler
public DaffodilDBHandler()
DaffodilDBHandler
public DaffodilDBHandler(ConnectionPool connectionPool0)
| Method Detail |
|---|
createShadowTable
public void createShadowTable(java.lang.String pubsubName, java.lang.String tableName, java.lang.String allColseq, 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
createSchemas
public void createSchemas(java.lang.String pubName, java.util.ArrayList schemas) throws java.sql.SQLException, RepException
- Overrides:
createSchemasin classAbstractDataBaseHandler
- Throws:
java.sql.SQLExceptionRepException
getPublicationTableName
public java.lang.String getPublicationTableName()
- Overrides:
getPublicationTableNamein classAbstractDataBaseHandler
getSubscriptionTableName
public java.lang.String getSubscriptionTableName()
- Overrides:
getSubscriptionTableNamein classAbstractDataBaseHandler
getRepTableName
public java.lang.String getRepTableName()
- Overrides:
getRepTableNamein classAbstractDataBaseHandler
getLogTableName
public java.lang.String getLogTableName()
- Overrides:
getLogTableNamein classAbstractDataBaseHandler
getBookMarkTableName
public java.lang.String getBookMarkTableName()
- Overrides:
getBookMarkTableNamein classAbstractDataBaseHandler
isColumnSizeExceedMaximumSize
public boolean isColumnSizeExceedMaximumSize(TypeInfo typeInfo) throws java.sql.SQLException, RepException
- Throws:
java.sql.SQLExceptionRepException
isColumnSizeExceedMaximumSize1
public boolean isColumnSizeExceedMaximumSize1(java.sql.ResultSet rs, TypeInfo typeInfo) throws java.sql.SQLException, RepException
- Throws:
java.sql.SQLExceptionRepException
setDefaultSchema
public void setDefaultSchema(java.sql.Connection connection) throws RepException
- Description copied from class:
AbstractDataBaseHandler - It checks from the sqlType values whether the datatype is optional size
supported or not.
- Overrides:
setDefaultSchemain classAbstractDataBaseHandler
- Parameters:
connection- Connection- Throws:
RepException
setColumnPrecisionInTypeInfo
public void setColumnPrecisionInTypeInfo(TypeInfo typeInfo, java.sql.ResultSetMetaData rsmt, int columnIndex) throws java.sql.SQLException
- Overrides:
setColumnPrecisionInTypeInfoin classAbstractDataBaseHandler
- Throws:
java.sql.SQLException
isPrimaryKeyException
public boolean isPrimaryKeyException(java.sql.SQLException ex) throws java.sql.SQLException
- Specified by:
isPrimaryKeyExceptionin 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
getAppropriateScale
public int getAppropriateScale(int columnScale) throws RepException
- Specified by:
getAppropriateScalein classAbstractDataBaseHandler
- Throws:
RepException
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
getIgnoredColumns_Table
public java.lang.String getIgnoredColumns_Table()
- Overrides:
getIgnoredColumns_Tablein classAbstractDataBaseHandler
getTrackReplicationTablesUpdation_Table
public java.lang.String getTrackReplicationTablesUpdation_Table()
- Overrides:
getTrackReplicationTablesUpdation_Tablein classAbstractDataBaseHandler
getTrackPrimayKeyUpdation_Table
public java.lang.String getTrackPrimayKeyUpdation_Table()
- Overrides:
getTrackPrimayKeyUpdation_Tablein classAbstractDataBaseHandler
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
DaffodilDB supoort the schema so it return true
- Specified by:
isSchemaSupportedin classAbstractDataBaseHandler
- Returns:
- boolean
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||


