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;
}
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);
}
}
}
}
}
Aggregations