X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws2%2Foperations%2FAnnotationOperation.java;h=b2e3fc6e1c44ab209c77b72ababa001469b65757;hb=987e7e84678221c2ac6f269df5c72a77df281059;hp=1eb5da0800c0cb75f3aa8ad2ee592b76c79b9e0f;hpb=22757dee67436691d8a7570391115d551b30e096;p=jalview.git diff --git a/src/jalview/ws2/operations/AnnotationOperation.java b/src/jalview/ws2/operations/AnnotationOperation.java index 1eb5da0..b2e3fc6 100644 --- a/src/jalview/ws2/operations/AnnotationOperation.java +++ b/src/jalview/ws2/operations/AnnotationOperation.java @@ -1,41 +1,28 @@ package jalview.ws2.operations; -import java.io.IOException; import java.util.Collections; -import java.util.HashMap; import java.util.List; -import java.util.concurrent.CancellationException; import java.util.concurrent.CompletionStage; import javax.swing.JMenu; import javax.swing.JMenuItem; import jalview.api.AlignmentViewPanel; -import jalview.bin.Cache; import jalview.datamodel.AlignmentAnnotation; import jalview.gui.AlignFrame; import jalview.gui.AlignViewport; import jalview.gui.WsJobParameters; -import jalview.io.AnnotationFile; import jalview.io.FeaturesFile; -import jalview.util.MathUtils; import jalview.util.MessageManager; -import jalview.workers.AlignCalcManager2; import jalview.ws.params.ArgumentI; import jalview.ws.params.WsParamSetI; import jalview.ws2.MenuEntryProviderI; import jalview.ws2.ResultSupplier; -import jalview.ws2.WSJob; -import jalview.ws2.WSJobStatus; import jalview.ws2.PollingTaskExecutor; import jalview.ws2.WebServiceI; -import jalview.ws2.WebServiceWorkerI; -import jalview.ws2.utils.WSJobList; - -import static java.lang.String.format; /** - * + * * @author mmwarowny * */ @@ -49,6 +36,10 @@ public class AnnotationOperation implements Operation final ResultSupplier featuresSupplier; + boolean alignmentAnalysis = false; + + boolean interactive = false; + public AnnotationOperation(WebServiceI service, ResultSupplier> annotSupplier, ResultSupplier featSupplier, String operationName) @@ -110,13 +101,23 @@ public class AnnotationOperation implements Operation @Override public boolean isInteractive() { - return false; + return interactive; + } + + public void setInteractive(boolean value) + { + this.interactive = value; } @Override public boolean isAlignmentAnalysis() { - return false; + return alignmentAnalysis; + } + + public void setAlignmentAnalysis(boolean value) + { + this.alignmentAnalysis = value; } @Override @@ -151,8 +152,10 @@ public class AnnotationOperation implements Operation var worker = new AnnotationServiceWorker(this, service, Collections.emptyList(), viewport, alignPanel, frame, frame, calcManager); - calcManager.startWorker(worker); - // TODO create and submit AnnotataionServiceWorker + if (isInteractive()) + calcManager.registerWorker(worker); + else + calcManager.startWorker(worker); }); parent.add(item); } @@ -172,10 +175,14 @@ public class AnnotationOperation implements Operation var worker = new AnnotationServiceWorker( AnnotationOperation.this, service, arguments, viewport, alignPanel, frame, frame, calcManager); - calcManager.startWorker(worker); + if (isInteractive()) + calcManager.registerWorker(worker); + else + calcManager.startWorker(worker); } }); }); + parent.add(item); } }