} catch (MalformedURLException e)
{
Cache.log.warn("Problem whilst trying to make a URL from '"
- + Objects.toString(url, "<null>") + "'. "
- + "This was probably due to malformed comma-separated-list "
- + "in the " + SLIVKA_HOST_URLS
- + " entry of ${HOME}/.jalview_properties");
+ + Objects.toString(url, "<null>") + "'. "
+ + "This was probably due to malformed comma-separated-list "
+ + "in the " + SLIVKA_HOST_URLS
+ + " entry of ${HOME}/.jalview_properties");
Cache.log.debug("Exception occurred while reading url list", e);
}
}
} catch (IOException e)
{
Cache.log.error("Slivka could not retrieve services list from " + url,
- e);
+ e);
return STATUS_INVALID;
}
}
public CompletableFuture<WebServiceDiscovererI> startDiscoverer()
{
CompletableFuture<WebServiceDiscovererI> task = CompletableFuture
- .supplyAsync(() -> {
- reloadServices();
- return SlivkaWSDiscoverer.this;
- });
+ .supplyAsync(() -> {
+ reloadServices();
+ return SlivkaWSDiscoverer.this;
+ });
task.thenRun(() -> fireOperationsChanged(getOperations()));
discoveryTasks.add(task);
return task;
{
Cache.log.info("Reloading Slivka services");
fireOperationsChanged(Collections.emptyList());
- ArrayList<Operation> allOperations= new ArrayList<>();
+ ArrayList<Operation> allOperations = new ArrayList<>();
for (String url : getUrls())
{
SlivkaClient client = new SlivkaClient(url);
{
String[] path = classifier.split("\\s*::\\s*");
if (path.length >= 3 && path[0].toLowerCase().equals("operation")
- && path[1].toLowerCase().equals("analysis"))
+ && path[1].toLowerCase().equals("analysis"))
{
switch (path[path.length - 1].toLowerCase())
{
case "rna secondary structure prediction":
- op = new OperationStub(webService, "Secondary Structure Prediction");
+ op = new AnnotationOperation(webService,
+ "Secondary Structure Prediction", webService::attachAnnotations);
op.setInteractive(true);
op.setAlignmentAnalysis(true);
op.setProteinOperation(false);
break;
case "sequence alignment analysis (conservation)":
- op = new OperationStub(webService, "Conservation");
+ op = new AnnotationOperation(webService, "Conservation",
+ webService::attachAnnotations);
op.setAlignmentAnalysis(true);
op.setInteractive(true);
break;
case "protein sequence analysis":
- op = new OperationStub(webService, "Protein Disorder");
+ op = new AnnotationOperation(webService, "Protein Disorder",
+ webService::attachAnnotations);
break;
case "multiple sequence alignment":
op = new AlignmentOperation(webService, webService::getAlignment);
}
}
}
- if (op != null) {
+ if (op != null)
+ {
allOperations.add(op);
}
}