SMILA 1.0 API documentation

org.eclipse.smila.processing.httphandler
Class PipelineProcessHandler

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.processing.httphandler.PipelineProcessHandler
All Implemented Interfaces:
HttpHandler, RequestHandler

public class PipelineProcessHandler
extends JsonRequestHandler

Implements the handling of HTTP requests for WorkflowProcessor.

Author:
drazen

Field Summary
 
Fields inherited from class org.eclipse.smila.http.server.json.JsonRequestHandler
FACTORY, HTTP_UTILS
 
Constructor Summary
PipelineProcessHandler()
           
 
Method Summary
protected  int getErrorStatus(java.lang.String method, java.lang.String requestUri, java.lang.Throwable ex)
          Return a status code for an exception.
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 setBlackboardFactory(BlackboardFactory factory)
          set blackboard factory reference (used by DS).
 void setProcessor(WorkflowProcessor processor)
          set workflow processor reference (used by DS).
 void unsetBlackboardFactory(BlackboardFactory factory)
          remove blackboard factory reference (used by DS).
 void unsetProcessor(WorkflowProcessor processor)
          remove workflow processor reference (used by DS).
 
Methods inherited from class org.eclipse.smila.http.server.json.JsonRequestHandler
getRequestHost, getSuccessStatus, getSuccessStatus, handle, writeErrorResult, writeResultObject, writeSuccessResult
 
Methods inherited from class org.eclipse.smila.http.server.util.ARequestHandler
activate, 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

PipelineProcessHandler

public PipelineProcessHandler()
Method Detail

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.

setProcessor

public void setProcessor(WorkflowProcessor processor)
set workflow processor reference (used by DS).

Parameters:
processor - workflow processor

unsetProcessor

public void unsetProcessor(WorkflowProcessor processor)
remove workflow processor reference (used by DS).

Parameters:
processor - workflow processor

setBlackboardFactory

public void setBlackboardFactory(BlackboardFactory factory)
set blackboard factory reference (used by DS).

Parameters:
factory - blackboard factory

unsetBlackboardFactory

public void unsetBlackboardFactory(BlackboardFactory factory)
remove blackboard factory reference (used by DS).

Parameters:
factory - blackboard factory

isValidMethod

protected boolean isValidMethod(java.lang.String method,
                                java.lang.String requestUri)
Checks if the handler allows the HTTP method. PipelineHandler supports GET and POST.

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.

getErrorStatus

protected int getErrorStatus(java.lang.String method,
                             java.lang.String requestUri,
                             java.lang.Throwable ex)
Return a status code for an exception. empty queries return BAD_REQUEST, not INTERNAL_SERVER_ERROR.

Overrides:
getErrorStatus in class JsonRequestHandler
See Also:
HTTP_UTILS#getErrorStatus(String, String, Throwable)

SMILA 1.0 API documentation