org.eclipse.smila.jobmanager.httphandler
Class JobRunControlHandler
java.lang.Object
org.eclipse.smila.http.server.util.ARequestHandler
org.eclipse.smila.http.server.json.JsonRequestHandler
org.eclipse.smila.jobmanager.httphandler.AJobManagerHandler
org.eclipse.smila.jobmanager.httphandler.JobRunControlHandler
- All Implemented Interfaces:
- HttpHandler, RequestHandler
public class JobRunControlHandler
- extends AJobManagerHandler
Implements the handling of HTTP requests to finish a job run.
URL pattern: smila/jobmanager/jobs/-jobname-/-jobid-/-command-
|
Field Summary |
static java.lang.String |
CMD_CANCEL
command value to invoke a job run cancel operation. |
static java.lang.String |
CMD_FINISH
command value to invoke a job run finish operation. |
|
Method Summary |
protected int |
getErrorStatus(java.lang.String method,
java.lang.String requestUri,
java.lang.Throwable ex)
Adds HTTP result code 400 ("BAD_REQUEST") for IllegalJobStateException caused by a RunStorageException to the
exception handling of AJobManagerHandler.getErrorStatus(String, String, Throwable). |
protected int |
getSuccessStatus(java.lang.String method,
java.lang.String requestUri)
|
protected boolean |
isValidMethod(java.lang.String method,
java.lang.String requestUri)
Set GET instead of POST as basic method. |
java.lang.Object |
process(java.lang.String method,
java.lang.String requestUri,
Record inputRecord)
process input record and return result object. |
| Methods inherited from class org.eclipse.smila.jobmanager.httphandler.AJobManagerHandler |
getDefinitionPersistence, getJobRunDataProvider, getJobRunEngine, getJobTaskProcessor, isDeleteRequest, isGetOrDeleteRequest, isGetOrPostRequest, isGetRequest, isPostRequest, setDefinitionPersistence, setJobRunDataProvider, setJobRunEngine, setJobTaskProcessor, unsetDefinitionPersistence, unsetJobRunDataProvider, unsetJobRunEngine, unsetJobTaskProcessor |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CMD_FINISH
public static final java.lang.String CMD_FINISH
- command value to invoke a job run finish operation.
- See Also:
- Constant Field Values
CMD_CANCEL
public static final java.lang.String CMD_CANCEL
- command value to invoke a job run cancel operation.
- See Also:
- Constant Field Values
JobRunControlHandler
public JobRunControlHandler()
process
public java.lang.Object process(java.lang.String method,
java.lang.String requestUri,
Record inputRecord)
throws java.lang.Exception
- process input record and return result object.
- Specified by:
process in class JsonRequestHandler
- Parameters:
method - HTTP methodrequestUri - request URI.inputRecord - input record parsed either from request body, if it has content, or from request URI parameters.
- Returns:
- result object, may be null. If this is not a
Record, you have to provide a
JsonRequestHandler.writeResultObject(OutputStream, Object) method, too.
- Throws:
java.lang.Exception - any failure during processing.
getErrorStatus
protected int getErrorStatus(java.lang.String method,
java.lang.String requestUri,
java.lang.Throwable ex)
- Adds HTTP result code 400 ("BAD_REQUEST") for IllegalJobStateException caused by a RunStorageException to the
exception handling of
AJobManagerHandler.getErrorStatus(String, String, Throwable).
- Overrides:
getErrorStatus in class AJobManagerHandler
- Parameters:
method - HTTP methodrequestUri - request URIex - an exception
- Returns:
- error status code.
- See Also:
HTTP_UTILS#getErrorStatus(String, String, Throwable)
getSuccessStatus
protected int getSuccessStatus(java.lang.String method,
java.lang.String requestUri)
- Overrides:
getSuccessStatus in class JsonRequestHandler
- Parameters:
method - HTTP methodrequestUri - request URI
- Returns:
- the status code to return for successful requests using the method and request URI. The code is "ACCEPTED"
(202).
isValidMethod
protected boolean isValidMethod(java.lang.String method,
java.lang.String requestUri)
- Set GET instead of POST as basic method.
POST is currently the only valid method.
- Overrides:
isValidMethod in class AJobManagerHandler
- Parameters:
method - HTTP methodrequestUri - request URI
- Returns:
- true if the method can be used for the URI, else false.