org.restlet.engine.adapter
Class Call

java.lang.Object
  extended by org.restlet.engine.adapter.Call
Direct Known Subclasses:
ClientCall, ServerCall

public abstract class Call
extends Object

Low-level call for the HTTP connectors.

Author:
Jerome Louvel

Constructor Summary
Call()
          Constructor.
 
Method Summary
 String getClientAddress()
          Returns the client address.
Corresponds to the IP address of the requesting client.
 int getClientPort()
          Returns the client port.
Corresponds to the TCP/IP port of the requesting client.
 String getHostDomain()
          Returns the host domain.
 int getHostPort()
          Returns the host port.
 Logger getLogger()
          Returns the logger.
 String getMethod()
          Returns the request method.
 Protocol getProtocol()
          Returns the exact protocol (HTTP or HTTPS).
 String getReasonPhrase()
          Returns the reason phrase.
protected  Representation getRepresentation(InputStream stream)
          Returns the representation wrapping the given stream.
protected  Representation getRepresentation(ReadableByteChannel channel)
          Returns the representation wrapping the given channel.
 Series<Header> getRequestHeaders()
          Returns the modifiable list of request headers.
 String getRequestUri()
          Returns the URI on the request line (most like a relative reference, but not necessarily).
 Series<Header> getResponseHeaders()
          Returns the modifiable list of server headers.
 String getServerAddress()
          Returns the response address.
Corresponds to the IP address of the responding server.
 int getServerPort()
          Returns the server port.
 int getStatusCode()
          Returns the status code.
 Principal getUserPrincipal()
          Returns the user principal.
 String getVersion()
          Returns the protocol version used.
static boolean isBroken(Throwable exception)
          Returns true if the given exception is caused by a broken connection.
protected abstract  boolean isClientKeepAlive()
          Indicates if the client wants a persistent connection.
 boolean isConfidential()
          Indicates if the confidentiality of the call is ensured (ex: via SSL).
 boolean isConnectionBroken(Throwable exception)
          Returns true if the given exception is caused by a broken connection.
protected  boolean isKeepAlive()
          Indicates if both the client and the server want a persistent connection.
protected  boolean isRequestChunked()
          Indicates if the request entity is chunked.
protected  boolean isResponseChunked()
          Indicates if the response entity is chunked.
protected abstract  boolean isServerKeepAlive()
          Indicates if the server wants a persistent connection.
protected  void setClientAddress(String clientAddress)
          Sets the client address.
protected  void setClientPort(int clientPort)
          Sets the client port.
protected  void setConfidential(boolean confidential)
          Indicates if the confidentiality of the call is ensured (ex: via SSL).
 void setHostDomain(String hostDomain)
          Sets the host domain name.
 void setHostPort(int hostPort)
          Sets the host port.
protected  void setMethod(String method)
          Sets the request method.
 void setProtocol(Protocol protocol)
          Sets the exact protocol used (HTTP or HTTPS).
 void setReasonPhrase(String reasonPhrase)
          Sets the reason phrase.
protected  void setRequestUri(String requestUri)
          Sets the full request URI.
 void setServerAddress(String responseAddress)
          Sets the response address.
Corresponds to the IP address of the responding server.
 void setServerPort(int serverPort)
          Sets the server port.
 void setStatusCode(int code)
          Sets the status code.
 void setUserPrincipal(Principal principal)
          Sets the user principal.
 void setVersion(String version)
          Sets the protocol version used.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Call

public Call()
Constructor.

Method Detail

isBroken

public static boolean isBroken(Throwable exception)
Returns true if the given exception is caused by a broken connection.

Parameters:
exception - The exception to inspect.
Returns:
True if the given exception is caused by a broken connection.

getClientAddress

public String getClientAddress()
Returns the client address.
Corresponds to the IP address of the requesting client.

Returns:
The client address.

getClientPort

public int getClientPort()
Returns the client port.
Corresponds to the TCP/IP port of the requesting client.

Returns:
The client port.

getHostDomain

public String getHostDomain()
Returns the host domain.

Returns:
The host domain.

getHostPort

public int getHostPort()
Returns the host port.

Returns:
The host port.

getLogger

public Logger getLogger()
Returns the logger.

Returns:
The logger.

getMethod

public String getMethod()
Returns the request method.

Returns:
The request method.

getProtocol

public Protocol getProtocol()
Returns the exact protocol (HTTP or HTTPS).

Returns:
The exact protocol (HTTP or HTTPS).

getReasonPhrase

public String getReasonPhrase()
Returns the reason phrase.

Returns:
The reason phrase.

getRepresentation

protected Representation getRepresentation(InputStream stream)
Returns the representation wrapping the given stream.

Parameters:
stream - The response input stream.
Returns:
The wrapping representation.

getRepresentation

protected Representation getRepresentation(ReadableByteChannel channel)
Returns the representation wrapping the given channel.

Parameters:
channel - The response channel.
Returns:
The wrapping representation.

getRequestHeaders

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

Returns:
The modifiable list of request headers.

getRequestUri

public String getRequestUri()
Returns the URI on the request line (most like a relative reference, but not necessarily).

Returns:
The URI on the request line.

getResponseHeaders

public Series<Header> getResponseHeaders()
Returns the modifiable list of server headers.

Returns:
The modifiable list of server headers.

getServerAddress

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

Returns:
The response address.

getServerPort

public int getServerPort()
Returns the server port.

Returns:
The server port.

getStatusCode

public int getStatusCode()
                  throws IOException
Returns the status code.

Returns:
The status code.
Throws:
IOException

getUserPrincipal

public Principal getUserPrincipal()
Returns the user principal.

Returns:
The user principal.

getVersion

public String getVersion()
Returns the protocol version used.

Returns:
The protocol version used.

isClientKeepAlive

protected abstract boolean isClientKeepAlive()
Indicates if the client wants a persistent connection.

Returns:
True if the client wants a persistent connection.

isConfidential

public boolean isConfidential()
Indicates if the confidentiality of the call is ensured (ex: via SSL).

Returns:
True if the confidentiality of the call is ensured (ex: via SSL).

isConnectionBroken

public boolean isConnectionBroken(Throwable exception)
Returns true if the given exception is caused by a broken connection.

Parameters:
exception - The exception to inspect.
Returns:
True if the given exception is caused by a broken connection.

isKeepAlive

protected boolean isKeepAlive()
Indicates if both the client and the server want a persistent connection.

Returns:
True if the connection should be kept alive after the call processing.

isRequestChunked

protected boolean isRequestChunked()
Indicates if the request entity is chunked.

Returns:
True if the request entity is chunked.

isResponseChunked

protected boolean isResponseChunked()
Indicates if the response entity is chunked.

Returns:
True if the response entity is chunked.

isServerKeepAlive

protected abstract boolean isServerKeepAlive()
Indicates if the server wants a persistent connection.

Returns:
True if the server wants a persistent connection.

setClientAddress

protected void setClientAddress(String clientAddress)
Sets the client address.

Parameters:
clientAddress - The client address.

setClientPort

protected void setClientPort(int clientPort)
Sets the client port.

Parameters:
clientPort - The client port.

setConfidential

protected void setConfidential(boolean confidential)
Indicates if the confidentiality of the call is ensured (ex: via SSL).

Parameters:
confidential - True if the confidentiality of the call is ensured (ex: via SSL).

setHostDomain

public void setHostDomain(String hostDomain)
Sets the host domain name.

Parameters:
hostDomain - The baseRef domain name.

setHostPort

public void setHostPort(int hostPort)
Sets the host port.

Parameters:
hostPort - The host port.

setMethod

protected void setMethod(String method)
Sets the request method.

Parameters:
method - The request method.

setProtocol

public void setProtocol(Protocol protocol)
Sets the exact protocol used (HTTP or HTTPS).

Parameters:
protocol - The protocol.

setReasonPhrase

public void setReasonPhrase(String reasonPhrase)
Sets the reason phrase.

Parameters:
reasonPhrase - The reason phrase.

setRequestUri

protected void setRequestUri(String requestUri)
Sets the full request URI.

Parameters:
requestUri - The full request URI.

setServerAddress

public void setServerAddress(String responseAddress)
Sets the response address.
Corresponds to the IP address of the responding server.

Parameters:
responseAddress - The response address.

setServerPort

public void setServerPort(int serverPort)
Sets the server port.

Parameters:
serverPort - The server port.

setStatusCode

public void setStatusCode(int code)
Sets the status code.

Parameters:
code - The status code.

setUserPrincipal

public void setUserPrincipal(Principal principal)
Sets the user principal.

Parameters:
principal - The user principal.

setVersion

public void setVersion(String version)
Sets the protocol version used.

Parameters:
version - The protocol version used.


Copyright © 2005-2013 Restlet.