org.apache.hc.client5.http.cookie

## Interface CookieSpec

- All Known Implementing Classes:
    AbstractCookieSpec, CookieSpecBase, IgnoreSpecSpec, 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
  Since:
    4.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `List<Header>` | `formatCookies(List<Cookie> cookies)` Create `"Cookie"` headers for an array of Cookies.
    `boolean` | `match(Cookie cookie, CookieOrigin origin)` Determines if a Cookie matches the target location.
    `List<Cookie>` | `parse(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

    - #### parse

          List<Cookie> parse(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.hc.client5.http.cookie.Cookie, org.apache.hc.client5.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<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

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