HttpConnectionParams (HttpClient Library (Version 3.1))
Date: 2019-09-02

org.apache.commons.httpclient.params

## Class HttpConnectionParams

- java.lang.Object
- - org.apache.commons.httpclient.params.DefaultHttpParams
  - - org.apache.commons.httpclient.params.HttpConnectionParams

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, HttpParams
  Direct Known Subclasses:
    HttpConnectionManagerParams

      public class HttpConnectionParams
      extends DefaultHttpParams

  This class represents a collection of HTTP protocol parameters applicable to `HTTP connections`. Protocol parameters may be linked together to form a hierarchy. If a particular parameter value has not been explicitly defined in the collection itself, its value will be drawn from the parent collection of parameters.
  Since:
    3.0
  Version:
    $Revision: 480424 $
  Author:
    Oleg Kalnichevski
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `CONNECTION_TIMEOUT` Determines the timeout until a connection is etablished.
    `static java.lang.String` | `SO_LINGER` Sets SO_LINGER with the specified linger time in seconds.
    `static java.lang.String` | `SO_RCVBUF` Determines a hint the size of the underlying buffers used by the platform for incoming network I/O.
    `static java.lang.String` | `SO_SNDBUF` Determines a hint the size of the underlying buffers used by the platform for outgoing network I/O.
    `static java.lang.String` | `SO_TIMEOUT` Defines the default socket timeout (`SO_TIMEOUT`) in milliseconds which is the timeout for waiting for data.
    `static java.lang.String` | `STALE_CONNECTION_CHECK` Determines whether stale connection check is to be used.
    `static java.lang.String` | `TCP_NODELAY` Determines whether Nagle's algorithm is to be used.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `HttpConnectionParams()` Creates a new collection of parameters with the collection returned by `DefaultHttpParams.getDefaultParams()` as a parent.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getConnectionTimeout()` Returns the timeout until a connection is etablished.
    `int` | `getLinger()` Returns linger-on-close timeout.
    `int` | `getReceiveBufferSize()` Returns a hint the size of the underlying buffers used by the platform for incoming network I/O.
    `int` | `getSendBufferSize()` Returns a hint the size of the underlying buffers used by the platform for outgoing network I/O.
    `int` | `getSoTimeout()` Returns the default socket timeout (`SO_TIMEOUT`) in milliseconds which is the timeout for waiting for data.
    `boolean` | `getTcpNoDelay()` Tests if Nagle's algorithm is to be used.
    `boolean` | `isStaleCheckingEnabled()` Tests whether stale connection check is to be used.
    `void` | `setConnectionTimeout(int timeout)` Sets the timeout until a connection is etablished.
    `void` | `setLinger(int value)` Returns linger-on-close timeout.
    `void` | `setReceiveBufferSize(int size)` Sets a hint the size of the underlying buffers used by the platform for incoming network I/O.
    `void` | `setSendBufferSize(int size)` Sets a hint the size of the underlying buffers used by the platform for outgoing network I/O.
    `void` | `setSoTimeout(int timeout)` Sets the default socket timeout (`SO_TIMEOUT`) in milliseconds which is the timeout for waiting for data.
    `void` | `setStaleCheckingEnabled(boolean value)` Defines whether stale connection check is to be used.
    `void` | `setTcpNoDelay(boolean value)` Determines whether Nagle's algorithm is to be used.

    - ### Methods inherited from class org.apache.commons.httpclient.params.DefaultHttpParams

      `clear, clone, getBooleanParameter, getDefaultParams, getDefaults, getDoubleParameter, getIntParameter, getLongParameter, getParameter, isParameterFalse, isParameterSet, isParameterSetLocally, isParameterTrue, setBooleanParameter, setDefaults, setDoubleParameter, setHttpParamsFactory, setIntParameter, setLongParameter, setParameter, setParameters`

    - ### Methods inherited from class java.lang.Object

      `equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### SO_TIMEOUT

          public static final java.lang.String SO_TIMEOUT

      Defines the default socket timeout (`SO_TIMEOUT`) in milliseconds which is the timeout for waiting for data. A timeout value of zero is interpreted as an infinite timeout. This value is used when no socket timeout is set in the `HTTP method parameters`.

      This parameter expects a value of type `Integer`.

      See Also:
        `SocketOptions.SO_TIMEOUT`, Constant Field Values

    - #### TCP_NODELAY

          public static final java.lang.String TCP_NODELAY

      Determines whether Nagle's algorithm is to be used. The Nagle's algorithm tries to conserve bandwidth by minimizing the number of segments that are sent. When applications wish to decrease network latency and increase performance, they can disable Nagle's algorithm (that is enable TCP_NODELAY). Data will be sent earlier, at the cost of an increase in bandwidth consumption.

      This parameter expects a value of type `Boolean`.

      See Also:
        `SocketOptions.TCP_NODELAY`, Constant Field Values

    - #### SO_SNDBUF

          public static final java.lang.String SO_SNDBUF

      Determines a hint the size of the underlying buffers used by the platform for outgoing network I/O. This value is a suggestion to the kernel from the application about the size of buffers to use for the data to be sent over the socket.

      This parameter expects a value of type `Integer`.

      See Also:
        `SocketOptions.SO_SNDBUF`, Constant Field Values

    - #### SO_RCVBUF

          public static final java.lang.String SO_RCVBUF

      Determines a hint the size of the underlying buffers used by the platform for incoming network I/O. This value is a suggestion to the kernel from the application about the size of buffers to use for the data to be received over the socket.

      This parameter expects a value of type `Integer`.

      See Also:
        `SocketOptions.SO_RCVBUF`, Constant Field Values

    - #### SO_LINGER

          public static final java.lang.String SO_LINGER

      Sets SO_LINGER with the specified linger time in seconds. The maximum timeout value is platform specific. Value `0` implies that the option is disabled. Value `-1` implies that the JRE default is used. The setting only affects socket close.

      This parameter expects a value of type `Integer`.

      See Also:
        `SocketOptions.SO_LINGER`, Constant Field Values

    - #### CONNECTION_TIMEOUT

          public static final java.lang.String CONNECTION_TIMEOUT

      Determines the timeout until a connection is etablished. A value of zero means the timeout is not used. The default value is zero.

      This parameter expects a value of type `Integer`.

      See Also:
        Constant Field Values

    - #### STALE_CONNECTION_CHECK

          public static final java.lang.String STALE_CONNECTION_CHECK

      Determines whether stale connection check is to be used. Disabling stale connection check may result in slight performance improvement at the risk of getting an I/O error when executing a request over a connection that has been closed at the server side.

      This parameter expects a value of type `Boolean`.

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### HttpConnectionParams

          public HttpConnectionParams()

      Creates a new collection of parameters with the collection returned by `DefaultHttpParams.getDefaultParams()` as a parent. The collection will defer to its parent for a default value if a particular parameter is not explicitly set in the collection itself.
      See Also:
        `DefaultHttpParams.getDefaultParams()`

  - ### Method Detail

    - #### getSoTimeout

          public int getSoTimeout()

      Returns the default socket timeout (`SO_TIMEOUT`) in milliseconds which is the timeout for waiting for data. A timeout value of zero is interpreted as an infinite timeout. This value is used when no socket timeout is set in the `HTTP method parameters`.
      Returns:
        timeout in milliseconds

    - #### setSoTimeout

          public void setSoTimeout(int timeout)

      Sets the default socket timeout (`SO_TIMEOUT`) in milliseconds which is the timeout for waiting for data. A timeout value of zero is interpreted as an infinite timeout. This value is used when no socket timeout is set in the `HTTP method parameters`.
      Parameters:
        `timeout` - Timeout in milliseconds

    - #### setTcpNoDelay

          public void setTcpNoDelay(boolean value)

      Determines whether Nagle's algorithm is to be used. The Nagle's algorithm tries to conserve bandwidth by minimizing the number of segments that are sent. When applications wish to decrease network latency and increase performance, they can disable Nagle's algorithm (that is enable TCP_NODELAY). Data will be sent earlier, at the cost of an increase in bandwidth consumption.
      Parameters:
        `value` - `true` if the Nagle's algorithm is to NOT be used (that is enable TCP_NODELAY), `false` otherwise.

    - #### getTcpNoDelay

          public boolean getTcpNoDelay()

      Tests if Nagle's algorithm is to be used.
      Returns:
        `true` if the Nagle's algorithm is to NOT be used (that is enable TCP_NODELAY), `false` otherwise.

    - #### getSendBufferSize

          public int getSendBufferSize()

      Returns a hint the size of the underlying buffers used by the platform for outgoing network I/O. This value is a suggestion to the kernel from the application about the size of buffers to use for the data to be sent over the socket.
      Returns:
        the hint size of the send buffer

    - #### setSendBufferSize

          public void setSendBufferSize(int size)

      Sets a hint the size of the underlying buffers used by the platform for outgoing network I/O. This value is a suggestion to the kernel from the application about the size of buffers to use for the data to be sent over the socket.
      Parameters:
        `size` - the hint size of the send buffer

    - #### getReceiveBufferSize

          public int getReceiveBufferSize()

      Returns a hint the size of the underlying buffers used by the platform for incoming network I/O. This value is a suggestion to the kernel from the application about the size of buffers to use for the data to be received over the socket.
      Returns:
        the hint size of the send buffer

    - #### setReceiveBufferSize

          public void setReceiveBufferSize(int size)

      Sets a hint the size of the underlying buffers used by the platform for incoming network I/O. This value is a suggestion to the kernel from the application about the size of buffers to use for the data to be received over the socket.
      Parameters:
        `size` - the hint size of the send buffer

    - #### getLinger

          public int getLinger()

      Returns linger-on-close timeout. Value `0` implies that the option is disabled. Value `-1` implies that the JRE default is used.
      Returns:
        the linger-on-close timeout

    - #### setLinger

          public void setLinger(int value)

      Returns linger-on-close timeout. This option disables/enables immediate return from a close() of a TCP Socket. Enabling this option with a non-zero Integer timeout means that a close() will block pending the transmission and acknowledgement of all data written to the peer, at which point the socket is closed gracefully. Value `0` implies that the option is disabled. Value `-1` implies that the JRE default is used.
      Parameters:
        `value` - the linger-on-close timeout

    - #### getConnectionTimeout

          public int getConnectionTimeout()

      Returns the timeout until a connection is etablished. A value of zero means the timeout is not used. The default value is zero.
      Returns:
        timeout in milliseconds.

    - #### setConnectionTimeout

          public void setConnectionTimeout(int timeout)

      Sets the timeout until a connection is etablished. A value of zero means the timeout is not used. The default value is zero.
      Parameters:
        `timeout` - Timeout in milliseconds.

    - #### isStaleCheckingEnabled

          public boolean isStaleCheckingEnabled()

      Tests whether stale connection check is to be used. Disabling stale connection check may result in slight performance improvement at the risk of getting an I/O error when executing a request over a connection that has been closed at the server side.
      Returns:
        `true` if stale connection check is to be used, `false` otherwise.

    - #### setStaleCheckingEnabled

          public void setStaleCheckingEnabled(boolean value)

      Defines whether stale connection check is to be used. Disabling stale connection check may result in slight performance improvement at the risk of getting an I/O error when executing a request over a connection that has been closed at the server side.
      Parameters:
        `value` - `true` if stale connection check is to be used, `false` otherwise.

Copyright (c) 1999-2005 - Apache Software Foundation