1 package jalview.ws2.gui;
5 import jalview.bin.Console;
6 import jalview.datamodel.AlignmentI;
7 import jalview.gui.AlignFrame;
8 import jalview.gui.Desktop;
9 import jalview.ws2.actions.api.JobI;
10 import jalview.ws2.actions.api.TaskEventListener;
11 import jalview.ws2.actions.api.TaskI;
12 import jalview.ws2.api.JobStatus;
14 public class SearchServiceGuiHandler implements TaskEventListener<AlignmentI>
16 private final AlignFrame parentFrame;
18 public SearchServiceGuiHandler(AlignFrame parentFrame)
20 this.parentFrame = parentFrame;
24 public void taskStarted(TaskI<AlignmentI> source,
25 List<? extends JobI> subJobs)
27 Console.info("task started with " + subJobs.size() + " jobs");
28 // TODO Auto-generated method stub
33 public void taskStatusChanged(TaskI<AlignmentI> source, JobStatus status)
35 Console.info("task status " + status);
36 // TODO Auto-generated method stub
41 public void taskCompleted(TaskI<AlignmentI> source, AlignmentI result)
43 Console.info("task completed");
44 displayResultsNewFrame(result);
48 public void taskException(TaskI<AlignmentI> source, Exception e)
50 Console.info("task failed", e);
51 // TODO Auto-generated method stub
56 public void taskRestarted(TaskI<AlignmentI> source)
58 Console.info("task restarted");
59 // TODO Auto-generated method stub
64 public void subJobStatusChanged(TaskI<AlignmentI> source, JobI job,
67 Console.info("sub-job " + job.getInternalId() + " status " + status);
68 // TODO Auto-generated method stub
73 public void subJobLogChanged(TaskI<AlignmentI> source, JobI job,
76 // TODO Auto-generated method stub
81 public void subJobErrorLogChanged(TaskI<AlignmentI> source, JobI job,
84 // TODO Auto-generated method stub
88 private void displayResultsNewFrame(AlignmentI aln)
90 AlignFrame frame = new AlignFrame(aln, AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);
91 frame.getFeatureRenderer().transferSettings(
92 parentFrame.getFeatureRenderer().getSettings());
93 Desktop.addInternalFrame(frame, "title", AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT);