org.eclipse.jetty.server
Class HttpConnection
java.lang.Object
org.eclipse.jetty.server.HttpConnection
- All Implemented Interfaces:
- Connection
- Direct Known Subclasses:
- Ajp13Connection
public class HttpConnection
- extends Object
- implements Connection
A HttpConnection represents the connection of a HTTP client to the server
and is created by an instance of a Connector
. It's prime function is
to associate Request
and Response
instances with a EndPoint
.
A connection is also the prime mechanism used by jetty to recycle objects without
pooling. The Request
, Response
, HttpParser
, HttpGenerator
and HttpFields
instances are all recycled for the duraction of
a connection. Where appropriate, allocated buffers are also kept associated
with the connection via the parser and/or generator.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_connector
protected final Connector _connector
_endp
protected final EndPoint _endp
_server
protected final Server _server
_uri
protected final HttpURI _uri
_parser
protected final Parser _parser
_requestFields
protected final HttpFields _requestFields
_request
protected final Request _request
_in
protected ServletInputStream _in
_generator
protected final Generator _generator
_responseFields
protected final HttpFields _responseFields
_response
protected final Response _response
_out
protected HttpConnection.Output _out
_writer
protected HttpConnection.OutputWriter _writer
_printWriter
protected PrintWriter _printWriter
HttpConnection
public HttpConnection(Connector connector,
EndPoint endpoint,
Server server)
- Constructor
HttpConnection
protected HttpConnection(Connector connector,
EndPoint endpoint,
Server server,
Parser parser,
Generator generator,
Request request)
getCurrentConnection
public static HttpConnection getCurrentConnection()
setCurrentConnection
protected static void setCurrentConnection(HttpConnection connection)
getParser
public Parser getParser()
- Returns:
- the parser used by this connection
getRequests
public int getRequests()
- Returns:
- the number of requests handled by this connection
getTimeStamp
public long getTimeStamp()
- Returns:
- The time this connection was established.
getAssociatedObject
public Object getAssociatedObject()
- Returns:
- Returns the associatedObject.
setAssociatedObject
public void setAssociatedObject(Object associatedObject)
- Parameters:
associatedObject
- The associatedObject to set.
getConnector
public Connector getConnector()
- Returns:
- Returns the connector.
getRequestFields
public HttpFields getRequestFields()
- Returns:
- Returns the requestFields.
getResponseFields
public HttpFields getResponseFields()
- Returns:
- Returns the responseFields.
isConfidential
public boolean isConfidential(Request request)
- Returns:
- The result of calling
getConnector()
.isCondidential
(request), or false
if there is no connector.
isIntegral
public boolean isIntegral(Request request)
- Find out if the request is INTEGRAL security.
- Parameters:
request
-
- Returns:
true
if there is a connector
and it considers request
to be integral
getEndPoint
public EndPoint getEndPoint()
- Returns:
- The
EndPoint
for this connection.
getResolveNames
public boolean getResolveNames()
- Returns:
false
(this method is not yet implemented)
getRequest
public Request getRequest()
- Returns:
- Returns the request.
getResponse
public Response getResponse()
- Returns:
- Returns the response.
getInputStream
public ServletInputStream getInputStream()
throws IOException
- Get the inputStream from the connection.
If the associated response has the Expect header set to 100 Continue,
then accessing the input stream indicates that the handler/servlet
is ready for the request body and thus a 100 Continue response is sent.
- Returns:
- The input stream for this connection.
The stream will be created if it does not already exist.
- Throws:
IOException
getOutputStream
public ServletOutputStream getOutputStream()
- Returns:
- The output stream for this connection. The stream will be created if it does not already exist.
getPrintWriter
public PrintWriter getPrintWriter(String encoding)
- Returns:
- A
PrintWriter
wrapping the output stream
. The writer is created if it
does not already exist.
isResponseCommitted
public boolean isResponseCommitted()
handle
public void handle()
throws IOException
- Specified by:
handle
in interface Connection
- Throws:
IOException
scheduleTimeout
public void scheduleTimeout(Timeout.Task task,
long timeoutMs)
cancelTimeout
public void cancelTimeout(Timeout.Task task)
reset
public void reset(boolean returnBuffers)
handleRequest
protected void handleRequest()
throws IOException
- Throws:
IOException
commitResponse
public void commitResponse(boolean last)
throws IOException
- Throws:
IOException
completeResponse
public void completeResponse()
throws IOException
- Throws:
IOException
flushResponse
public void flushResponse()
throws IOException
- Throws:
IOException
getGenerator
public Generator getGenerator()
isIncluding
public boolean isIncluding()
include
public void include()
included
public void included()
isIdle
public boolean isIdle()
- Specified by:
isIdle
in interface Connection
isSuspended
public boolean isSuspended()
- Specified by:
isSuspended
in interface Connection
- See Also:
Connection.isSuspended()
isExpecting100Continues
public boolean isExpecting100Continues()
isExpecting102Processing
public boolean isExpecting102Processing()
Copyright © 1995-2009 Mort Bay Consulting. All Rights Reserved.