org.apache.http.impl.cookie

## Class RFC2109Spec

- java.lang.Object
- - org.apache.http.impl.cookie.AbstractCookieSpec
  - - org.apache.http.impl.cookie.CookieSpecBase
    - - org.apache.http.impl.cookie.RFC2109Spec

All Implemented Interfaces:
  CookieSpec

Direct Known Subclasses:
  RFC2965Spec

    @Obsolete
    @Contract(threading=SAFE)
    public class RFC2109Spec
    extends CookieSpecBase

RFC 2109 compliant `CookieSpec` implementation.

Rendered obsolete by `RFC6265StrictSpec`.

Since:
  4.0
See Also:
  `RFC6265StrictSpec`

### Constructor Summary

Constructors
`` `RFC2109Spec()` Default constructor
`protected` `RFC2109Spec(boolean oneHeader, CommonCookieAttributeHandler... handlers)`
`` `RFC2109Spec(String[] datepatterns, boolean oneHeader)` Default constructor

### Method Summary

Methods
`protected void` `formatCookieAsVer(org.apache.http.util.CharArrayBuffer buffer, Cookie cookie, int version)` Return a string suitable for sending in a `"Cookie"` header as defined in RFC 2109 for backward compatibility with cookie version 0
`List<org.apache.http.Header>` `formatCookies(List<Cookie> cookies)` Create `"Cookie"` headers for an array of Cookies.
`protected void` `formatParamAsVer(org.apache.http.util.CharArrayBuffer buffer, String name, String value, int version)` Return a name/value string suitable for sending in a `"Cookie"` header as defined in RFC 2109 for backward compatibility with cookie version 0
`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.
`List<Cookie>` `parse(org.apache.http.Header header, CookieOrigin origin)` Parse the `"Set-Cookie"` Header into an array of Cookies.
`String` `toString()`
`void` `validate(Cookie cookie, CookieOrigin origin)` Validate the cookie according to validation rules defined by the cookie specification.

### Methods inherited from class org.apache.http.impl.cookie.CookieSpecBase

`getDefaultDomain, getDefaultPath, match, parse`

### Methods inherited from class org.apache.http.impl.cookie.AbstractCookieSpec

`findAttribHandler, getAttribHandler, getAttribHandlers, registerAttribHandler`

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

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

### Constructor Detail

#### RFC2109Spec

    public RFC2109Spec(String[] datepatterns,
               boolean oneHeader)

Default constructor

#### RFC2109Spec

    public RFC2109Spec()

Default constructor

#### RFC2109Spec

    protected RFC2109Spec(boolean oneHeader,
               CommonCookieAttributeHandler... handlers)

### Method Detail

#### parse

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

Description copied from interface: `CookieSpec`
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:
  `CookieSpec.validate(org.apache.http.cookie.Cookie, org.apache.http.cookie.CookieOrigin)`

#### validate

    public void validate(Cookie cookie,
                CookieOrigin origin)
                  throws MalformedCookieException

Description copied from interface: `CookieSpec`
Validate the cookie according to validation rules defined by the cookie specification.

Specified by:
  `validate` in interface `CookieSpec`
Overrides:
  `validate` in class `CookieSpecBase`
Parameters:
  `cookie` - the Cookie to validate
  `origin` - details of the cookie origin
Throws:
  `MalformedCookieException` - if the cookie is invalid

#### formatCookies

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

Description copied from interface: `CookieSpec`
Create `"Cookie"` headers for an array of Cookies.

Parameters:
  `cookies` - the Cookies format into a Cookie header
Returns:
  a Header for the given Cookies.

#### formatParamAsVer

    protected void formatParamAsVer(org.apache.http.util.CharArrayBuffer buffer,
                        String name,
                        String value,
                        int version)

Return a name/value string suitable for sending in a `"Cookie"` header as defined in RFC 2109 for backward compatibility with cookie version 0

Parameters:
  `buffer` - The char array buffer to use for output
  `name` - The cookie name
  `value` - The cookie value
  `version` - The cookie version

#### formatCookieAsVer

    protected void formatCookieAsVer(org.apache.http.util.CharArrayBuffer buffer,
                         Cookie cookie,
                         int version)

Return a string suitable for sending in a `"Cookie"` header as defined in RFC 2109 for backward compatibility with cookie version 0

Parameters:
  `buffer` - The char array buffer to use for output
  `cookie` - The `Cookie` to be formatted as string
  `version` - The version to use.

#### getVersion

    public int getVersion()

Description copied from interface: `CookieSpec`
Returns version of the state management this cookie specification conforms to.

Returns:
  version of the state management specification

#### getVersionHeader

    public org.apache.http.Header getVersionHeader()

Description copied from interface: `CookieSpec`
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.

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`