Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.mortbay.jetty
Class HttpConnection

    java.lang.Object
      org.mortbay.jetty.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.

Author:
  gregw

Nested Class Summary
`class` | `HttpConnection.Output`
`class` | `HttpConnection.OutputWriter`

Field Summary
`protected Connector` | `_connector`
`protected EndPoint` | `_endp`
`protected Generator` | `_generator`
`protected ServletInputStream` | `_in`
`protected HttpConnection.Output` | `_out`
`protected Parser` | `_parser`
`protected PrintWriter` | `_printWriter`
`protected Request` | `_request`
`protected HttpFields` | `_requestFields`
`protected Response` | `_response`
`protected HttpFields` | `_responseFields`
`protected Server` | `_server`
`protected HttpURI` | `_uri`
`protected HttpConnection.OutputWriter` | `_writer`

Constructor Summary
`` | `HttpConnection(Connector connector, EndPoint endpoint, Server server)` Constructor
`protected` | `HttpConnection(Connector connector, EndPoint endpoint, Server server, Parser parser, Generator generator, Request request)`

Method Summary
`void` | `commitResponse(boolean last)`
`void` | `completeResponse()`
`void` | `destroy()`
`void` | `flushResponse()`
`Object` | `getAssociatedObject()`
`Connector` | `getConnector()`
`static HttpConnection` | `getCurrentConnection()`
`EndPoint` | `getEndPoint()`
`Generator` | `getGenerator()`
`ServletInputStream` | `getInputStream()`
`ServletOutputStream` | `getOutputStream()`
`Parser` | `getParser()`
`PrintWriter` | `getPrintWriter(String encoding)`
`Request` | `getRequest()`
`HttpFields` | `getRequestFields()`
`int` | `getRequests()`
`boolean` | `getResolveNames()`
`Response` | `getResponse()`
`HttpFields` | `getResponseFields()`
`long` | `getTimeStamp()`
`void` | `handle()`
`protected void` | `handleRequest()`
`void` | `include()`
`void` | `included()`
`boolean` | `isConfidential(Request request)`
`boolean` | `isIdle()`
`boolean` | `isIncluding()`
`boolean` | `isIntegral(Request request)` Find out if the request is INTEGRAL security.
`boolean` | `isResponseCommitted()`
`void` | `reset(boolean returnBuffers)`
`void` | `setAssociatedObject(Object associatedObject)`
`protected static void` | `setCurrentConnection(HttpConnection connection)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### _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

Constructor Detail

### 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)

Method Detail

### getCurrentConnection

    public static HttpConnection getCurrentConnection()

### setCurrentConnection

    protected static void setCurrentConnection(HttpConnection connection)

### destroy

    public void destroy()

### 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()

  Returns:
    The input stream for this connection. The stream will be created if it does not already exist.

### 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`

### 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`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1995-2008 Mort Bay Consulting. All Rights Reserved.