org.apache.http.cookie

## Interface CookieSpec

- All Known Implementing Classes:
    AbstractCookieSpec, BestMatchSpec, BrowserCompatSpec, CookieSpecBase, DefaultCookieSpec, IgnoreSpec, NetscapeDraftSpec, RFC2109Spec, RFC2965Spec, RFC6265CookieSpec, RFC6265LaxSpec, RFC6265StrictSpec

      public interface CookieSpec

  Defines the cookie management specification.

  Cookie management specification must define

  - rules of parsing "Set-Cookie" header
  - rules of validation of parsed cookies
  - formatting of "Cookie" header
  for a given host, port and path of origin

  Please do not use methods marked as @Obsolete. They have been rendered obsolete by RFC 6265.

  Since:
    4.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `List<org.apache.http.Header>` | `formatCookies(List<Cookie> cookies)` Create `"Cookie"` headers for an array of Cookies.
    `int` | `getVersion()` Returns version of the state management this cookie specification conforms to.
    `org.apache.http.Header` | `getVersionHeader()` Returns a request header identifying what version of the state management specification is understood.
    `boolean` | `match(Cookie cookie, CookieOrigin origin)` Determines if a Cookie matches the target location.
    `List<Cookie>` | `parse(org.apache.http.Header header, CookieOrigin origin)` Parse the `"Set-Cookie"` Header into an array of Cookies.
    `void` | `validate(Cookie cookie, CookieOrigin origin)` Validate the cookie according to validation rules defined by the cookie specification.

- - ### Method Detail

    - #### getVersion

          @Obsolete
          int getVersion()

      Returns version of the state management this cookie specification conforms to.
      Returns:
        version of the state management specification

    - #### parse

          List<Cookie> parse(org.apache.http.Header header,
                           CookieOrigin origin)
                             throws MalformedCookieException

      Parse the `"Set-Cookie"` Header into an array of Cookies.

      This method will not perform the validation of the resultant `Cookie`s

      Parameters:
        `header` - the `Set-Cookie` received from the server
        `origin` - details of the cookie origin
      Returns:
        an array of `Cookie`s parsed from the header
      Throws:
        `MalformedCookieException` - if an exception occurs during parsing
      See Also:
        `validate(org.apache.http.cookie.Cookie, org.apache.http.cookie.CookieOrigin)`

    - #### validate

          void validate(Cookie cookie,
                      CookieOrigin origin)
                        throws MalformedCookieException

      Validate the cookie according to validation rules defined by the cookie specification.
      Parameters:
        `cookie` - the Cookie to validate
        `origin` - details of the cookie origin
      Throws:
        `MalformedCookieException` - if the cookie is invalid

    - #### match

          boolean match(Cookie cookie,
                      CookieOrigin origin)

      Determines if a Cookie matches the target location.
      Parameters:
        `cookie` - the Cookie to be matched
        `origin` - the target to test against
      Returns:
        `true` if the cookie should be submitted with a request with given attributes, `false` otherwise.

    - #### formatCookies

          List<org.apache.http.Header> formatCookies(List<Cookie> cookies)

      Create `"Cookie"` headers for an array of Cookies.
      Parameters:
        `cookies` - the Cookies format into a Cookie header
      Returns:
        a Header for the given Cookies.
      Throws:
        `IllegalArgumentException` - if an input parameter is illegal

    - #### getVersionHeader

          @Obsolete
          org.apache.http.Header getVersionHeader()

      Returns a request header identifying what version of the state management specification is understood. May be `null` if the cookie specification does not support `Cookie2` header.

Copyright © 1999–2022 The Apache Software Foundation. All rights reserved.