]> git.argeo.org Git - gpl/argeo-slc.git/blob - runtime/org.argeo.slc.server/src/main/java/org/argeo/slc/server/client/SlcServerHttpClient.java
6087d2a1b7f470d0f4e15098349892edf64f9bed
[gpl/argeo-slc.git] / runtime / org.argeo.slc.server / src / main / java / org / argeo / slc / server / client / SlcServerHttpClient.java
1 package org.argeo.slc.server.client;
2
3 import java.util.List;
4 import java.util.Map;
5
6 import org.argeo.slc.execution.ExecutionModuleDescriptor;
7 import org.argeo.slc.msg.ExecutionAnswer;
8 import org.argeo.slc.process.RealizedFlow;
9 import org.argeo.slc.runtime.SlcAgentDescriptor;
10
11 /** Abstraction of the access to HTTP services of an SLC Server. */
12 public interface SlcServerHttpClient extends HttpServicesClient {
13 public final static String LIST_AGENTS = "listAgents.service";
14 public final static String IS_SERVER_READY = "isServerReady.service";
15 public final static String NEW_SLC_EXECUTION = "newSlcExecution.service";
16 public final static String GET_MODULE_DESCRIPTOR = "getExecutionDescriptor.service";
17 public final static String LIST_MODULE_DESCRIPTORS = "listModulesDescriptors.service";
18 public final static String LIST_RESULTS = "listResults.service";
19
20 /** Wait for one agent to be available. */
21 public SlcAgentDescriptor waitForOneAgent();
22
23 /** Wait for the http server to be ready. */
24 public void waitForServerToBeReady();
25
26 /** Start an execution flow on the given agent. */
27 public ExecutionAnswer startFlow(String agentId, RealizedFlow realizedFlow);
28
29 /** Assume one agent and one version per module. */
30 public ExecutionAnswer startFlowDefault(String moduleName, String flowName,
31 Map<String, Object> args);
32
33 /** List execution modules descriptors. */
34 public List<ExecutionModuleDescriptor> listModuleDescriptors(String agentId);
35
36 /** Retrieve a single execution module descriptot. */
37 public ExecutionModuleDescriptor getModuleDescriptor(String agentId,
38 String moduleName, String version);
39
40 }