com.noelios.restlet.ext.servlet
Class ServletCall

java.lang.Object
  extended by com.noelios.restlet.http.HttpCall
      extended by com.noelios.restlet.http.HttpServerCall
          extended by com.noelios.restlet.ext.servlet.ServletCall

public class ServletCall
extends HttpServerCall

Call that is used by the Servlet HTTP server connector.

Author:
Jerome Louvel

Constructor Summary
ServletCall(Server server, HttpServletRequest request, HttpServletResponse response)
          Constructor.
ServletCall(java.lang.String serverAddress, int serverPort, HttpServletRequest request, HttpServletResponse response)
          Constructor.
 
Method Summary
 java.lang.String getClientAddress()
           
 int getClientPort()
           
 java.lang.String getHostDomain()
          Returns the server domain name.
 java.lang.String getMethod()
          Returns the request method.
 Protocol getProtocol()
          Returns the server protocol.
 HttpServletRequest getRequest()
          Returns the HTTP Servlet request.
static HttpServletRequest getRequest(Request request)
          Returns the Servlet request that was used to generate the given Restlet request.
 java.nio.channels.ReadableByteChannel getRequestEntityChannel(long size)
           
 java.io.InputStream getRequestEntityStream(long size)
           
 java.nio.channels.ReadableByteChannel getRequestHeadChannel()
           
 Series<Parameter> getRequestHeaders()
          Returns the list of request headers.
 java.io.InputStream getRequestHeadStream()
           
 java.lang.String getRequestUri()
          Returns the full request URI.
 HttpServletResponse getResponse()
          Returns the HTTP Servlet response.
 java.nio.channels.WritableByteChannel getResponseEntityChannel()
          Returns the response channel if it exists, null otherwise.
 java.io.OutputStream getResponseEntityStream()
          Returns the response stream if it exists, null otherwise.
 java.lang.String getServerAddress()
          Returns the response address.
Corresponds to the IP address of the responding server.
 int getServerPort()
          Returns the server port.
 java.lang.String getSslCipherSuite()
           
 java.util.List<java.security.cert.Certificate> getSslClientCertificates()
           
 java.lang.Integer getSslKeySize()
           
 java.lang.String getVersion()
           
 boolean isConfidential()
          Indicates if the request was made using a confidential mean.
 void sendResponse(Response response)
          Sends the response back to the client.
 
Methods inherited from class com.noelios.restlet.http.HttpServerCall
complete, formatContentDisposition, getContentLength, getHostPort, getRequestEntity, isClientKeepAlive, isServerKeepAlive, readRequestHead, shouldResponseBeChunked, writeResponseBody, writeResponseHead, writeResponseHead
 
Methods inherited from class com.noelios.restlet.http.HttpCall
formatDate, getConnectorService, getContentLength, getLogger, getReasonPhrase, getResponseHeaders, getStatusCode, isConnectionBroken, isKeepAlive, isRequestChunked, isResponseChunked, parseDate, setClientAddress, setClientPort, setConfidential, setHostDomain, setHostPort, setMethod, setProtocol, setReasonPhrase, setRequestUri, setServerAddress, setServerPort, setStatusCode, setVersion
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServletCall

public ServletCall(java.lang.String serverAddress,
                   int serverPort,
                   HttpServletRequest request,
                   HttpServletResponse response)
Constructor.

Parameters:
serverAddress - The server IP address.
serverPort - The server port.
request - The Servlet request
response - The Servlet response.

ServletCall

public ServletCall(Server server,
                   HttpServletRequest request,
                   HttpServletResponse response)
Constructor.

Parameters:
server - The parent server.
request - The HTTP Servlet request to wrap.
response - The HTTP Servlet response to wrap.
Method Detail

getRequest

public static HttpServletRequest getRequest(Request request)
Returns the Servlet request that was used to generate the given Restlet request.

Parameters:
request - The Restlet request.
Returns:
The Servlet request or null.

getClientAddress

public java.lang.String getClientAddress()
Overrides:
getClientAddress in class HttpCall

getClientPort

public int getClientPort()
Overrides:
getClientPort in class HttpCall

getHostDomain

public java.lang.String getHostDomain()
Returns the server domain name.

Overrides:
getHostDomain in class HttpServerCall
Returns:
The server domain name.

getMethod

public java.lang.String getMethod()
Returns the request method.

Overrides:
getMethod in class HttpCall
Returns:
The request method.

getProtocol

public Protocol getProtocol()
Returns the server protocol.

Overrides:
getProtocol in class HttpCall
Returns:
The server protocol.

getRequest

public HttpServletRequest getRequest()
Returns the HTTP Servlet request.

Returns:
The HTTP Servlet request.

getRequestEntityChannel

public java.nio.channels.ReadableByteChannel getRequestEntityChannel(long size)
Specified by:
getRequestEntityChannel in class HttpServerCall

getRequestEntityStream

public java.io.InputStream getRequestEntityStream(long size)
Specified by:
getRequestEntityStream in class HttpServerCall

getRequestHeadChannel

public java.nio.channels.ReadableByteChannel getRequestHeadChannel()
Specified by:
getRequestHeadChannel in class HttpServerCall

getRequestHeaders

public Series<Parameter> getRequestHeaders()
Returns the list of request headers.

Overrides:
getRequestHeaders in class HttpCall
Returns:
The list of request headers.

getRequestHeadStream

public java.io.InputStream getRequestHeadStream()
Specified by:
getRequestHeadStream in class HttpServerCall

getRequestUri

public java.lang.String getRequestUri()
Returns the full request URI.

Overrides:
getRequestUri in class HttpCall
Returns:
The full request URI.

getResponse

public HttpServletResponse getResponse()
Returns the HTTP Servlet response.

Returns:
The HTTP Servlet response.

getResponseEntityChannel

public java.nio.channels.WritableByteChannel getResponseEntityChannel()
Returns the response channel if it exists, null otherwise.

Specified by:
getResponseEntityChannel in class HttpServerCall
Returns:
The response channel if it exists, null otherwise.

getResponseEntityStream

public java.io.OutputStream getResponseEntityStream()
Returns the response stream if it exists, null otherwise.

Specified by:
getResponseEntityStream in class HttpServerCall
Returns:
The response stream if it exists, null otherwise.

getServerAddress

public java.lang.String getServerAddress()
Returns the response address.
Corresponds to the IP address of the responding server.

Overrides:
getServerAddress in class HttpCall
Returns:
The response address.

getServerPort

public int getServerPort()
Returns the server port.

Overrides:
getServerPort in class HttpCall
Returns:
The server port.

getSslCipherSuite

public java.lang.String getSslCipherSuite()
Overrides:
getSslCipherSuite in class HttpServerCall

getSslClientCertificates

public java.util.List<java.security.cert.Certificate> getSslClientCertificates()
Overrides:
getSslClientCertificates in class HttpServerCall

getSslKeySize

public java.lang.Integer getSslKeySize()
Overrides:
getSslKeySize in class HttpServerCall

getVersion

public java.lang.String getVersion()
Overrides:
getVersion in class HttpCall

isConfidential

public boolean isConfidential()
Indicates if the request was made using a confidential mean.

Overrides:
isConfidential in class HttpCall
Returns:
True if the request was made using a confidential mean.

sendResponse

public void sendResponse(Response response)
                  throws java.io.IOException
Sends the response back to the client. Commits the status, headers and optional entity and send them on the network.

Overrides:
sendResponse in class HttpServerCall
Parameters:
response - The high-level response.
Throws:
java.io.IOException


Copyright © 2005-2008 Noelios Technologies.