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

org.apache.commons.httpclient.methods

## Class OptionsMethod

- java.lang.Object
- - org.apache.commons.httpclient.HttpMethodBase
  - - org.apache.commons.httpclient.methods.OptionsMethod

- All Implemented Interfaces:
    HttpMethod

      public class OptionsMethod
      extends HttpMethodBase

  Implements the HTTP OPTIONS method.

  The HTTP OPTIONS method is defined in section 9.2 of RFC2616:

  > The OPTIONS method represents a request for information about the communication options available on the request/response chain identified by the Request-URI. This method allows the client to determine the options and/or requirements associated with a resource, or the capabilities of a server, without implying a resource action or initiating a resource retrieval.

  Since:
    1.0
  Version:
    $Revision: 480424 $
  Author:
    Remy Maucherat, Mike Bowler, Jeff Dever

- - ### Field Summary

    - ### Fields inherited from class org.apache.commons.httpclient.HttpMethodBase

      `effectiveVersion, statusLine`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `OptionsMethod()` Method constructor.
    `OptionsMethod(java.lang.String uri)` Constructor specifying a URI.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.util.Enumeration` | `getAllowedMethods()` Get a list of allowed methods.
    `java.lang.String` | `getName()` Get the name.
    `boolean` | `isAllowed(java.lang.String method)` Is the specified method allowed ?
    `boolean` | `needContentLength()` Deprecated. only entity enclosing methods set content length header
    `protected void` | `processResponseHeaders(HttpState state, HttpConnection conn)` This implementation will parse the `Allow` header to obtain the set of methods supported by the resource identified by the Request-URI.

    - ### Methods inherited from class org.apache.commons.httpclient.HttpMethodBase

      `abort, addCookieRequestHeader, addHostRequestHeader, addProxyConnectionHeader, addRequestHeader, addRequestHeader, addRequestHeaders, addResponseFooter, addUserAgentRequestHeader, checkNotUsed, checkUsed, execute, generateRequestLine, getAuthenticationRealm, getContentCharSet, getDoAuthentication, getEffectiveVersion, getFollowRedirects, getHostAuthState, getHostConfiguration, getMethodRetryHandler, getParams, getPath, getProxyAuthenticationRealm, getProxyAuthState, getQueryString, getRecoverableExceptionCount, getRequestCharSet, getRequestHeader, getRequestHeaderGroup, getRequestHeaders, getRequestHeaders, getResponseBody, getResponseBody, getResponseBodyAsStream, getResponseBodyAsString, getResponseBodyAsString, getResponseCharSet, getResponseContentLength, getResponseFooter, getResponseFooters, getResponseHeader, getResponseHeaderGroup, getResponseHeaders, getResponseHeaders, getResponseStream, getResponseTrailerHeaderGroup, getStatusCode, getStatusLine, getStatusText, getURI, hasBeenUsed, isAborted, isConnectionCloseForced, isHttp11, isRequestSent, isStrictMode, processCookieHeaders, processResponseBody, processStatusLine, readResponse, readResponseBody, readResponseHeaders, readStatusLine, recycle, releaseConnection, removeRequestHeader, removeRequestHeader, responseBodyConsumed, setConnectionCloseForced, setDoAuthentication, setFollowRedirects, setHostConfiguration, setHttp11, setMethodRetryHandler, setParams, setPath, setQueryString, setQueryString, setRequestHeader, setRequestHeader, setResponseStream, setStrictMode, setURI, shouldCloseConnection, validate, writeRequest, writeRequestBody, writeRequestHeaders, writeRequestLine`

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

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

- - ### Constructor Detail

    - #### OptionsMethod

          public OptionsMethod()

      Method constructor.
      Since:
        1.0

    - #### OptionsMethod

          public OptionsMethod(java.lang.String uri)

      Constructor specifying a URI.
      Parameters:
        `uri` - either an absolute or relative URI
      Since:
        1.0

  - ### Method Detail

    - #### getName

          public java.lang.String getName()

      Get the name.
      Specified by:
        `getName` in interface `HttpMethod`
      Specified by:
        `getName` in class `HttpMethodBase`
      Returns:
        "OPTIONS"
      Since:
        2.0

    - #### isAllowed

          public boolean isAllowed(java.lang.String method)

      Is the specified method allowed ?
      Parameters:
        `method` - The method to check.
      Returns:
        true if the specified method is allowed.
      Since:
        1.0

    - #### getAllowedMethods

          public java.util.Enumeration getAllowedMethods()

      Get a list of allowed methods.
      Returns:
        An enumeration of all the allowed methods.
      Since:
        1.0

    - #### processResponseHeaders

          protected void processResponseHeaders(HttpState state,
                                                HttpConnection conn)

      This implementation will parse the `Allow` header to obtain the set of methods supported by the resource identified by the Request-URI.

      Overrides:
        `processResponseHeaders` in class `HttpMethodBase`
      Parameters:
        `state` - the `state` information associated with this method
        `conn` - the `connection` used to execute this HTTP method
      Since:
        2.0
      See Also:
        `HttpMethodBase.readResponse(org.apache.commons.httpclient.HttpState, org.apache.commons.httpclient.HttpConnection)`, `HttpMethodBase.readResponseHeaders(org.apache.commons.httpclient.HttpState, org.apache.commons.httpclient.HttpConnection)`

    - #### needContentLength

          public boolean needContentLength()

      Deprecated. only entity enclosing methods set content length header
      Return true if the method needs a content-length header in the request.
      Returns:
        true if a content-length header will be expected by the server
      Since:
        1.0

Copyright (c) 1999-2005 - Apache Software Foundation