ikrs.httpd
Class DefaultResponseBuilder

java.lang.Object
  extended by ikrs.httpd.AbstractResponseBuilder
      extended by ikrs.httpd.DefaultResponseBuilder
All Implemented Interfaces:
ResponseBuilder

public class DefaultResponseBuilder
extends AbstractResponseBuilder
implements ResponseBuilder


Field Summary
 
Fields inherited from class ikrs.httpd.AbstractResponseBuilder
httpHandler
 
Constructor Summary
DefaultResponseBuilder(HTTPHandler handler)
          The constructor.
 
Method Summary
protected  PreparedHTTPResponse buildPreparedErrorResponse(HTTPHeaders headers, PostDataWrapper postData, java.util.UUID socketID, java.net.Socket socket, java.util.UUID sessionID, java.lang.Exception e, int statusCode, java.lang.String reasonPhrase, java.lang.String errorMessage, java.util.Map<java.lang.String,BasicType> additionalSettings, java.util.Map<java.lang.String,BasicType> optionalReturnSettings)
           
 PreparedHTTPResponse create(HTTPHeaders headers, PostDataWrapper postData, java.util.UUID socketID, java.net.Socket socket, java.util.UUID sessionID, java.util.Map<java.lang.String,BasicType> additionalSettings)
          This method translates the given headers and socket into an executable PreparedResponse object.
protected  ErrorResponseBuilder getErrorResponseBuilder()
          The default response builder uses a nested response builder for error processing.
 
Methods inherited from class ikrs.httpd.AbstractResponseBuilder
getHTTPHandler
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultResponseBuilder

public DefaultResponseBuilder(HTTPHandler handler)
The constructor.

Method Detail

getErrorResponseBuilder

protected ErrorResponseBuilder getErrorResponseBuilder()
The default response builder uses a nested response builder for error processing. In some special cases it can be helpful to access the ErrorResponseBuilder directy (such as the HTTPHandler does if the threaded execution is rejected by the ThreadPoolExecutor). This method simply returns the internal error response builder.

Returns:
The internal error response builder.

create

public PreparedHTTPResponse create(HTTPHeaders headers,
                                   PostDataWrapper postData,
                                   java.util.UUID socketID,
                                   java.net.Socket socket,
                                   java.util.UUID sessionID,
                                   java.util.Map<java.lang.String,BasicType> additionalSettings)
This method translates the given headers and socket into an executable PreparedResponse object. The method does not throw any exceptions as the error reporting is part of HTTP itself.

Specified by:
create in interface ResponseBuilder
Specified by:
create in class AbstractResponseBuilder
Parameters:
headers - The previously processed headers.
postData - The actual sent non-header data (if available; may be null).
socketID - The unique socket ID.
socket - The acutual socket.
additionals - A map containing non-essential builder params. The expected map contents depends on the underlying implementation; some builders even allow null-additionals.
Returns:
A new HTTPRequest built from the HTTP headers.

buildPreparedErrorResponse

protected PreparedHTTPResponse buildPreparedErrorResponse(HTTPHeaders headers,
                                                          PostDataWrapper postData,
                                                          java.util.UUID socketID,
                                                          java.net.Socket socket,
                                                          java.util.UUID sessionID,
                                                          java.lang.Exception e,
                                                          int statusCode,
                                                          java.lang.String reasonPhrase,
                                                          java.lang.String errorMessage,
                                                          java.util.Map<java.lang.String,BasicType> additionalSettings,
                                                          java.util.Map<java.lang.String,BasicType> optionalReturnSettings)