com.meterware.httpunit.cookies
Class CookieJar

java.lang.Object
  |
  +--com.meterware.httpunit.cookies.CookieJar

public class CookieJar
extends java.lang.Object

A collection of HTTP cookies, which can interact with cookie and set-cookie header values.

Author:
Russell Gold, Drew Varner

Constructor Summary
CookieJar()
          Creates an empty cookie jar.
CookieJar(CookieSource source)
          Creates a cookie jar which is initially populated with cookies parsed from the Set-Cookie and Set-Cookie2 header fields.
 
Method Summary
 void addCookie(java.lang.String name, java.lang.String value)
          Defines a cookie to be sent to the server on every request.
 void clear()
          Empties this cookie jar of all contents.
 Cookie getCookie(java.lang.String name)
          Returns the value of the specified cookie.
 java.lang.String getCookieHeaderField(java.net.URL targetURL)
          Returns the value of the cookie header to be sent to the specified URL.
 java.lang.String[] getCookieNames()
          Returns the name of all the active cookies in this cookie jar.
 java.util.Collection getCookies()
          Returns a collection containing all of the cookies in this jar.
 java.lang.String getCookieValue(java.lang.String name)
          Returns the value of the specified cookie.
 void updateCookies(CookieJar newJar)
          Updates the cookies maintained in this cookie jar with those in another cookie jar.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CookieJar

public CookieJar()
Creates an empty cookie jar.


CookieJar

public CookieJar(CookieSource source)
Creates a cookie jar which is initially populated with cookies parsed from the Set-Cookie and Set-Cookie2 header fields.

Note that the parsing does not strictly follow the specifications, but attempts to imitate the behavior of popular browsers. Specifically, it allows cookie values to contain commas, which the Netscape standard does not allow for, but which is required by some servers.

Method Detail

clear

public void clear()
Empties this cookie jar of all contents.


addCookie

public void addCookie(java.lang.String name,
                      java.lang.String value)
Defines a cookie to be sent to the server on every request. This bypasses the normal mechanism by which only certain cookies are sent based on their host and path.


getCookieNames

public java.lang.String[] getCookieNames()
Returns the name of all the active cookies in this cookie jar.


getCookies

public java.util.Collection getCookies()
Returns a collection containing all of the cookies in this jar.


getCookieValue

public java.lang.String getCookieValue(java.lang.String name)
Returns the value of the specified cookie.


getCookie

public Cookie getCookie(java.lang.String name)
Returns the value of the specified cookie.


getCookieHeaderField

public java.lang.String getCookieHeaderField(java.net.URL targetURL)
Returns the value of the cookie header to be sent to the specified URL. Will return null if no compatible cookie is defined.


updateCookies

public void updateCookies(CookieJar newJar)
Updates the cookies maintained in this cookie jar with those in another cookie jar. Any duplicate cookies in the new jar will replace those in this jar.


Copyright © 2000-2003 Russell Gold. See license agreement for rights granted.