JAL-3690 refactoring web-services discovery
[jalview.git] / src / jalview / ws / WSDiscovererI.java
1 package jalview.ws;
2
3 import jalview.ws.api.ServiceWithParameters;
4
5 import java.net.URL;
6 import java.util.List;
7 import java.util.concurrent.Future;
8
9 public interface WSDiscovererI
10 {
11   public static final int STATUS_OK = 1;
12   public static final int STATUS_NO_SERVICES = 0;
13   public static final int STATUS_INVALID = -1;
14   public static final int STATUS_UNKNOWN = -2;
15
16   public void setServiceUrls(List<String> wsUrls);
17
18   public List<String> getServiceUrls();
19
20   public List<ServiceWithParameters> getServices();
21
22   public boolean testServiceUrl(URL url);
23
24   public int getServerStatusFor(String url);
25   
26   public void addServiceChangeListener(ServiceChangeListener listener);
27   
28   public void removeServiceChangeListener(ServiceChangeListener listener);
29
30   public Future<WSDiscovererI> startDiscoverer();
31
32   public String getErrorMessages();
33
34   public boolean hasServices();
35
36   public boolean isRunning();
37 }