public class HttpConnection extends AbstractConnection implements Runnable, HttpTransport
A Connection
that handles the HTTP protocol.
Modifier and Type | Class and Description |
---|---|
protected class |
HttpConnection.HttpChannelOverHttp |
AbstractConnection.FillingInterestedCallback, AbstractConnection.NestedState, AbstractConnection.State
Connection.Listener
Modifier and Type | Field and Description |
---|---|
static String |
UPGRADE_CONNECTION_ATTRIBUTE |
EXECUTE_ONFILLABLE, FILL_INTERESTED, FILLING, FILLING_FILL_INTERESTED, IDLE, REFILLING
Constructor and Description |
---|
HttpConnection(HttpConfiguration config,
Connector connector,
EndPoint endPoint) |
addListener, close, failedCallback, fillInterested, fillInterested, getBytesIn, getBytesOut, getCreatedTimeStamp, getEndPoint, getExecutor, getInputBufferSize, next, onClose, onReadTimeout, setInputBufferSize, toString
public static final String UPGRADE_CONNECTION_ATTRIBUTE
public HttpConnection(HttpConfiguration config, Connector connector, EndPoint endPoint)
public static HttpConnection getCurrentConnection()
protected static HttpConnection setCurrentConnection(HttpConnection connection)
public HttpConfiguration getHttpConfiguration()
protected HttpGenerator newHttpGenerator()
protected HttpInput<ByteBuffer> newHttpInput()
protected HttpConnection.HttpChannelOverHttp newHttpChannel(HttpInput<ByteBuffer> httpInput)
protected HttpParser newHttpParser()
protected HttpParser.RequestHandler<ByteBuffer> newRequestHandler()
public Server getServer()
public Connector getConnector()
public HttpChannel<?> getHttpChannel()
public HttpParser getParser()
public int getMessagesIn()
getMessagesIn
in interface Connection
getMessagesIn
in class AbstractConnection
public int getMessagesOut()
getMessagesOut
in interface Connection
getMessagesOut
in class AbstractConnection
public ByteBuffer getRequestBuffer()
public void onFillable()
Parses and handles HTTP messages.
This method is called when this Connection
is ready to read bytes from the EndPoint
.
However, it can also be called if there is unconsumed data in the _requestBuffer, as a result of
resuming a suspended request when there is a pipelined request already read into the buffer.
This method fills bytes and parses them until either: EOF is filled; 0 bytes are filled; the HttpChannel finishes handling; or the connection has changed.
onFillable
in class AbstractConnection
AbstractConnection.fillInterested()
protected void onFillInterestedFailed(Throwable cause)
AbstractConnection
Callback method invoked when the endpoint failed to be ready to be read.
onFillInterestedFailed
in class AbstractConnection
cause
- the exception that caused the failurepublic void onOpen()
Connection
Callback method invoked when this Connection
is opened.
Creators of the connection implementation are responsible for calling this method.
onOpen
in interface Connection
onOpen
in class AbstractConnection
public void send(HttpGenerator.ResponseInfo info, ByteBuffer content, boolean lastContent, Callback callback)
send
in interface HttpTransport
public void send(ByteBuffer content, boolean lastContent, Callback callback)
send
in interface HttpTransport
public void completed()
completed
in interface HttpTransport
public void abort()
HttpTransport
abort
in interface HttpTransport
Copyright © 1995-2014 Mort Bay Consulting. All Rights Reserved.