Search in sources :

Example 6 with WrappedDatabaseInfo

use of com.cubrid.common.ui.cubrid.database.erwin.WrappedDatabaseInfo in project cubrid-manager by CUBRID.

the class ERSchemaEditor method compareDDL2DB.

public void compareDDL2DB() {
    DatabaseInfo info = database.getDatabaseInfo();
    if (info == null) {
        CommonUITool.openErrorBox(Messages.errNoDatabase);
        return;
    }
    if (!info.isLogined()) {
        CommonUITool.openErrorBox(Messages.msgDBNotLogin);
        return;
    }
    ServerInfo serverInfo = info.getServerInfo();
    if (serverInfo != null && !serverInfo.isConnected()) {
        CommonUITool.openErrorBox(Messages.msgDBNotLogin);
        return;
    }
    Map<String, SchemaInfo> schemaInfos = erSchema.getAllSchemaInfo();
    Map<String, TableSchema> tableSchemas = new HashMap<String, TableSchema>();
    WrappedDatabaseInfo wrappedDatabaseInfo = new WrappedDatabaseInfo(info.getDbName(), info.getServerInfo());
    ERXmlDatabaseInfoMapper.addWrappedDatabaseInfo(info, wrappedDatabaseInfo);
    wrappedDatabaseInfo.addSchemaInfos(schemaInfos);
    SchemaDDL ddl = new SchemaDDL(null, wrappedDatabaseInfo);
    for (String tableName : schemaInfos.keySet()) {
        SchemaInfo schemaInfo = schemaInfos.get(tableName);
        if (schemaInfo == null || !tableName.equals(schemaInfo.getClassname())) {
            continue;
        }
        // now do not support view table
        String strDDL = ddl.getSchemaDDL(schemaInfo, true, true);
        TableSchema tableSchema = new TableSchema(tableName, "");
        tableSchema.setSchemaInfo(strDDL);
        tableSchemas.put(tableSchema.getName(), tableSchema);
    }
    wrappedDatabaseInfo.addTableSchemas(tableSchemas);
    compareTableSchemas(getEditorInput().getName(), tableSchemas, schemaInfos);
}
Also used : TableSchema(com.cubrid.common.ui.compare.schema.model.TableSchema) ERVirtualDatabaseInfo(com.cubrid.common.ui.er.model.ERVirtualDatabaseInfo) DatabaseInfo(com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo) WrappedDatabaseInfo(com.cubrid.common.ui.cubrid.database.erwin.WrappedDatabaseInfo) HashMap(java.util.HashMap) ServerInfo(com.cubrid.cubridmanager.core.common.model.ServerInfo) SchemaDDL(com.cubrid.cubridmanager.core.cubrid.table.model.SchemaDDL) WrappedDatabaseInfo(com.cubrid.common.ui.cubrid.database.erwin.WrappedDatabaseInfo) SchemaInfo(com.cubrid.common.core.common.model.SchemaInfo)

Aggregations

WrappedDatabaseInfo (com.cubrid.common.ui.cubrid.database.erwin.WrappedDatabaseInfo)6 DatabaseInfo (com.cubrid.cubridmanager.core.cubrid.database.model.DatabaseInfo)5 TableDetailInfo (com.cubrid.common.core.common.model.TableDetailInfo)4 SchemaDDL (com.cubrid.cubridmanager.core.cubrid.table.model.SchemaDDL)4 SchemaInfo (com.cubrid.common.core.common.model.SchemaInfo)3 TableSchemaCompareModel (com.cubrid.common.ui.compare.schema.model.TableSchemaCompareModel)3 ArrayList (java.util.ArrayList)3 HashMap (java.util.HashMap)3 AbstractUITask (com.cubrid.common.core.task.AbstractUITask)2 ITask (com.cubrid.common.core.task.ITask)2 TableSchemaComparator (com.cubrid.common.ui.compare.schema.TableSchemaComparator)2 TableSchemaCompareModelInputLazy (com.cubrid.common.ui.compare.schema.control.TableSchemaCompareModelInputLazy)2 TableSchema (com.cubrid.common.ui.compare.schema.model.TableSchema)2 TableSchemaModel (com.cubrid.common.ui.compare.schema.model.TableSchemaModel)2 ERVirtualDatabaseInfo (com.cubrid.common.ui.er.model.ERVirtualDatabaseInfo)2 CubridDatabase (com.cubrid.common.ui.spi.model.CubridDatabase)2 CommonTaskExec (com.cubrid.common.ui.spi.progress.CommonTaskExec)2 ExecTaskWithProgress (com.cubrid.common.ui.spi.progress.ExecTaskWithProgress)2 TaskExecutor (com.cubrid.common.ui.spi.progress.TaskExecutor)2 IProgressMonitor (org.eclipse.core.runtime.IProgressMonitor)2