// columns
List<AlignCalcWorkerI> clnts = alignFrame.getViewport()
- .getCalcManager().getRegisteredWorkersOfClass(clientClass);
- AbstractJabaCalcWorker worker;
- if (clnts == null || clnts.size() == 0)
+ .getCalcManager()
+ .getRegisteredWorkersOfClass(SeqAnnotationServiceCalcWorker.class);
+
+ SeqAnnotationServiceCalcWorker worker = null;
+ if (clnts != null)
+ {
+ for (AlignCalcWorkerI _worker : clnts)
+ {
+ worker = (SeqAnnotationServiceCalcWorker) _worker;
+ if (worker.hasService()
+ && worker.getService().getClass().equals(clientClass))
+ {
+ break;
+ }
+ worker = null;
+ }
+ }
+ if (worker == null)
{
if (!processParams(sh, editParams))
{
}
try
{
- worker = (AbstractJabaCalcWorker) (clientClass
- .getConstructor(new Class[]
- { Jws2Instance.class, AlignFrame.class, WsParamSetI.class,
- List.class })
- .newInstance(new Object[]
- { sh, alignFrame, this.preset, paramset }));
+ worker = new SeqAnnotationServiceCalcWorker(sh, alignFrame, this.preset,
+ paramset);
} catch (Exception x)
{
x.printStackTrace();
}
else
{
- worker = (AbstractJabaCalcWorker) clnts.get(0);
if (editParams)
{
paramset = worker.getArguments();
}
alignFrame.getViewport().getCalcManager().startWorker(
- new AADisorderClient(sh, alignFrame, preset, paramset));
+ new SeqAnnotationServiceCalcWorker(sh, alignFrame, preset, paramset));
}
}
final ServiceWithParameters service,
final AlignFrame alignFrame)
{
- if (registerAAConWSInstance(wsmenu, service, alignFrame))
+ if (Jws2ClientFactory.registerAAConWSInstance(wsmenu, service,
+ alignFrame))
{
// Alignment dependent analysis calculation WS gui
return;