org.htmlparser.http
public class Cookie extends Object implements Cloneable, Serializable
Cookies are named, and have a single value. They may have optional attributes, including a comment presented to the user, path and domain qualifiers for which hosts see the cookie, a maximum age, and a version. Current web browsers often have bugs in how they treat those attributes, so interoperability can be improved by not relying on them heavily.
Cookies are assigned by servers, using fields added to HTTP response headers. Cookies are passed back to those servers using fields added to HTTP request headers. Several cookies with the same name can be returned; they have different path attributes, but those attributes will not be visible when using "old format" cookies.
Cookies affect the caching of the web pages used to set their values. At this time, none of the sophisticated HTTP/1.1 cache control models are supported. Standard HTTP/1.0 caches will not cache pages which contain cookies created by this class.
Cookies are being standardized by the IETF. This class supports the original Cookie specification (from Netscape Communications Corp.) as well as the updated RFC 2109 specification.
Field Summary | |
---|---|
protected String | mComment
Describes the cookie's use. |
protected String | mDomain
Domain that sees cookie. |
protected Date | mExpiry
Cookie expires after this date. |
protected String | mName
The name of the cookie. |
protected String | mPath
URLs that see the cookie. |
protected boolean | mSecure
Use SSL. |
protected String | mValue
The cookie value. |
protected int | mVersion
If Version=1 it means RFC 2109++ style cookies. |
Constructor Summary | |
---|---|
Cookie(String name, String value)
Defines a cookie with an initial name/value pair. |
Method Summary | |
---|---|
Object | clone()
Returns a copy of this object. |
String | getComment()
Returns the comment describing the purpose of this cookie, or null if no
such comment has been defined. |
String | getDomain()
Returns the domain of this cookie. |
Date | getExpiryDate()
Returns the expiry date of the cookie. |
String | getName()
Returns the name of the cookie. |
String | getPath()
Returns the prefix of all URLs for which this cookie is targetted. |
boolean | getSecure()
Returns the value of the 'secure' flag. |
String | getValue()
Returns the value of the cookie. |
int | getVersion()
Returns the version of the cookie. |
void | setComment(String purpose)
If a user agent (web browser) presents this cookie to a user, the
cookie's purpose will be described using this comment. |
void | setDomain(String pattern)
This cookie should be presented only to hosts satisfying this domain name
pattern. |
void | setExpiryDate(Date expiry)
Sets the expiry date of the cookie. |
void | setPath(String uri)
This cookie should be presented only with requests beginning with this
URL. |
void | setSecure(boolean flag)
Indicates to the user agent that the cookie should only be sent using a
secure protocol (https). |
void | setValue(String newValue)
Sets the value of the cookie. |
void | setVersion(int version)
Sets the version of the cookie protocol used when this cookie saves
itself. |
String | toString()
Convert this cookie into a user friendly string. |
Parameters: name The name of the cookie. value The value of the cookie.
Throws: IllegalArgumentException if the cookie name is not an HTTP/1.1 "token", or if it is one of the tokens reserved for use by the cookie protocol
Returns: The clone of this cookie.
Returns: The cookie comment, or null
if none.
See Also: Cookie
Returns: The cookie domain (the base URL name it applies to).
See Also: Cookie
Returns: The cookie expiry date, or null
if it is persistent.
See Also: Cookie
Returns: The name of the cookie.
Returns: The cookie path (or "/" if no specific path is specified).
See Also: Cookie
Returns: The true
if this cookie should only be sent using
a secure protocol, false
otherwise.
See Also: Cookie
Returns: The cookie value.
See Also: Cookie
Returns: The cookie version.
See Also: Cookie
Parameters: purpose The cookie comment.
See Also: Cookie
Parameters: pattern The domain name pattern. The pattern is converted to lower case to accommodate less capable browsers.
See Also: Cookie
Parameters: expiry The expiry date for this cookie, or null
if
the cookie is persistent.
See Also: Cookie
Parameters: uri The exclusion prefix for the cookie.
See Also: Cookie
Parameters: flag Use true
if the cookie is to be sent using
secure protocols, false
otherwise.
See Also: Cookie
With version zero cookies, you need to be careful about the kinds of values you use. Values with various special characters (whitespace, brackets and parentheses, the equals sign, comma, double quote, slashes, question marks, the "at" sign, colon, and semicolon) should be avoided. Empty values may not behave the same way on all browsers.
Parameters: newValue The new value for the cookie.
See Also: Cookie
Parameters: version The version of the cookie, either 0 or 1.
See Also: Cookie
Returns: A short form string representing this cookie.
HTML Parser is an open source library released under LGPL. | |