Merge branch 'mmw/JAL-4199-task-execution-update' into development/Release_2_12_Branch
[jalview.git] / src / jalview / ws2 / actions / NullAction.java
1 package jalview.ws2.actions;
2
3 import java.util.List;
4
5 import jalview.api.AlignViewportI;
6 import jalview.viewmodel.AlignmentViewport;
7 import jalview.ws.params.ArgumentI;
8 import jalview.ws2.actions.api.ActionI;
9 import jalview.ws2.actions.api.TaskI;
10 import jalview.ws2.api.Credentials;
11
12 /**
13  * An empty implementation of the {@link ActionI} interface that does nothing.
14  * Use as a placeholder for testing purposes.
15  * 
16  * @author mmwarowny
17  *
18  */
19 public final class NullAction extends BaseAction<Void>
20 {
21   public static final class Builder extends BaseAction.Builder<NullAction>
22   {
23     public NullAction build()
24     {
25       return new NullAction(this);
26     }
27   }
28   
29   public static Builder newBuilder()
30   {
31     return new Builder();
32   }
33   
34   protected NullAction(Builder builder)
35   {
36     super(builder);
37   }
38
39   @Override
40   public TaskI<Void> createTask(AlignViewportI viewport,
41           List<ArgumentI> args, Credentials credentials)
42   {
43     return new NullTask();
44   }
45
46   @Override
47   public boolean isActive(AlignmentViewport viewport)
48   {
49     return false;
50   }
51 }