com.meterware.httpunit.cookies
Class CookieJar

java.lang.Object
  extended bycom.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)
          Deprecated. as of 1.6, use #putCookie
 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 putCookie(java.lang.String name, java.lang.String value)
          Defines a cookie to be sent to the server on every request.
 void putSingleUseCookie(java.lang.String name, java.lang.String value, java.lang.String domain, java.lang.String path)
          Define a non-global 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)
Deprecated. as of 1.6, use #putCookie

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.


putCookie

public void putCookie(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. Values of null will result in the cookie being removed. Any other value will leave the cookie unchanged expect for the value.

Since:
1.6

putSingleUseCookie

public void putSingleUseCookie(java.lang.String name,
                               java.lang.String value,
                               java.lang.String domain,
                               java.lang.String path)
Define a non-global cookie. This cookie can be overwritten by subsequent cookie definitions in http headers. This cookie definition requires a domain and path. If a global cookie is defined with the same name, this cookie is not added.


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.

Parameters:
name - - the name of the cookie to get the value for
Returns:
the value of the 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-2008 Russell Gold. See license agreement for rights granted.