SMILA (incubation) API documentation

org.eclipse.smila.jobmanager.httphandler
Class BucketsHandler

java.lang.Object
  extended by org.eclipse.smila.http.server.util.ARequestHandler
      extended by org.eclipse.smila.http.server.json.JsonRequestHandler
          extended by org.eclipse.smila.jobmanager.httphandler.BucketsHandler
All Implemented Interfaces:
HttpHandler, RequestHandler

public class BucketsHandler
extends JsonRequestHandler

Implements the handling of HTTP requests to request the buckets list or to define new buckets.
URL pattern: smila/jobmanager/buckets/
Methods allowed: GET, POST


Field Summary
 
Fields inherited from class org.eclipse.smila.http.server.json.JsonRequestHandler
FACTORY
 
Constructor Summary
BucketsHandler()
           
 
Method Summary
protected  void activate(ComponentContext context)
          OSGi Declarative Services service activation method.
protected  void deactivate(ComponentContext context)
          clean up JobManager on service shutdown.
protected  int getErrorStatus(java.lang.String method, java.lang.String requestUri, java.lang.Throwable ex)
          Adds HTTP result code 400 ("BAD_REQUEST") for InvalidConfigException to the exception handling of JsonRequestHandler.getErrorStatus(String, String, Throwable).
protected  int getSuccessStatus(java.lang.String method, java.lang.String requestUri)
          result status for POST requests should be CREATED.
protected  boolean isValidMethod(java.lang.String method, java.lang.String requestUri)
          Checks if the handler allows the HTTP method.
 java.lang.Object process(java.lang.String method, java.lang.String requestUri, Record inputRecord)
          process input record and return result object.
 void setJobManager(JobManager jobManager)
          Sets the reference to the JobManager service.
 void unsetJobManager(JobManager jobManager)
          Resets the reference to the JobManager service to null if the given jobManager instance is set.
 
Methods inherited from class org.eclipse.smila.http.server.json.JsonRequestHandler
getRequestHost, getSuccessStatus, handle, writeErrorResult, writeResultObject, writeSuccessResult
 
Methods inherited from class org.eclipse.smila.http.server.util.ARequestHandler
getDynamicUriParts, getRootContextPath, getStaticUriParts, getUriPattern, matches, urlDecode
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BucketsHandler

public BucketsHandler()
Method Detail

activate

protected void activate(ComponentContext context)
OSGi Declarative Services service activation method. Must be explicitly called of the subclass implements its own activation method.

Overrides:
activate in class ARequestHandler
Parameters:
context - OSGi service component context.

deactivate

protected void deactivate(ComponentContext context)
clean up JobManager on service shutdown.

Parameters:
context - OSGi service context.

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 method
requestUri - 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 InvalidConfigException to the exception handling of JsonRequestHandler.getErrorStatus(String, String, Throwable).

Overrides:
getErrorStatus in class JsonRequestHandler
Parameters:
method - HTTP method
requestUri - request URI
ex - an exception
Returns:
error status code.
See Also:
JsonHttpUtils#getErrorStatus(String, String, Throwable)

getSuccessStatus

protected int getSuccessStatus(java.lang.String method,
                               java.lang.String requestUri)
result status for POST requests should be CREATED.

Overrides:
getSuccessStatus in class JsonRequestHandler
Parameters:
method - HTTP method
requestUri - request URI
Returns:
the status code to return for successful requests using the method and request URI. By default it is "OK" (200).

isValidMethod

protected boolean isValidMethod(java.lang.String method,
                                java.lang.String requestUri)
Checks if the handler allows the HTTP method. GET and POST are currently the only valid method.

Overrides:
isValidMethod in class JsonRequestHandler
Parameters:
method - HTTP method
requestUri - request URI
Returns:
true if the method can be used for the URI, else false.

setJobManager

public void setJobManager(JobManager jobManager)
Sets the reference to the JobManager service.

Parameters:
jobManager - the reference to the JobManager service.

unsetJobManager

public void unsetJobManager(JobManager jobManager)
Resets the reference to the JobManager service to null if the given jobManager instance is set.

Parameters:
jobManager - the reference to the current JobManager service.

SMILA (incubation) API documentation