Interface CookieSpec

All Known Implementing Classes:
AbstractCookieSpec, BestMatchSpec, BrowserCompatSpec, CookieSpecBase, NetscapeDraftSpec, RFC2109Spec, RFC2965Spec

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
Author:
Oleg Kalnichevski, Jeff Dever
  • Method Summary

    Modifier and Type Method Description
    List<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.
    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​(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 Details

    • getVersion

      int getVersion()
      Returns version of the state management this cookie specification conforms to.
      Returns:
      version of the state management specification
    • 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 Cookies

      Parameters:
      header - the Set-Cookie received from the server
      origin - details of the cookie origin
      Returns:
      an array of Cookies 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<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

      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.