Search in sources :

Example 36 with Folder

use of org.talend.core.model.repository.Folder in project tdq-studio-se by Talend.

the class AnalysisFolderRepNode method getChildrenAll.

/**
 * get all children under the folder.
 *
 * @param withDelete include deleted ones
 * @return
 */
public List<IRepositoryNode> getChildrenAll(boolean withDeleted, ViewerFilter filter) {
    List<IRepositoryNode> nodes = new ArrayList<IRepositoryNode>();
    try {
        RootContainer<String, IRepositoryViewObject> tdqViewObjects = super.getTdqViewObjects(getProject(), this);
        // sub folders
        for (Container<String, IRepositoryViewObject> container : tdqViewObjects.getSubContainer()) {
            Folder folder = new Folder((Property) container.getProperty(), ERepositoryObjectType.TDQ_ANALYSIS_ELEMENT);
            if (isIgnoreFolder(withDeleted, getProject(), folder)) {
                continue;
            }
            AnalysisSubFolderRepNode childNodeFolder = new AnalysisSubFolderRepNode(folder, this, ENodeType.SIMPLE_FOLDER, getProject());
            childNodeFolder.setProperties(EProperties.LABEL, ERepositoryObjectType.TDQ_ANALYSIS_ELEMENT);
            childNodeFolder.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.TDQ_ANALYSIS_ELEMENT);
            folder.setRepositoryNode(childNodeFolder);
            nodes.addAll(childNodeFolder.getChildrenAll(withDeleted, filter));
        }
        // ana files
        for (IRepositoryViewObject viewObject : tdqViewObjects.getMembers()) {
            if (!withDeleted && viewObject.isDeleted()) {
                continue;
            }
            AnalysisRepNode anaNode = new AnalysisRepNode(viewObject, this, ENodeType.REPOSITORY_ELEMENT, getProject());
            anaNode.setProperties(EProperties.LABEL, ERepositoryObjectType.TDQ_ANALYSIS_ELEMENT);
            anaNode.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.TDQ_ANALYSIS_ELEMENT);
            viewObject.setRepositoryNode(anaNode);
            if (filter.select(null, anaNode.getParent(), anaNode)) {
                nodes.add(anaNode);
            }
        }
    } catch (PersistenceException e) {
        log.error(e, e);
    }
    return nodes;
}
Also used : IRepositoryNode(org.talend.repository.model.IRepositoryNode) ArrayList(java.util.ArrayList) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) PersistenceException(org.talend.commons.exception.PersistenceException) Folder(org.talend.core.model.repository.Folder)

Example 37 with Folder

use of org.talend.core.model.repository.Folder in project tdq-studio-se by Talend.

the class DBConnectionFolderRepNode method getChildrenForProject.

/*
     * (non-Javadoc)
     * 
     * @see org.talend.dq.nodes.DQFolderRepNode#getChildrenForProject(boolean, org.talend.core.model.general.Project)
     */
@Override
public void getChildrenForProject(boolean withDeleted, Project project) throws PersistenceException {
    RootContainer<String, IRepositoryViewObject> tdqViewObjects = super.getTdqViewObjects(project, this);
    // MOD qiongli 2011-1-18.setProperties for every node
    for (Container<String, IRepositoryViewObject> container : tdqViewObjects.getSubContainer()) {
        Folder folder = new Folder((Property) container.getProperty(), ERepositoryObjectType.METADATA_CONNECTIONS);
        if (isIgnoreFolder(withDeleted, project, folder)) {
            continue;
        }
        DBConnectionSubFolderRepNode childNodeFolder = new DBConnectionSubFolderRepNode(folder, this, ENodeType.SIMPLE_FOLDER, project);
        childNodeFolder.setProperties(EProperties.LABEL, ERepositoryObjectType.METADATA_CONNECTIONS);
        childNodeFolder.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.METADATA_CONNECTIONS);
        folder.setRepositoryNode(childNodeFolder);
        super.getChildren().add(childNodeFolder);
    }
    // connection files
    for (IRepositoryViewObject viewObject : tdqViewObjects.getMembers()) {
        if (!withDeleted && viewObject.isDeleted()) {
            continue;
        }
        DBConnectionRepNode repNode = new DBConnectionRepNode(viewObject, this, ENodeType.REPOSITORY_ELEMENT, project);
        repNode.setProperties(EProperties.LABEL, viewObject.getLabel());
        repNode.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.METADATA_CONNECTIONS);
        viewObject.setRepositoryNode(repNode);
        super.getChildren().add(repNode);
        // Update software system
        updateSoftwareSystem(viewObject);
    }
}
Also used : IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) Folder(org.talend.core.model.repository.Folder)

Example 38 with Folder

use of org.talend.core.model.repository.Folder in project tdq-studio-se by Talend.

the class ReportFolderRepNode method getChildrenForProject.

/*
     * (non-Javadoc)
     * 
     * @see org.talend.dq.nodes.DQFolderRepNode#getChildrenForProject(boolean, org.talend.core.model.general.Project)
     */
@Override
public void getChildrenForProject(boolean withDeleted, Project project) throws PersistenceException {
    RootContainer<String, IRepositoryViewObject> tdqViewObjects = super.getTdqViewObjects(project, this);
    // sub folders
    for (Container<String, IRepositoryViewObject> container : tdqViewObjects.getSubContainer()) {
        Folder folder = new Folder((Property) container.getProperty(), ERepositoryObjectType.TDQ_REPORT_ELEMENT);
        if (isIgnoreFolder(withDeleted, project, folder)) {
            continue;
        }
        ReportSubFolderRepNode childNodeFolder = new ReportSubFolderRepNode(folder, this, ENodeType.SIMPLE_FOLDER, project);
        childNodeFolder.setProperties(EProperties.LABEL, ERepositoryObjectType.TDQ_REPORT_ELEMENT);
        childNodeFolder.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.TDQ_REPORT_ELEMENT);
        folder.setRepositoryNode(childNodeFolder);
        super.getChildren().add(childNodeFolder);
    }
    // rep files
    for (IRepositoryViewObject viewObject : tdqViewObjects.getMembers()) {
        if (!withDeleted && viewObject.isDeleted()) {
            continue;
        }
        ReportRepNode repNode = new ReportRepNode(viewObject, this, ENodeType.REPOSITORY_ELEMENT, project);
        repNode.setProperties(EProperties.LABEL, ERepositoryObjectType.TDQ_REPORT_ELEMENT);
        repNode.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.TDQ_REPORT_ELEMENT);
        viewObject.setRepositoryNode(repNode);
        super.getChildren().add(repNode);
    }
}
Also used : IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) Folder(org.talend.core.model.repository.Folder)

Example 39 with Folder

use of org.talend.core.model.repository.Folder in project tdq-studio-se by Talend.

the class DFConnectionFolderRepNode method getChildrenForProject.

/*
     * (non-Javadoc)
     * 
     * @see org.talend.dq.nodes.DQFolderRepNode#getChildrenForProject(boolean, org.talend.core.model.general.Project)
     */
@Override
public void getChildrenForProject(boolean withDeleted, Project project) throws PersistenceException {
    RootContainer<String, IRepositoryViewObject> tdqViewObjects = super.getTdqViewObjects(project, this);
    // MOD qiongli 2011-1-18.setProperties for every node
    for (Container<String, IRepositoryViewObject> container : tdqViewObjects.getSubContainer()) {
        Folder folder = new Folder((Property) container.getProperty(), ERepositoryObjectType.METADATA_FILE_DELIMITED);
        if (isIgnoreFolder(withDeleted, project, folder)) {
            continue;
        }
        DFConnectionSubFolderRepNode childNodeFolder = new DFConnectionSubFolderRepNode(folder, this, ENodeType.SIMPLE_FOLDER, project);
        childNodeFolder.setProperties(EProperties.LABEL, ERepositoryObjectType.METADATA_FILE_DELIMITED);
        childNodeFolder.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.METADATA_FILE_DELIMITED);
        super.getChildren().add(childNodeFolder);
    }
    // connection files
    for (IRepositoryViewObject viewObject : tdqViewObjects.getMembers()) {
        if (!withDeleted && viewObject.isDeleted()) {
            continue;
        }
        DFConnectionRepNode repNode = new DFConnectionRepNode(viewObject, this, ENodeType.REPOSITORY_ELEMENT, project);
        repNode.setProperties(EProperties.LABEL, ERepositoryObjectType.METADATA_FILE_DELIMITED);
        repNode.setProperties(EProperties.CONTENT_TYPE, ERepositoryObjectType.METADATA_FILE_DELIMITED);
        viewObject.setRepositoryNode(repNode);
        super.getChildren().add(repNode);
    }
}
Also used : IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) Folder(org.talend.core.model.repository.Folder)

Example 40 with Folder

use of org.talend.core.model.repository.Folder in project tdq-studio-se by Talend.

the class PatternFolderRepNode method createChildrenNode.

/**
 * DOC msjian Comment method "createChildrenNode".
 *
 * @param withDeleted
 * @param project
 * @throws PersistenceException
 */
private void createChildrenNode(boolean withDeleted, Project project) throws PersistenceException {
    RootContainer<String, IRepositoryViewObject> tdqViewObjects = super.getTdqViewObjects(project, this);
    // sub folders
    for (Container<String, IRepositoryViewObject> container : tdqViewObjects.getSubContainer()) {
        // $NON-NLS-1$
        boolean isRegex = container.getLabel().equals("Regex");
        ERepositoryObjectType eRepositoryObjectType = isRegex ? ERepositoryObjectType.TDQ_PATTERN_REGEX : ERepositoryObjectType.TDQ_PATTERN_SQL;
        Folder folder = new Folder((Property) container.getProperty(), eRepositoryObjectType);
        if (isIgnoreFolder(withDeleted, project, folder)) {
            continue;
        }
        DQRepositoryNode patternFolderRepNode;
        if (isRegex) {
            patternFolderRepNode = new PatternRegexFolderRepNode(folder, this, ENodeType.SYSTEM_FOLDER, project);
        } else {
            patternFolderRepNode = new PatternSqlFolderRepNode(folder, this, ENodeType.SYSTEM_FOLDER, project);
        }
        RepositoryNodeHelper.setPropertiesForNode(patternFolderRepNode, eRepositoryObjectType);
        folder.setRepositoryNode(patternFolderRepNode);
        super.getChildren().add(patternFolderRepNode);
    }
}
Also used : IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject) ERepositoryObjectType(org.talend.core.model.repository.ERepositoryObjectType) Folder(org.talend.core.model.repository.Folder)

Aggregations

Folder (org.talend.core.model.repository.Folder)45 IRepositoryViewObject (org.talend.core.model.repository.IRepositoryViewObject)34 IFolder (org.eclipse.core.resources.IFolder)16 FolderItem (org.talend.core.model.properties.FolderItem)10 ArrayList (java.util.ArrayList)9 ERepositoryObjectType (org.talend.core.model.repository.ERepositoryObjectType)9 RepositoryNode (org.talend.repository.model.RepositoryNode)9 IPath (org.eclipse.core.runtime.IPath)7 IRepositoryNode (org.talend.repository.model.IRepositoryNode)7 PersistenceException (org.talend.commons.exception.PersistenceException)5 File (java.io.File)4 IContainer (org.eclipse.core.resources.IContainer)4 IProject (org.eclipse.core.resources.IProject)4 Path (org.eclipse.core.runtime.Path)4 Item (org.talend.core.model.properties.Item)4 IFile (org.eclipse.core.resources.IFile)3 Project (org.talend.core.model.general.Project)3 ItemState (org.talend.core.model.properties.ItemState)3 Property (org.talend.core.model.properties.Property)3 IOException (java.io.IOException)2