Class HttpReceiverOverHTTP

java.lang.Object
org.eclipse.jetty.client.HttpReceiver
org.eclipse.jetty.client.http.HttpReceiverOverHTTP
All Implemented Interfaces:
HttpParser.HttpHandler, HttpParser.ResponseHandler

public class HttpReceiverOverHTTP extends HttpReceiver implements HttpParser.ResponseHandler
  • Field Details

    • inMessages

      private final LongAdder inMessages
    • parser

      private final HttpParser parser
    • networkBuffer

      private RetainableByteBuffer networkBuffer
    • shutdown

      private boolean shutdown
    • complete

      private boolean complete
    • unsolicited

      private boolean unsolicited
    • status

      private int status
  • Constructor Details

  • Method Details

    • getHttpChannel

      public HttpChannelOverHTTP getHttpChannel()
      Overrides:
      getHttpChannel in class HttpReceiver
    • getHttpConnection

      private HttpConnectionOverHTTP getHttpConnection()
    • getResponseBuffer

      protected ByteBuffer getResponseBuffer()
    • receive

      public void receive()
      Overrides:
      receive in class HttpReceiver
    • acquireNetworkBuffer

      private void acquireNetworkBuffer()
    • reacquireNetworkBuffer

      private void reacquireNetworkBuffer()
    • newNetworkBuffer

      private RetainableByteBuffer newNetworkBuffer()
    • releaseNetworkBuffer

      private void releaseNetworkBuffer()
    • onUpgradeFrom

      protected ByteBuffer onUpgradeFrom()
    • process

      private void process()
    • parse

      private boolean parse()
      Parses an HTTP response in the receivers buffer.
      Returns:
      true to indicate that parsing should be interrupted (and will be resumed by another thread).
    • fillInterested

      protected void fillInterested()
    • shutdown

      private void shutdown()
    • isShutdown

      protected boolean isShutdown()
    • getHeaderCacheSize

      public int getHeaderCacheSize()
      Specified by:
      getHeaderCacheSize in interface HttpParser.HttpHandler
      Returns:
      the size in bytes of the per parser header cache
    • startResponse

      public boolean startResponse(HttpVersion version, int status, String reason)
      Description copied from interface: HttpParser.ResponseHandler
      This is the method called by parser when the HTTP request line is parsed
      Specified by:
      startResponse in interface HttpParser.ResponseHandler
      Parameters:
      version - the http version in use
      status - the response status
      reason - the response reason phrase
      Returns:
      true if handling parsing should return
    • parsedHeader

      public void parsedHeader(HttpField field)
      Description copied from interface: HttpParser.HttpHandler
      This is the method called by parser when an HTTP Header name and value is found
      Specified by:
      parsedHeader in interface HttpParser.HttpHandler
      Parameters:
      field - The field parsed
    • headerComplete

      public boolean headerComplete()
      Specified by:
      headerComplete in interface HttpParser.HttpHandler
    • content

      public boolean content(ByteBuffer buffer)
      Specified by:
      content in interface HttpParser.HttpHandler
    • contentComplete

      public boolean contentComplete()
      Specified by:
      contentComplete in interface HttpParser.HttpHandler
    • parsedTrailer

      public void parsedTrailer(HttpField trailer)
      Description copied from interface: HttpParser.HttpHandler
      This is the method called by parser when an HTTP Trailer name and value is found
      Specified by:
      parsedTrailer in interface HttpParser.HttpHandler
      Parameters:
      trailer - The field parsed
    • messageComplete

      public boolean messageComplete()
      Specified by:
      messageComplete in interface HttpParser.HttpHandler
    • earlyEOF

      public void earlyEOF()
      Description copied from interface: HttpParser.HttpHandler
      Called to signal that an EOF was received unexpectedly during the parsing of an HTTP message
      Specified by:
      earlyEOF in interface HttpParser.HttpHandler
    • badMessage

      public void badMessage(BadMessageException failure)
      Description copied from interface: HttpParser.HttpHandler
      Called to signal that a bad HTTP message has been received.
      Specified by:
      badMessage in interface HttpParser.HttpHandler
      Parameters:
      failure - the failure with the bad message information
    • reset

      protected void reset()
      Description copied from class: HttpReceiver
      Resets the state of this HttpReceiver.

      Subclasses should override (but remember to call super) to reset their own state.

      Either this method or HttpReceiver.dispose() is called.

      Overrides:
      reset in class HttpReceiver
    • failAndClose

      private void failAndClose(Throwable failure)
    • getMessagesIn

      long getMessagesIn()
    • toString

      public String toString()
      Overrides:
      toString in class HttpReceiver