java.lang.Object
edu.internet2.middleware.grouperClientExt.org.apache.commons.httpclient.params.DefaultHttpParams
edu.internet2.middleware.grouperClientExt.org.apache.commons.httpclient.params.HttpMethodParams
All Implemented Interfaces:
HttpParams, Serializable, Cloneable
Direct Known Subclasses:
HttpClientParams

public class HttpMethodParams extends DefaultHttpParams
This class represents a collection of HTTP protocol parameters applicable to HTTP methods. 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: 483949 $
See Also:
  • Field Details

    • USER_AGENT

      public static final String USER_AGENT
      Defines the content of the User-Agent header used by HTTP methods.

      This parameter expects a value of type String.

      See Also:
    • PROTOCOL_VERSION

      public static final String PROTOCOL_VERSION
      Defines the HTTP protocol version used by HTTP methods per default.

      This parameter expects a value of type HttpVersion.

      See Also:
    • UNAMBIGUOUS_STATUS_LINE

      public static final String UNAMBIGUOUS_STATUS_LINE
      Defines whether HTTP methods should reject ambiguous HTTP status line.

      This parameter expects a value of type Boolean.

      See Also:
    • STRICT_TRANSFER_ENCODING

      public static final String STRICT_TRANSFER_ENCODING
      Defines whether responses with an invalid Transfer-Encoding header should be rejected.

      This parameter expects a value of type Boolean.

      See Also:
    • REJECT_HEAD_BODY

      public static final String REJECT_HEAD_BODY
      Defines whether the content body sent in response to HeadMethod should be rejected.

      This parameter expects a value of type Boolean.

      See Also:
    • HEAD_BODY_CHECK_TIMEOUT

      public static final String HEAD_BODY_CHECK_TIMEOUT
      Sets period of time in milliseconds to wait for a content body sent in response to HEAD method from a non-compliant server. If the parameter is not set or set to -1 non-compliant response body check is disabled.

      This parameter expects a value of type Integer.

      See Also:
    • USE_EXPECT_CONTINUE

      public static final String USE_EXPECT_CONTINUE

      Activates 'Expect: 100-Continue' handshake for the entity enclosing methods. The purpose of the 'Expect: 100-Continue' handshake to allow a client that is sending a request message with a request body to determine if the origin server is willing to accept the request (based on the request headers) before the client sends the request body.

      The use of the 'Expect: 100-continue' handshake can result in noticable peformance improvement for entity enclosing requests (such as POST and PUT) that require the target server's authentication.

      'Expect: 100-continue' handshake should be used with caution, as it may cause problems with HTTP servers and proxies that do not support HTTP/1.1 protocol.

      This parameter expects a value of type Boolean.
      See Also:
    • CREDENTIAL_CHARSET

      public static final String CREDENTIAL_CHARSET
      Defines the charset to be used when encoding Credentials. If not defined then the HTTP_ELEMENT_CHARSET should be used.

      This parameter expects a value of type String.

      See Also:
    • HTTP_ELEMENT_CHARSET

      public static final String HTTP_ELEMENT_CHARSET
      Defines the charset to be used for encoding HTTP protocol elements.

      This parameter expects a value of type String.

      See Also:
    • HTTP_URI_CHARSET

      public static final String HTTP_URI_CHARSET
      Defines the charset to be used for parsing URIs.

      This parameter expects a value of type String.

      See Also:
    • HTTP_CONTENT_CHARSET

      public static final String HTTP_CONTENT_CHARSET
      Defines the charset to be used for encoding content body.

      This parameter expects a value of type String.

      See Also:
    • WARN_EXTRA_INPUT

      public static final String WARN_EXTRA_INPUT
      Defines HttpClient's behavior when a response provides more bytes than expected (specified with Content-Length, for example).

      Such surplus data makes the HTTP connection unreliable for keep-alive requests, as malicious response data (faked headers etc.) can lead to undesired results on the next request using that connection.

      If this parameter is set to true, any detection of extra input data will generate a warning in the log.

      This parameter expects a value of type Boolean.

      See Also:
    • STATUS_LINE_GARBAGE_LIMIT

      public static final String STATUS_LINE_GARBAGE_LIMIT
      Defines the maximum number of ignorable lines before we expect a HTTP response's status code.

      With HTTP/1.1 persistent connections, the problem arises that broken scripts could return a wrong Content-Length (there are more bytes sent than specified).
      Unfortunately, in some cases, this is not possible after the bad response, but only before the next one.
      So, HttpClient must be able to skip those surplus lines this way.

      Set this to 0 to disallow any garbage/empty lines before the status line.
      To specify no limit, use Integer.MAX_VALUE (default in lenient mode).

      This parameter expects a value of type Integer.
      See Also:
    • SO_TIMEOUT

      public static final String SO_TIMEOUT
      Sets the socket timeout (SO_TIMEOUT) in milliseconds to be used when executing the method. A timeout value of zero is interpreted as an infinite timeout.

      This parameter expects a value of type Integer.

      See Also:
    • DATE_PATTERNS

      public static final String DATE_PATTERNS
      The key used to look up the date patterns used for parsing. The String patterns are stored in a Collection and must be compatible with SimpleDateFormat.

      This parameter expects a value of type Collection.

      See Also:
    • RETRY_HANDLER

      public static final String RETRY_HANDLER
      Sets the method retry handler parameter.

      This parameter expects a value of type HttpMethodRetryHandler.

      See Also:
    • BUFFER_WARN_TRIGGER_LIMIT

      public static final String BUFFER_WARN_TRIGGER_LIMIT
      Sets the maximum buffered response size (in bytes) that triggers no warning. Buffered responses exceeding this size will trigger a warning in the log.

      This parameter expects a value if type Integer.

      See Also:
    • VIRTUAL_HOST

      public static final String VIRTUAL_HOST
      Defines the virtual host name.

      This parameter expects a value of type String.

      See Also:
    • MULTIPART_BOUNDARY

      public static final String MULTIPART_BOUNDARY
      Sets the value to use as the multipart boundary.

      This parameter expects a value if type String.

      See Also:
  • Constructor Details

    • HttpMethodParams

      public HttpMethodParams()
      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:
    • HttpMethodParams

      public HttpMethodParams(HttpParams defaults)
      Creates a new collection of parameters with the given parent. The collection will defer to its parent for a default value if a particular parameter is not explicitly set in the collection itself.
      Parameters:
      defaults - the parent collection to defer to, if a parameter is not explictly set in the collection itself.
      See Also:
  • Method Details

    • getHttpElementCharset

      public String getHttpElementCharset()
      Returns the charset to be used for writing HTTP headers.
      Returns:
      The charset
    • setHttpElementCharset

      public void setHttpElementCharset(String charset)
      Sets the charset to be used for writing HTTP headers.
      Parameters:
      charset - The charset
    • getContentCharset

      public String getContentCharset()
      Returns the default charset to be used for writing content body, when no charset explicitly specified.
      Returns:
      The charset
    • setUriCharset

      public void setUriCharset(String charset)
      Sets the charset to be used for parsing URIs.
      Parameters:
      charset - The charset
    • getUriCharset

      public String getUriCharset()
      Returns the charset to be used for parsing URIs.
      Returns:
      The charset
    • setContentCharset

      public void setContentCharset(String charset)
      Sets the default charset to be used for writing content body, when no charset explicitly specified.
      Parameters:
      charset - The charset
    • getCredentialCharset

      public String getCredentialCharset()
      Returns the charset to be used for Credentials. If not configured the HTTP element charset is used.
      Returns:
      The charset
    • setCredentialCharset

      public void setCredentialCharset(String charset)
      Sets the charset to be used for writing HTTP headers.
      Parameters:
      charset - The charset
    • getVersion

      public HttpVersion getVersion()
      Returns HTTP protocol version to be used by the HTTP methods that this collection of parameters applies to.
      Returns:
      HTTP protocol version
    • setVersion

      public void setVersion(HttpVersion version)
      Assigns the HTTP protocol version to be used by the HTTP methods that this collection of parameters applies to.
      Parameters:
      version - the HTTP protocol version
    • getCookiePolicy

      public String getCookiePolicy()
      Returns cookie policy to be used by the HTTP methods this collection of parameters applies to.
      Returns:
      cookie policy
    • setCookiePolicy

      public void setCookiePolicy(String policy)
      Assigns the cookie policy to be used by the HTTP methods this collection of parameters applies to.
      Parameters:
      policy - the cookie policy
    • 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.
      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.
      Parameters:
      timeout - Timeout in milliseconds
    • setVirtualHost

      public void setVirtualHost(String hostname)
      Sets the virtual host name.
      Parameters:
      hostname - The host name
    • getVirtualHost

      public String getVirtualHost()
      Returns the virtual host name.
      Returns:
      The virtual host name
    • makeStrict

      public void makeStrict()
      Makes the HTTP methods strictly follow the HTTP protocol specification (RFC 2616 and other relevant RFCs). It must be noted that popular HTTP agents have different degree of HTTP protocol compliance and some HTTP serves are programmed to expect the behaviour that does not strictly adhere to the HTTP specification.
    • makeLenient

      public void makeLenient()
      Makes the HTTP methods attempt to mimic the exact behaviour of commonly used HTTP agents, which many HTTP servers expect, even though such behaviour may violate the HTTP protocol specification (RFC 2616 and other relevant RFCs).