Class BHttpConnectionBase

java.lang.Object
org.apache.http.impl.BHttpConnectionBase
All Implemented Interfaces:
Closeable, AutoCloseable, HttpConnection, HttpInetConnection
Direct Known Subclasses:
DefaultBHttpClientConnection, DefaultBHttpServerConnection

public class BHttpConnectionBase extends Object implements HttpConnection, HttpInetConnection
This class serves as a base for all HttpConnection implementations and provides functionality common to both client and server HTTP connections.
Since:
4.0
  • Method Details

    • isOpen

      public boolean isOpen()
      Description copied from interface: HttpConnection
      Checks if this connection is open.
      Specified by:
      isOpen in interface HttpConnection
      Returns:
      true if it is open, false if it is closed.
    • getLocalAddress

      public InetAddress getLocalAddress()
      Specified by:
      getLocalAddress in interface HttpInetConnection
    • getLocalPort

      public int getLocalPort()
      Specified by:
      getLocalPort in interface HttpInetConnection
    • getRemoteAddress

      public InetAddress getRemoteAddress()
      Specified by:
      getRemoteAddress in interface HttpInetConnection
    • getRemotePort

      public int getRemotePort()
      Specified by:
      getRemotePort in interface HttpInetConnection
    • setSocketTimeout

      public void setSocketTimeout(int timeout)
      Description copied from interface: HttpConnection
      Sets the socket timeout value.
      Specified by:
      setSocketTimeout in interface HttpConnection
      Parameters:
      timeout - timeout value in milliseconds
    • getSocketTimeout

      public int getSocketTimeout()
      Description copied from interface: HttpConnection
      Returns the socket timeout value.
      Specified by:
      getSocketTimeout in interface HttpConnection
      Returns:
      positive value in milliseconds if a timeout is set, 0 if timeout is disabled or -1 if timeout is undefined.
    • shutdown

      public void shutdown() throws IOException
      Description copied from interface: HttpConnection
      Force-closes this connection. This is the only method of a connection which may be called from a different thread to terminate the connection. This method will not attempt to flush the transmitter's internal buffer prior to closing the underlying socket.
      Specified by:
      shutdown in interface HttpConnection
      Throws:
      IOException
    • close

      public void close() throws IOException
      Description copied from interface: HttpConnection
      Closes this connection gracefully. This method will attempt to flush the internal output buffer prior to closing the underlying socket. This method MUST NOT be called from a different thread to force shutdown of the connection. Use shutdown instead.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface HttpConnection
      Throws:
      IOException
    • isStale

      public boolean isStale()
      Description copied from interface: HttpConnection
      Checks whether this connection has gone down. Network connections may get closed during some time of inactivity for several reasons. The next time a read is attempted on such a connection it will throw an IOException. This method tries to alleviate this inconvenience by trying to find out if a connection is still usable. Implementations may do that by attempting a read with a very small timeout. Thus this method may block for a small amount of time before returning a result. It is therefore an expensive operation.
      Specified by:
      isStale in interface HttpConnection
      Returns:
      true if attempts to use this connection are likely to succeed, or false if they are likely to fail and this connection should be closed
    • getMetrics

      public HttpConnectionMetrics getMetrics()
      Description copied from interface: HttpConnection
      Returns a collection of connection metrics.
      Specified by:
      getMetrics in interface HttpConnection
      Returns:
      HttpConnectionMetrics
    • toString

      public String toString()
      Overrides:
      toString in class Object