use of org.baderlab.csplugins.enrichmentmap.resolver.ResolverTask in project EnrichmentMapApp by BaderLab.
the class MasterDetailDialogPage method scan.
private void scan() {
Optional<File> rootFolder = fileBrowser.browseForRootFolder(jframeProvider.get());
if (rootFolder.isPresent()) {
scanButton.setEnabled(false);
ResolverTask task = new ResolverTask(rootFolder.get());
dialogTaskManager.execute(new TaskIterator(task), new TaskObserver() {
@Override
public void taskFinished(ObservableTask task) {
@SuppressWarnings("unchecked") List<DataSetParameters> datasets = task.getResults(List.class);
if (!datasets.isEmpty()) {
datasets.forEach(MasterDetailDialogPage.this::addDataSetToList);
dataSetList.setSelectedValue(datasets.get(0), true);
}
}
@Override
public void allFinished(FinishStatus finishStatus) {
scanButton.setEnabled(true);
updateButtonEnablement();
}
});
}
}
use of org.baderlab.csplugins.enrichmentmap.resolver.ResolverTask in project EnrichmentMapApp by BaderLab.
the class ResolverCommandTask method run.
@Override
public void run(TaskMonitor taskMonitor) throws Exception {
logger.info("Running EnrichmentMap Data Set Resolver Task");
// Scan root folder (note: throws exception if no data sets were found)
ResolverTask resolverTask = new ResolverTask(rootFolder);
// blocks
taskManager.execute(new TaskIterator(resolverTask));
List<DataSetParameters> dataSets = resolverTask.getDataSetResults();
logger.info("resolved " + dataSets.size() + " data sets");
dataSets.forEach(params -> logger.info(params.toString()));
// Overwrite all the expression files if the common file has been provided
if (commonExpressionFile != null) {
if (!commonExpressionFile.canRead()) {
throw new IllegalArgumentException("Cannot read commonExpressionFile: " + commonExpressionFile);
}
for (DataSetParameters dsp : dataSets) {
dsp.getFiles().setExpressionFileName(commonExpressionFile.getAbsolutePath());
}
}
// Overwrite all the gmt files if a common file has been provided
if (commonGMTFile != null) {
if (!commonGMTFile.canRead()) {
throw new IllegalArgumentException("Cannot read commonGMTFile: " + commonGMTFile);
}
for (DataSetParameters dsp : dataSets) {
dsp.getFiles().setGMTFileName(commonGMTFile.getAbsolutePath());
}
}
// Create Enrichment Map
String prefix = legacySupport.getNextAttributePrefix();
SimilarityMetric sm = SimilarityMetric.valueOf(similarityMetric.getSelectedValue());
NESFilter nesf = NESFilter.valueOf(nesFilter.getSelectedValue());
String info = String.format("prefix:%s, pvalue:%f, qvalue:%f, nesFilter:%s, minExperiments:%d, similarityMetric:%s, similarityCutoff:%f, combinedConstant:%f", prefix, pvalue, qvalue, nesf, minExperiments, sm, similarityCutoff, combinedConstant);
logger.info(info);
EMCreationParameters params = new EMCreationParameters(prefix, pvalue, qvalue, nesf, Optional.ofNullable(minExperiments), sm, similarityCutoff, combinedConstant);
params.setCreateDistinctEdges(distinctEdges);
CreateEnrichmentMapTaskFactory taskFactory = taskFactoryFactory.create(params, dataSets);
TaskIterator tasks = taskFactory.createTaskIterator();
taskManager.execute(tasks);
logger.info("Done.");
}
Aggregations