public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.ResponseHandler
Modifier and Type | Field and Description |
---|---|
private java.nio.ByteBuffer |
buffer |
private HttpParser |
parser |
private boolean |
shutdown |
LOG
Constructor and Description |
---|
HttpReceiverOverHTTP(HttpChannelOverHTTP channel) |
Modifier and Type | Method and Description |
---|---|
private void |
acquireBuffer() |
void |
badMessage(BadMessageException failure)
Called to signal that a bad HTTP message has been received.
|
boolean |
content(java.nio.ByteBuffer buffer) |
boolean |
contentComplete() |
protected void |
dispose()
Disposes this
HttpReceiver state. |
void |
earlyEOF()
Called to signal that an EOF was received unexpectedly
during the parsing of a HTTP message
|
private void |
failAndClose(java.lang.Throwable failure) |
protected void |
fillInterested() |
int |
getHeaderCacheSize() |
HttpChannelOverHTTP |
getHttpChannel() |
private HttpConnectionOverHTTP |
getHttpConnection() |
protected java.nio.ByteBuffer |
getResponseBuffer() |
boolean |
headerComplete() |
protected boolean |
isShutdown() |
boolean |
messageComplete() |
protected java.nio.ByteBuffer |
onUpgradeFrom() |
private boolean |
parse()
Parses a HTTP response in the receivers buffer.
|
void |
parsedHeader(HttpField field)
This is the method called by parser when a HTTP Header name and value is found
|
void |
parsedTrailer(HttpField trailer)
This is the method called by parser when a HTTP Trailer name and value is found
|
private void |
process() |
void |
receive() |
private void |
releaseBuffer() |
protected void |
reset()
Resets this
HttpReceiver state. |
private void |
shutdown() |
boolean |
startResponse(HttpVersion version,
int status,
java.lang.String reason)
This is the method called by parser when the HTTP request line is parsed
|
java.lang.String |
toString() |
abort, getHttpDestination, getHttpExchange, isFailed, responseBegin, responseContent, responseFailure, responseHeader, responseHeaders, responseSuccess, storeCookie
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
badMessage
private final HttpParser parser
private java.nio.ByteBuffer buffer
private boolean shutdown
public HttpReceiverOverHTTP(HttpChannelOverHTTP channel)
public HttpChannelOverHTTP getHttpChannel()
getHttpChannel
in class HttpReceiver
private HttpConnectionOverHTTP getHttpConnection()
protected java.nio.ByteBuffer getResponseBuffer()
public void receive()
private void acquireBuffer()
private void releaseBuffer()
protected java.nio.ByteBuffer onUpgradeFrom()
private void process()
private boolean parse()
protected void fillInterested()
private void shutdown()
protected boolean isShutdown()
public int getHeaderCacheSize()
getHeaderCacheSize
in interface HttpParser.HttpHandler
public boolean startResponse(HttpVersion version, int status, java.lang.String reason)
HttpParser.ResponseHandler
startResponse
in interface HttpParser.ResponseHandler
version
- the http version in usestatus
- the response statusreason
- the response reason phrasepublic void parsedHeader(HttpField field)
HttpParser.HttpHandler
parsedHeader
in interface HttpParser.HttpHandler
field
- The field parsedpublic boolean headerComplete()
headerComplete
in interface HttpParser.HttpHandler
public boolean content(java.nio.ByteBuffer buffer)
content
in interface HttpParser.HttpHandler
public boolean contentComplete()
contentComplete
in interface HttpParser.HttpHandler
public void parsedTrailer(HttpField trailer)
HttpParser.HttpHandler
parsedTrailer
in interface HttpParser.HttpHandler
trailer
- The field parsedpublic boolean messageComplete()
messageComplete
in interface HttpParser.HttpHandler
public void earlyEOF()
HttpParser.HttpHandler
earlyEOF
in interface HttpParser.HttpHandler
public void badMessage(BadMessageException failure)
HttpParser.HttpHandler
badMessage
in interface HttpParser.HttpHandler
failure
- the failure with the bad message informationprotected void reset()
HttpReceiver
HttpReceiver
state.
Subclasses should override (but remember to call super
) to reset their own state.
Either this method or HttpReceiver.dispose()
is called.
reset
in class HttpReceiver
protected void dispose()
HttpReceiver
HttpReceiver
state.
Subclasses should override (but remember to call super
) to dispose their own state.
Either this method or HttpReceiver.reset()
is called.
dispose
in class HttpReceiver
private void failAndClose(java.lang.Throwable failure)
public java.lang.String toString()
toString
in class HttpReceiver