Package org.jumpmind.db.platform
Class AbstractJdbcDdlReader
java.lang.Object
org.jumpmind.db.platform.AbstractJdbcDdlReader
- All Implemented Interfaces:
IDdlReader
- Direct Known Subclasses:
AseDdlReader
,Db2DdlReader
,DerbyDdlReader
,FirebirdDdlReader
,GenericJdbcSqlDdlReader
,H2DdlReader
,HanaDdlReader
,HsqlDb2DdlReader
,HsqlDbDdlReader
,InformixDdlReader
,IngresDdlReader
,InterbaseDdlReader
,MsSqlDdlReader
,MySqlDdlReader
,NuoDbDdlReader
,OracleDdlReader
,PostgreSqlDdlReader
,RaimaDdlReader
,RedshiftDdlReader
,SqlAnywhereDdlReader
,VoltDbDdlReader
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
adjustColumnSize
(Column column, int amount) protected void
adjustColumnSize
(Column column, int amount, int maxSize) protected StringBuilder
appendColumn
(StringBuilder query, String identifier) protected StringBuilder
appendIdentifier
(StringBuilder query, String identifier) protected void
protected void
protected void
determineAutoIncrementFromResultSetMetaData
(Connection conn, Table table, Column[] columnsToCheck) protected void
determineAutoIncrementFromResultSetMetaData
(Connection conn, Table table, Column[] columnsToCheck, String catalogSeparator) protected void
getApplicationTriggersForModel
(String catalog, String schema, String tableName, String triggerPrefix) getColumnNames
(String catalog, String schema, String tableName) protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected IConnectionHandler
getConnectionHandler
(String catalog) getDatabase
(Connection connection) String[]
getExportedForeignTableRows
(ISqlTransaction transaction, List<TableRow> tableRows, Set<TableRow> visited, BinaryEncoding encoding) getExportedKeys
(Table table) getForeignKeys
(String catalog, String schema, String tableName) getImportedForeignTableRows
(List<TableRow> tableRows, Set<TableRow> visited, BinaryEncoding encoding) getImportedForeignTableRows
(List<TableRow> tableRows, Set<TableRow> visited, BinaryEncoding encoding, int depth, int maxDepth) protected String
getPlatformTrigger
(IDatabasePlatform platform, Trigger trigger) protected String
protected String
getSchemaNames
(String catalog) protected ResultSet
getSchemasHandleException
(Connection connection, DatabaseMetaData meta, String catalog, String schemaPattern) protected String
getTableNamePattern
(String tableName) protected String
getTableNamePatternForConstraints
(String tableName) getTableNames
(String catalog, String schema, String[] tableTypes) getTriggerFor
(Table table, String triggerName) getTriggers
(String catalog, String schema, String tableName) protected String[]
protected String
protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected List<MetaDataColumnDescriptor>
protected boolean
isInternalForeignKeyIndex
(Connection connection, DatabaseMetaDataWrapper metaData, Table table, ForeignKey fk, IIndex index) protected boolean
isInternalPrimaryKeyIndex
(Connection connection, DatabaseMetaDataWrapper metaData, Table table, IIndex index) protected Integer
mapUnknownJdbcTypeForColumn
(Map<String, Object> values) protected boolean
protected Database
protected Table
processSchemaResultSet
(ResultSet rs, String catalog) protected Column
readColumn
(DatabaseMetaDataWrapper metaData, Map<String, Object> values) protected Collection<Column>
readColumns
(DatabaseMetaDataWrapper metaData, String tableName) protected void
readExportedKey
(DatabaseMetaDataWrapper metaData, Map<String, Object> values, Map<String, ForeignKey> knownFks) protected Collection<ForeignKey>
readExportedKeys
(Connection connection, DatabaseMetaDataWrapper metaData, String tableName) protected void
readForeignKey
(DatabaseMetaDataWrapper metaData, Map<String, Object> values, Map<String, ForeignKey> knownFks) protected void
readForeignKeyDeleteRule
(Map<String, Object> values, ForeignKey fk) protected Collection<ForeignKey>
readForeignKeys
(Connection connection, DatabaseMetaDataWrapper metaData, String tableName) protected void
readForeignKeyUpdateRule
(Map<String, Object> values, ForeignKey fk) protected void
readIndex
(DatabaseMetaDataWrapper metaData, Map<String, Object> values, Map<String, IIndex> knownIndices) protected Collection<IIndex>
readIndices
(Connection connection, DatabaseMetaDataWrapper metaData, String tableName) readMetaData
(ResultSet resultSet, List<MetaDataColumnDescriptor> columnDescriptors) protected String
readPrimaryKeyName
(DatabaseMetaDataWrapper metaData, Map<String, Object> values) protected Collection<String>
readPrimaryKeyNames
(DatabaseMetaDataWrapper metaData, String tableName) protected Integer
readPrimaryKeySequence
(Map<String, Object> values) protected Table
readTable
(Connection connection, DatabaseMetaDataWrapper metaData, Map<String, Object> values) readTable
(ISqlTransaction transaction, String catalog, String schema, String table) protected Table
readTableFromConnection
(Connection connection, String catalog, String schema, String table) readTables
(String catalog, String schema, String[] tableTypes) protected Collection<Table>
readTables
(Connection connection, String catalog, String schemaPattern, String[] tableTypes) protected void
removeColumnSize
(Column column) protected void
removeGeneratedColumns
(Connection connection, DatabaseMetaDataWrapper metaData, Table table) protected void
removeInternalForeignKeyIndex
(Connection connection, DatabaseMetaDataWrapper metaData, Table table, ForeignKey fk) protected void
removeInternalPrimaryKeyIndex
(Connection connection, DatabaseMetaDataWrapper metaData, Table table) protected void
removePlatformColumnSize
(Column column) protected void
removeSystemIndices
(Connection connection, DatabaseMetaDataWrapper metaData, Table table) protected void
resetColumnSize
(Column column, String size) void
setDefaultCatalogPattern
(String catalogPattern) void
setDefaultColumnPattern
(String columnPattern) void
setDefaultSchemaPattern
(String schemaPattern) void
setDefaultTablePattern
(String tablePattern) void
setDefaultTableTypes
(String[] types) protected String
-
Field Details
-
log
protected org.slf4j.Logger log -
platform
-
-
Constructor Details
-
AbstractJdbcDdlReader
-
-
Method Details
-
getTriggers
- Specified by:
getTriggers
in interfaceIDdlReader
-
getApplicationTriggersForModel
public List<Trigger> getApplicationTriggersForModel(String catalog, String schema, String tableName, String triggerPrefix) - Specified by:
getApplicationTriggersForModel
in interfaceIDdlReader
-
getPlatformTrigger
- Specified by:
getPlatformTrigger
in interfaceIDdlReader
-
getPlatform
-
getPlatformInfo
-
initColumnsForTable
-
initColumnsForColumn
-
initColumnsForPK
-
initColumnsForFK
-
initColumnsForIndex
-
getName
-
getDefaultCatalogPattern
-
setDefaultCatalogPattern
-
getDefaultSchemaPattern
-
setDefaultSchemaPattern
-
getDefaultTablePattern
-
setDefaultTablePattern
-
getDefaultColumnPattern
-
setDefaultColumnPattern
-
getDefaultTableTypes
-
setDefaultTableTypes
-
getColumnsForTable
-
getColumnsForColumn
-
getColumnsForPK
-
getColumnsForFK
-
getColumnsForIndex
-
getDatabase
- Throws:
SQLException
-
getResultSetSchemaName
-
getResultSetCatalogName
-
readTables
- Specified by:
readTables
in interfaceIDdlReader
-
postprocessModelFromDatabase
-
readTables
protected Collection<Table> readTables(Connection connection, String catalog, String schemaPattern, String[] tableTypes) throws SQLException - Throws:
SQLException
-
readTable
- Specified by:
readTable
in interfaceIDdlReader
-
readTable
- Specified by:
readTable
in interfaceIDdlReader
-
readTableFromConnection
protected Table readTableFromConnection(Connection connection, String catalog, String schema, String table) throws SQLException - Throws:
SQLException
-
postprocessTableFromDatabase
-
close
-
close
-
getTableNamePattern
-
getTableNamePatternForConstraints
-
readTable
protected Table readTable(Connection connection, DatabaseMetaDataWrapper metaData, Map<String, Object> values) throws SQLException- Throws:
SQLException
-
getUnsupportedTableTypes
-
removeSystemIndices
protected void removeSystemIndices(Connection connection, DatabaseMetaDataWrapper metaData, Table table) throws SQLException - Throws:
SQLException
-
removeGeneratedColumns
protected void removeGeneratedColumns(Connection connection, DatabaseMetaDataWrapper metaData, Table table) throws SQLException - Throws:
SQLException
-
removeInternalPrimaryKeyIndex
protected void removeInternalPrimaryKeyIndex(Connection connection, DatabaseMetaDataWrapper metaData, Table table) throws SQLException - Throws:
SQLException
-
removeInternalForeignKeyIndex
protected void removeInternalForeignKeyIndex(Connection connection, DatabaseMetaDataWrapper metaData, Table table, ForeignKey fk) throws SQLException - Throws:
SQLException
-
matches
-
isInternalPrimaryKeyIndex
protected boolean isInternalPrimaryKeyIndex(Connection connection, DatabaseMetaDataWrapper metaData, Table table, IIndex index) throws SQLException - Throws:
SQLException
-
isInternalForeignKeyIndex
protected boolean isInternalForeignKeyIndex(Connection connection, DatabaseMetaDataWrapper metaData, Table table, ForeignKey fk, IIndex index) throws SQLException - Throws:
SQLException
-
readColumns
protected Collection<Column> readColumns(DatabaseMetaDataWrapper metaData, String tableName) throws SQLException - Throws:
SQLException
-
genericizeDefaultValuesAndUpdatePlatformColumn
-
mapUnknownJdbcTypeForColumn
-
readColumn
protected Column readColumn(DatabaseMetaDataWrapper metaData, Map<String, Object> values) throws SQLException- Throws:
SQLException
-
readPrimaryKeyNames
protected Collection<String> readPrimaryKeyNames(DatabaseMetaDataWrapper metaData, String tableName) throws SQLException - Throws:
SQLException
-
readPrimaryKeyName
protected String readPrimaryKeyName(DatabaseMetaDataWrapper metaData, Map<String, Object> values) throws SQLException- Throws:
SQLException
-
readPrimaryKeySequence
- Throws:
SQLException
-
readForeignKeys
protected Collection<ForeignKey> readForeignKeys(Connection connection, DatabaseMetaDataWrapper metaData, String tableName) throws SQLException - Throws:
SQLException
-
readForeignKey
protected void readForeignKey(DatabaseMetaDataWrapper metaData, Map<String, Object> values, Map<String, throws SQLExceptionForeignKey> knownFks) - Throws:
SQLException
-
readForeignKeyUpdateRule
-
readForeignKeyDeleteRule
-
readExportedKeys
protected Collection<ForeignKey> readExportedKeys(Connection connection, DatabaseMetaDataWrapper metaData, String tableName) throws SQLException - Throws:
SQLException
-
readExportedKey
protected void readExportedKey(DatabaseMetaDataWrapper metaData, Map<String, Object> values, Map<String, throws SQLExceptionForeignKey> knownFks) - Throws:
SQLException
-
readIndices
protected Collection<IIndex> readIndices(Connection connection, DatabaseMetaDataWrapper metaData, String tableName) throws SQLException - Throws:
SQLException
-
readIndex
protected void readIndex(DatabaseMetaDataWrapper metaData, Map<String, Object> values, Map<String, throws SQLExceptionIIndex> knownIndices) - Throws:
SQLException
-
readMetaData
protected Map<String,Object> readMetaData(ResultSet resultSet, List<MetaDataColumnDescriptor> columnDescriptors) throws SQLException - Throws:
SQLException
-
determineAutoIncrementFromResultSetMetaData
protected void determineAutoIncrementFromResultSetMetaData(Connection conn, Table table, Column[] columnsToCheck) throws SQLException - Throws:
SQLException
-
determineAutoIncrementFromResultSetMetaData
protected void determineAutoIncrementFromResultSetMetaData(Connection conn, Table table, Column[] columnsToCheck, String catalogSeparator) throws SQLException - Throws:
SQLException
-
getWithNoLockHint
-
appendIdentifier
-
appendColumn
-
unescape
-
getTableTypes
- Specified by:
getTableTypes
in interfaceIDdlReader
-
getCatalogNames
- Specified by:
getCatalogNames
in interfaceIDdlReader
-
getSchemaNames
- Specified by:
getSchemaNames
in interfaceIDdlReader
-
processSchemaResultSet
protected ArrayList<String> processSchemaResultSet(ResultSet rs, String catalog) throws SQLException - Throws:
SQLException
-
getSchemasHandleException
protected ResultSet getSchemasHandleException(Connection connection, DatabaseMetaData meta, String catalog, String schemaPattern) throws SQLException - Throws:
SQLException
-
getConnectionHandler
-
getTableNames
- Specified by:
getTableNames
in interfaceIDdlReader
-
getColumnNames
- Specified by:
getColumnNames
in interfaceIDdlReader
-
getListOfTriggers
-
getTriggerFor
- Specified by:
getTriggerFor
in interfaceIDdlReader
-
getExportedKeys
- Specified by:
getExportedKeys
in interfaceIDdlReader
-
getForeignKeys
- Specified by:
getForeignKeys
in interfaceIDdlReader
-
getExportedForeignTableRows
public List<TableRow> getExportedForeignTableRows(ISqlTransaction transaction, List<TableRow> tableRows, Set<TableRow> visited, BinaryEncoding encoding) - Specified by:
getExportedForeignTableRows
in interfaceIDdlReader
-
getImportedForeignTableRows
public List<TableRow> getImportedForeignTableRows(List<TableRow> tableRows, Set<TableRow> visited, BinaryEncoding encoding) - Specified by:
getImportedForeignTableRows
in interfaceIDdlReader
-
getImportedForeignTableRows
-
resetColumnSize
-
adjustColumnSize
-
adjustColumnSize
-
removeColumnSize
-
removePlatformColumnSize
-