Search in sources :

Example 96 with RepositoryNode

use of org.talend.repository.model.RepositoryNode in project tdi-studio-se by Talend.

the class DBTreeProvider method getColumnImage.

public Image getColumnImage(Object element, int columnIndex) {
    RepositoryNode node = (RepositoryNode) element;
    SqlBuilderRepositoryObject repositoryObject = (SqlBuilderRepositoryObject) node.getObject();
    if (columnIndex == 1) {
        return null;
    } else if (columnIndex == 2) {
        if ((repositoryObject).getDiffImage() == null) {
            return null;
        }
        return ImageUtil.getImage((repositoryObject).getDiffImage());
    }
    return ImageUtil.getImage((repositoryObject).getImage());
}
Also used : RepositoryNode(org.talend.repository.model.RepositoryNode)

Example 97 with RepositoryNode

use of org.talend.repository.model.RepositoryNode in project tdi-studio-se by Talend.

the class DBTreeProvider method convert.

private void convert(Container fromModel, RepositoryNode parent, ERepositoryObjectType type) {
    if (fromModel.isEmpty()) {
        return;
    }
    for (Object obj : fromModel.getSubContainer()) {
        Container container = (Container) obj;
        Folder folderRepositoryObject = new Folder(container.getId(), container.getLabel());
        FolderRepositoryObject oFolder = new FolderRepositoryObject(folderRepositoryObject);
        oFolder.setImage(IMAGES_CLOSED_FOLDER);
        oFolder.setSourceName(oFolder.getLabel());
        oFolder.setRepositoryName(null);
        RepositoryNode folder = new RepositoryNodeExt(oFolder, parent, ENodeType.SIMPLE_FOLDER);
        folder.setProperties(EProperties.LABEL, container.getLabel());
        // ERepositoryObjectType.FOLDER);
        folder.setProperties(EProperties.CONTENT_TYPE, RepositoryNodeType.FOLDER);
        parent.getChildren().add(folder);
        convert(container, folder, type);
    }
    if (!isCleared) {
        maps.clear();
        isCleared = true;
    }
    for (Object obj : fromModel.getMembers()) {
        RepositoryObject obj2 = (RepositoryObject) obj;
        if (!connectionParameters.getRepositoryId().equals(obj2.getProperty().getId())) {
            continue;
        }
        RepositoryViewObject viewObject = new RepositoryViewObject(obj2.getProperty());
        maps.put((obj2).getId(), viewObject);
        addNode(parent, viewObject, false, null);
    }
}
Also used : Container(org.talend.commons.utils.data.container.Container) RootContainer(org.talend.commons.utils.data.container.RootContainer) RepositoryObject(org.talend.core.model.repository.RepositoryObject) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) RepositoryObject(org.talend.core.model.repository.RepositoryObject) RepositoryViewObject(org.talend.core.model.repository.RepositoryViewObject) Folder(org.talend.core.model.repository.Folder) RepositoryNode(org.talend.repository.model.RepositoryNode) RepositoryNodeExt(org.talend.sqlbuilder.RepositoryNodeExt) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) RepositoryViewObject(org.talend.core.model.repository.RepositoryViewObject)

Example 98 with RepositoryNode

use of org.talend.repository.model.RepositoryNode in project tdi-studio-se by Talend.

the class DBTreeProvider method getBackground.

public Color getBackground(Object element, int columnIndex) {
    RepositoryNode repositoryNode = (RepositoryNode) element;
    SqlBuilderRepositoryObject repositoryObject = (SqlBuilderRepositoryObject) repositoryNode.getObject();
    if (columnIndex == 2) {
        return null;
    } else {
        return colors.get((repositoryObject).getColor());
    }
}
Also used : RepositoryNode(org.talend.repository.model.RepositoryNode)

Example 99 with RepositoryNode

use of org.talend.repository.model.RepositoryNode in project tdi-studio-se by Talend.

the class DBTreeProvider method createMetacolumn.

private RepositoryNode createMetacolumn(RepositoryNode tableNode, IRepositoryViewObject repObj, MetadataColumn metadataColumn, boolean isBuildIn) {
    MetadataColumnRepositoryObject modelObj = new MetadataColumnRepositoryObject(repObj, metadataColumn);
    modelObj.setRepositoryName(metadataColumn.getLabel());
    // statusCode use for source table name
    modelObj.setSourceName(metadataColumn.getOriginalField());
    // purpose use for Image text.
    if (metadataColumn.isSynchronised()) {
        modelObj.setImage(IMAGES_REFRESH_ICON);
    } else {
        modelObj.setImage(IMAGES_COLUMN_NODE_ICON);
    }
    // description use for color.
    if (modelObj.getColumn().isDivergency() && !isBuildIn) {
        modelObj.setColor(COLOR_RED);
    }
    if (modelObj.getRepositoryName() == null || modelObj.getRepositoryName().trim().equals("")) {
        //$NON-NLS-1$
        modelObj.setColor(COLOR_GRAY);
    }
    modelObj.setBuildIn(isBuildIn);
    RepositoryNode columnNode = new RepositoryNodeExt(modelObj, tableNode, ENodeType.REPOSITORY_ELEMENT);
    columnNode.setProperties(EProperties.LABEL, metadataColumn.getLabel());
    columnNode.setProperties(EProperties.CONTENT_TYPE, RepositoryNodeType.COLUMN);
    return columnNode;
}
Also used : RepositoryNode(org.talend.repository.model.RepositoryNode) RepositoryNodeExt(org.talend.sqlbuilder.RepositoryNodeExt)

Example 100 with RepositoryNode

use of org.talend.repository.model.RepositoryNode in project tdi-studio-se by Talend.

the class DBTreeProvider method createMetatable.

/**
     * tguiu Comment method "createMetatable".
     * 
     * @param node
     * @param iMetadataFileDelimited
     * @param table
     * @return
     */
private RepositoryNode createMetatable(RepositoryNode node, IRepositoryViewObject repObj, final org.talend.core.model.metadata.builder.connection.MetadataTable table, boolean isBuildIn) {
    MetadataTableRepositoryObject modelObj = new MetadataTableRepositoryObject(repObj, table);
    if (table instanceof MetadataTableImpl) {
        modelObj.setRepositoryName(((MetadataTableImpl) table).getOriginalLabel());
    } else {
        modelObj.setRepositoryName(table.getLabel());
    }
    // statusCode use for source table name
    modelObj.setSourceName(table.getSourceName());
    // purpose use for Image text.
    modelObj.setImage(IMAGES_TABLE_NODE_ICON);
    // description use for color.
    if (modelObj.getTable().isDivergency() && !isBuildIn && !modelObj.getTable().isSynchronised()) {
        modelObj.setColor(COLOR_RED);
    }
    if (modelObj.getRepositoryName() == null || modelObj.getRepositoryName().trim().equals("")) {
        //$NON-NLS-1$
        modelObj.setColor(COLOR_GRAY);
    }
    modelObj.setBuildIn(isBuildIn);
    RepositoryNode tableNode = new RepositoryNodeExt(modelObj, node, ENodeType.REPOSITORY_ELEMENT);
    tableNode.setProperties(EProperties.LABEL, table.getLabel());
    tableNode.setProperties(EProperties.CONTENT_TYPE, RepositoryNodeType.TABLE);
    boolean[] isDiffs = repositoryNodeManager.isDiff(tableNode);
    if (isDiffs[0]) {
        modelObj.setDiffImage(IMAGES_GRAY_ICON);
    }
    if (isDiffs[1]) {
        modelObj.setDiffImage(IMAGES_RED_ICON);
    }
    if (isDiffs[2]) {
        modelObj.setDiffImage(IMAGES_REFRESH_ICON);
    }
    return tableNode;
}
Also used : MetadataTableImpl(org.talend.core.model.metadata.builder.connection.impl.MetadataTableImpl) RepositoryNode(org.talend.repository.model.RepositoryNode) RepositoryNodeExt(org.talend.sqlbuilder.RepositoryNodeExt)

Aggregations

RepositoryNode (org.talend.repository.model.RepositoryNode)250 IRepositoryNode (org.talend.repository.model.IRepositoryNode)94 IRepositoryViewObject (org.talend.core.model.repository.IRepositoryViewObject)74 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)44 ERepositoryObjectType (org.talend.core.model.repository.ERepositoryObjectType)44 ProjectRepositoryNode (org.talend.core.repository.model.ProjectRepositoryNode)42 Item (org.talend.core.model.properties.Item)38 ArrayList (java.util.ArrayList)33 PersistenceException (org.talend.commons.exception.PersistenceException)27 IProxyRepositoryFactory (org.talend.repository.model.IProxyRepositoryFactory)27 ProcessItem (org.talend.core.model.properties.ProcessItem)23 RepositoryObject (org.talend.core.model.repository.RepositoryObject)22 ISelection (org.eclipse.jface.viewers.ISelection)20 ConnectionItem (org.talend.core.model.properties.ConnectionItem)20 IProjectRepositoryNode (org.talend.repository.model.nodes.IProjectRepositoryNode)20 List (java.util.List)18 Property (org.talend.core.model.properties.Property)18 DatabaseConnectionItem (org.talend.core.model.properties.DatabaseConnectionItem)17 MetadataColumnRepositoryObject (org.talend.core.repository.model.repositoryObject.MetadataColumnRepositoryObject)16 WizardDialog (org.eclipse.jface.wizard.WizardDialog)13