+ else
+ {
+ startSeqAnnotationWorker(sh, alignFrame, preset, editParams);
+ }
+ }
+
+ private void startSeqAnnotationWorker(ServiceWithParameters sh,
+ AlignFrame alignFrame, WsParamSetI preset, boolean editParams)
+ {
+ if (!sh.isInteractiveUpdate())
+ {
+ // build IUPred style client. take sequences, returns annotation per
+ // sequence.
+ processParams(sh, editParams).thenAccept((startJob) -> {
+ if (startJob)
+ {
+ alignFrame.getViewport().getCalcManager().startWorker(
+ new SeqAnnotationServiceCalcWorker(sh, alignFrame, preset, paramset));
+ }
+ });
+ }
+ }
+
+ public SequenceAnnotationWSClient(AutoCalcSetting fave,
+ AlignFrame alignFrame, boolean b)
+ {
+ super(alignFrame, fave.getPreset(), fave.getArgumentSet());
+ initSequenceAnnotationWSClient(fave.getService(), alignFrame,
+ fave.getPreset(), b);