Search in sources :

Example 36 with DataManager

use of orgomg.cwm.foundation.softwaredeployment.DataManager in project tdq-studio-se by Talend.

the class CheckAndUpdateAnalysisDependencyTask method getConnections.

/**
 * DOC yyin Comment method "getConnections".
 *
 * @return
 */
private List<DataManager> getConnections() {
    List<DataManager> connections = new ArrayList<DataManager>();
    File sysIndsFolder = getWorkspacePath().append(EResourceConstant.DB_CONNECTIONS.getPath()).toFile();
    ArrayList<File> fileList = new ArrayList<File>();
    FilesUtils.getAllFilesFromFolder(sysIndsFolder, fileList, getFilenameFilter("item"));
    for (File file : fileList) {
        DataManager indDef = getDataManagerFromFile(file);
        if (indDef != null) {
            connections.add(indDef);
        }
    }
    return connections;
}
Also used : ArrayList(java.util.ArrayList) DataManager(orgomg.cwm.foundation.softwaredeployment.DataManager) File(java.io.File)

Example 37 with DataManager

use of orgomg.cwm.foundation.softwaredeployment.DataManager in project tdq-studio-se by Talend.

the class CheckAndUpdateAnalysisDependencyTask method checkAndRemoveWrongDataManager.

/**
 * only need to check database connection
 *
 * @param connections
 */
private void checkAndRemoveWrongDataManager(List<DataManager> connections) {
    for (DataManager connection : connections) {
        if (connection instanceof DatabaseConnection) {
            EList<Package> packages = connection.getDataPackage();
            for (EObject obj : packages) {
                Catalog catalog = SwitchHelpers.CATALOG_SWITCH.doSwitch(obj);
                // if catelog has more than one data manager
                if (catalog != null && catalog.getDataManager().size() > 1) {
                    List<DataManager> wrongManagers = new ArrayList<DataManager>();
                    // remove the wrong datamanger from the catelog;
                    for (DataManager manager : catalog.getDataManager()) {
                        // one
                        if (!StringUtils.equals(((DatabaseConnection) manager).getName(), ((DatabaseConnection) connection).getName())) {
                            wrongManagers.add(manager);
                        }
                    }
                    removeWrongDataManager(catalog, wrongManagers, connection);
                }
            }
        }
    }
}
Also used : EObject(org.eclipse.emf.ecore.EObject) ArrayList(java.util.ArrayList) DataManager(orgomg.cwm.foundation.softwaredeployment.DataManager) DatabaseConnection(org.talend.core.model.metadata.builder.connection.DatabaseConnection) Package(orgomg.cwm.objectmodel.core.Package) Catalog(orgomg.cwm.resource.relational.Catalog)

Aggregations

DataManager (orgomg.cwm.foundation.softwaredeployment.DataManager)37 Analysis (org.talend.dataquality.analysis.Analysis)8 AnalysisContext (org.talend.dataquality.analysis.AnalysisContext)7 IRepositoryNode (org.talend.repository.model.IRepositoryNode)6 ArrayList (java.util.ArrayList)5 Connection (org.talend.core.model.metadata.builder.connection.Connection)5 TdColumn (org.talend.cwm.relational.TdColumn)4 Indicator (org.talend.dataquality.indicators.Indicator)4 RepositoryNode (org.talend.repository.model.RepositoryNode)4 Dependency (orgomg.cwm.objectmodel.core.Dependency)4 ModelElement (orgomg.cwm.objectmodel.core.ModelElement)4 DatabaseConnection (org.talend.core.model.metadata.builder.connection.DatabaseConnection)3 MetadataColumnRepositoryObject (org.talend.core.repository.model.repositoryObject.MetadataColumnRepositoryObject)3 ModelElementIndicator (org.talend.dataprofiler.core.model.ModelElementIndicator)3 CompositeIndicator (org.talend.dataquality.indicators.CompositeIndicator)3 SQLException (java.sql.SQLException)2 HashSet (java.util.HashSet)2 List (java.util.List)2 EList (org.eclipse.emf.common.util.EList)2 EObject (org.eclipse.emf.ecore.EObject)2