Search in sources :

Example 51 with Task

use of net.sf.mzmine.taskcontrol.Task in project mzmine2 by mzmine.

the class GnpsFbmnExportAndSubmitTask method run.

@Override
public void run() {
    final AbstractTask thistask = this;
    setStatus(TaskStatus.PROCESSING);
    boolean openFolder = parameters.getParameter(GnpsFbmnExportAndSubmitParameters.OPEN_FOLDER).getValue();
    boolean submit = parameters.getParameter(GnpsFbmnExportAndSubmitParameters.SUBMIT).getValue();
    File file = parameters.getParameter(GnpsFbmnExportAndSubmitParameters.FILENAME).getValue();
    file = FileAndPathUtil.eraseFormat(file);
    parameters.getParameter(GnpsFbmnExportAndSubmitParameters.FILENAME).setValue(file);
    List<AbstractTask> list = new ArrayList<>(3);
    GnpsFbmnMgfExportTask task = new GnpsFbmnMgfExportTask(parameters);
    list.add(task);
    // add csv quant table
    list.add(addQuantTableTask(parameters, null));
    // finish listener to submit
    final File fileName = file;
    final File folder = file.getParentFile();
    new AllTasksFinishedListener(list, true, // succeed
    l -> {
        try {
            LOG.info("succeed" + thistask.getStatus().toString());
            if (submit) {
                GnpsFbmnSubmitParameters param = parameters.getParameter(GnpsFbmnExportAndSubmitParameters.SUBMIT).getEmbeddedParameters();
                submit(fileName, param);
            }
            // open folder
            try {
                if (openFolder && Desktop.isDesktopSupported()) {
                    Desktop.getDesktop().open(folder);
                }
            } catch (Exception ex) {
            }
        } finally {
            // finish task
            if (thistask.getStatus() == TaskStatus.PROCESSING)
                thistask.setStatus(TaskStatus.FINISHED);
        }
    }, lerror -> {
        setErrorMessage("GNPS submit was not started due too errors while file export");
        thistask.setStatus(TaskStatus.ERROR);
        throw new MSDKRuntimeException("GNPS submit was not started due too errors while file export");
    }, // cancel if one was cancelled
    listCancelled -> cancel()) {

        @Override
        public void taskStatusChanged(Task task, TaskStatus newStatus, TaskStatus oldStatus) {
            super.taskStatusChanged(task, newStatus, oldStatus);
            // show progress
            progress.getAndSet(getProgress());
        }
    };
    MZmineCore.getTaskController().addTasks(list.toArray(new AbstractTask[list.size()]));
    // wait till finish
    while (!(isCanceled() || isFinished())) {
        try {
            Thread.sleep(100);
        } catch (InterruptedException e) {
            LOG.log(Level.SEVERE, "Error in GNPS export/submit task", e);
        }
    }
}
Also used : CSVExportTask(net.sf.mzmine.modules.peaklistmethods.io.csvexport.CSVExportTask) Task(net.sf.mzmine.taskcontrol.Task) AbstractTask(net.sf.mzmine.taskcontrol.AbstractTask) AbstractTask(net.sf.mzmine.taskcontrol.AbstractTask) ArrayList(java.util.ArrayList) AllTasksFinishedListener(net.sf.mzmine.taskcontrol.AllTasksFinishedListener) TaskStatus(net.sf.mzmine.taskcontrol.TaskStatus) MSDKRuntimeException(io.github.msdk.MSDKRuntimeException) MSDKRuntimeException(io.github.msdk.MSDKRuntimeException) File(java.io.File)

Example 52 with Task

use of net.sf.mzmine.taskcontrol.Task in project mzmine2 by mzmine.

the class SiriusProcessingModule method runModule.

@Override
@Nonnull
public ExitCode runModule(@Nonnull MZmineProject project, @Nonnull ParameterSet parameters, @Nonnull Collection<Task> tasks) {
    final PeakList[] peakLists = parameters.getParameter(PeakListIdentificationParameters.peakLists).getValue().getMatchingPeakLists();
    for (final PeakList peakList : peakLists) {
        Task newTask = new PeakListIdentificationTask(parameters, peakList);
        tasks.add(newTask);
    }
    return ExitCode.OK;
}
Also used : Task(net.sf.mzmine.taskcontrol.Task) PeakList(net.sf.mzmine.datamodel.PeakList) Nonnull(javax.annotation.Nonnull)

Example 53 with Task

use of net.sf.mzmine.taskcontrol.Task in project mzmine2 by mzmine.

the class LocalSpectralDBSearchModule method runModule.

@Override
@Nonnull
public ExitCode runModule(@Nonnull MZmineProject project, @Nonnull ParameterSet parameters, @Nonnull Collection<Task> tasks) {
    PeakList[] peakLists = parameters.getParameter(LocalSpectralDBSearchParameters.peakLists).getValue().getMatchingPeakLists();
    for (PeakList peakList : peakLists) {
        Task newTask = new LocalSpectralDBSearchTask(peakList, parameters);
        tasks.add(newTask);
    }
    return ExitCode.OK;
}
Also used : Task(net.sf.mzmine.taskcontrol.Task) PeakList(net.sf.mzmine.datamodel.PeakList) Nonnull(javax.annotation.Nonnull)

Example 54 with Task

use of net.sf.mzmine.taskcontrol.Task in project mzmine2 by mzmine.

the class SortSpectralDBIdentitiesModule method runModule.

@Override
@Nonnull
public ExitCode runModule(@Nonnull MZmineProject project, @Nonnull ParameterSet parameters, @Nonnull Collection<Task> tasks) {
    PeakList[] peakLists = parameters.getParameter(SortSpectralDBIdentitiesParameters.peakLists).getValue().getMatchingPeakLists();
    for (PeakList peakList : peakLists) {
        Task newTask = new SortSpectralDBIdentitiesTask(peakList, parameters);
        tasks.add(newTask);
    }
    return ExitCode.OK;
}
Also used : Task(net.sf.mzmine.taskcontrol.Task) PeakList(net.sf.mzmine.datamodel.PeakList) Nonnull(javax.annotation.Nonnull)

Example 55 with Task

use of net.sf.mzmine.taskcontrol.Task in project mzmine2 by mzmine.

the class ShapeModelerModule method runModule.

@Override
@Nonnull
public ExitCode runModule(@Nonnull MZmineProject project, @Nonnull ParameterSet parameters, @Nonnull Collection<Task> tasks) {
    PeakList[] peakLists = parameters.getParameter(ShapeModelerParameters.peakLists).getValue().getMatchingPeakLists();
    for (final PeakList peakList : peakLists) {
        Task newTask = new ShapeModelerTask(project, peakList, parameters);
        tasks.add(newTask);
    }
    return ExitCode.OK;
}
Also used : Task(net.sf.mzmine.taskcontrol.Task) PeakList(net.sf.mzmine.datamodel.PeakList) Nonnull(javax.annotation.Nonnull)

Aggregations

Task (net.sf.mzmine.taskcontrol.Task)75 Nonnull (javax.annotation.Nonnull)57 PeakList (net.sf.mzmine.datamodel.PeakList)37 RawDataFile (net.sf.mzmine.datamodel.RawDataFile)20 ParameterSet (net.sf.mzmine.parameters.ParameterSet)8 ArrayList (java.util.ArrayList)7 AbstractTask (net.sf.mzmine.taskcontrol.AbstractTask)7 TaskStatus (net.sf.mzmine.taskcontrol.TaskStatus)7 File (java.io.File)6 RawDataFilesParameter (net.sf.mzmine.parameters.parametertypes.selectors.RawDataFilesParameter)6 ExitCode (net.sf.mzmine.util.ExitCode)4 MSDKRuntimeException (io.github.msdk.MSDKRuntimeException)3 MZmineProject (net.sf.mzmine.datamodel.MZmineProject)3 RawDataFileWriter (net.sf.mzmine.datamodel.RawDataFileWriter)2 MZmineProcessingModule (net.sf.mzmine.modules.MZmineProcessingModule)2 CSVExportTask (net.sf.mzmine.modules.peaklistmethods.io.csvexport.CSVExportTask)2 PeakListsParameter (net.sf.mzmine.parameters.parametertypes.selectors.PeakListsParameter)2 TaskStatusListener (net.sf.mzmine.taskcontrol.TaskStatusListener)2 IOException (java.io.IOException)1 Arrays (java.util.Arrays)1