in taverna-server-webapp/src/main/java/org/apache/taverna/server/master/rest/TavernaServerREST.java [141:219]
Response submitWorkflow(@Nonnull Workflow workflow,
@Nonnull @Context UriInfo ui) throws NoUpdateException;
/**
* Accepts (or not) a request to create a new run executing the workflow at
* the given location.
*
* @param workflowReference
* The wrapped URI to workflow document to execute.
* @param ui
* About the URI being POSTed to.
* @return A response to the POST describing what was created.
* @throws NoUpdateException
* If the POST failed.
* @throw NoCreateException If the workflow couldn't be read into the server
* or the engine rejects it.
*/
@POST
@Path(RUNS)
@Consumes(URI_LIST)
@RolesAllowed(USER)
@Description("Accepts a URL to a workflow to download and run. The URL "
+ "must be hosted on a publicly-accessible service.")
@Nonnull
Response submitWorkflowByURL(@Nonnull List<URI> referenceList,
@Nonnull @Context UriInfo ui) throws NoCreateException,
NoUpdateException;
/** Get an outline of the operations supported. */
@OPTIONS
@Path(RUNS)
@Description("Produces the description of the operations on the "
+ "collection of runs.")
Response runsOptions();
/**
* @return A description of the policies supported by this server.
*/
@Path(POL)
@Description("The policies supported by this server.")
@Nonnull
PolicyView getPolicyDescription();
/**
* Get a particular named run resource.
*
* @param runName
* The name of the run.
* @param uriInfo
* About the URI used to access this run.
* @return A RESTful delegate for the run.
* @throws UnknownRunException
* If the run handle is unknown to the current user.
*/
@Path(RUNS + "/{runName}")
@RolesAllowed(USER)
@Description("Get a particular named run resource to dispatch to.")
@Nonnull
TavernaServerRunREST getRunResource(
@Nonnull @PathParam("runName") String runName,
@Nonnull @Context UriInfo uriInfo) throws UnknownRunException;
/**
* Factored out path names used in the {@link TavernaServerREST} interface
* and related places.
*
* @author Donal Fellows
*/
interface PathNames {
public static final String ROOT = "/";
public static final String RUNS = "runs";
public static final String POL = "policy";
public static final String POL_CAPABILITIES = "capabilities";
public static final String POL_RUN_LIMIT = "runLimit";
public static final String POL_OP_LIMIT = "operatingLimit";
public static final String POL_PERM_WF = "permittedWorkflows";
public static final String POL_PERM_LIST = "permittedListenerTypes";
public static final String POL_NOTIFIERS = "enabledNotificationFabrics";
}