Search in sources :

Example 1 with Table

use of orgomg.cwm.resource.relational.Table in project tdq-studio-se by Talend.

the class AddTdRelationalSwitch method caseForeignKey.

@Override
public Boolean caseForeignKey(ForeignKey object) {
    ColumnSet columnSet = null;
    TdColumn tdColumn = null;
    if (leftElement instanceof TdColumn) {
        tdColumn = (TdColumn) leftElement;
        columnSet = ColumnHelper.getColumnOwnerAsColumnSet(tdColumn);
    }
    if (columnSet == null) {
        return Boolean.FALSE;
    }
    String fkName = object.getName();
    ForeignKey foreignKey = orgomg.cwm.resource.relational.RelationalFactory.eINSTANCE.createForeignKey();
    foreignKey.setName(fkName);
    if (columnSet instanceof Table) {
        foreignKey = TableHelper.addForeignKey((TdTable) columnSet, foreignKey);
        if (tdColumn != null) {
            tdColumn.getKeyRelationship().add(foreignKey);
        }
    }
    return Boolean.TRUE;
}
Also used : TdColumn(org.talend.cwm.relational.TdColumn) Table(orgomg.cwm.resource.relational.Table) TdTable(org.talend.cwm.relational.TdTable) TdTable(org.talend.cwm.relational.TdTable) ColumnSet(orgomg.cwm.resource.relational.ColumnSet) ForeignKey(orgomg.cwm.resource.relational.ForeignKey)

Example 2 with Table

use of orgomg.cwm.resource.relational.Table in project tdq-studio-se by Talend.

the class AddTdRelationalSwitch method casePrimaryKey.

@Override
public Boolean casePrimaryKey(PrimaryKey object) {
    ColumnSet columnSet = null;
    TdColumn tdColumn = null;
    if (leftElement instanceof TdColumn) {
        tdColumn = (TdColumn) leftElement;
        columnSet = ColumnHelper.getColumnOwnerAsColumnSet(tdColumn);
    }
    if (columnSet == null) {
        return Boolean.FALSE;
    }
    String pkName = object.getName();
    PrimaryKey primaryKey = orgomg.cwm.resource.relational.RelationalFactory.eINSTANCE.createPrimaryKey();
    primaryKey.setName(pkName);
    if (columnSet instanceof Table) {
        primaryKey = TableHelper.addPrimaryKey((TdTable) columnSet, primaryKey);
        if (tdColumn != null) {
            tdColumn.getUniqueKey().add(primaryKey);
        }
    }
    return Boolean.TRUE;
}
Also used : TdColumn(org.talend.cwm.relational.TdColumn) Table(orgomg.cwm.resource.relational.Table) TdTable(org.talend.cwm.relational.TdTable) TdTable(org.talend.cwm.relational.TdTable) PrimaryKey(orgomg.cwm.resource.relational.PrimaryKey) ColumnSet(orgomg.cwm.resource.relational.ColumnSet)

Example 3 with Table

use of orgomg.cwm.resource.relational.Table in project tdq-studio-se by Talend.

the class AnalysisHandler method getColumnSetOwnerNames.

private String[] getColumnSetOwnerNames() {
    List<String> existingTables = new ArrayList<String>();
    for (ModelElement element : getAnalyzedColumns()) {
        if (element instanceof TdColumn && element.eContainer() instanceof Table) {
            String tableName = ColumnHelper.getTableFullName((TdColumn) element);
            if (!existingTables.contains(tableName)) {
                existingTables.add(tableName);
            }
        } else if (element instanceof Table) {
            String tableName = ((Table) element).getName();
            if (!existingTables.contains(tableName)) {
                existingTables.add(tableName);
            }
        } else if (element instanceof MetadataColumn) {
            // the result page
            if (!(element instanceof TdColumn)) {
                // MOD qiongli 2011-1-28,for delimited file
                try {
                    MetadataTable table = ColumnHelper.getColumnOwnerAsMetadataTable((MetadataColumn) element);
                    String tableName = table.getLabel();
                    if (!existingTables.contains(tableName)) {
                        existingTables.add(tableName);
                    }
                } catch (java.lang.NullPointerException e) {
                    // $NON-NLS-1$
                    log.error(Messages.getString("AnalysisHandler.CanNotFindColumnParent", element.getName()), e);
                }
            }
        }
    }
    return existingTables.toArray(new String[existingTables.size()]);
}
Also used : ModelElement(orgomg.cwm.objectmodel.core.ModelElement) MetadataColumn(org.talend.core.model.metadata.builder.connection.MetadataColumn) TdColumn(org.talend.cwm.relational.TdColumn) Table(orgomg.cwm.resource.relational.Table) MetadataTable(org.talend.core.model.metadata.builder.connection.MetadataTable) ArrayList(java.util.ArrayList) MetadataTable(org.talend.core.model.metadata.builder.connection.MetadataTable)

Aggregations

TdColumn (org.talend.cwm.relational.TdColumn)3 Table (orgomg.cwm.resource.relational.Table)3 TdTable (org.talend.cwm.relational.TdTable)2 ColumnSet (orgomg.cwm.resource.relational.ColumnSet)2 ArrayList (java.util.ArrayList)1 MetadataColumn (org.talend.core.model.metadata.builder.connection.MetadataColumn)1 MetadataTable (org.talend.core.model.metadata.builder.connection.MetadataTable)1 ModelElement (orgomg.cwm.objectmodel.core.ModelElement)1 ForeignKey (orgomg.cwm.resource.relational.ForeignKey)1 PrimaryKey (orgomg.cwm.resource.relational.PrimaryKey)1