Public Member Functions

nsICookieManager2 Interface Reference

Additions to the frozen nsICookieManager. More...

import "nsICookieManager2.idl";

Inheritance diagram for nsICookieManager2:
Collaboration diagram for nsICookieManager2:

List of all members.

Public Member Functions

void add (in AUTF8String aHost, in AUTF8String aPath, in ACString aName, in ACString aValue, in boolean aIsSecure, in boolean aIsHttpOnly, in boolean aIsSession, in PRInt64 aExpiry)
 Add a cookie.
boolean cookieExists (in nsICookie2 aCookie)
 Find whether a given cookie already exists.
unsigned long countCookiesFromHost (in AUTF8String aHost)
 Count how many cookies exist within the base domain of 'aHost'.
nsISimpleEnumerator getCookiesFromHost (in AUTF8String aHost)
 Returns an enumerator of cookies that exist within the base domain of 'aHost'.
void importCookies (in nsIFile aCookieFile)
 Import an old-style cookie file.

Detailed Description

Additions to the frozen nsICookieManager.


Member Function Documentation

void nsICookieManager2::add ( in AUTF8String  aHost,
in AUTF8String  aPath,
in ACString  aName,
in ACString  aValue,
in boolean  aIsSecure,
in boolean  aIsHttpOnly,
in boolean  aIsSession,
in PRInt64  aExpiry 
)

Add a cookie.

nsICookieService is the normal way to do this. This method is something of a backdoor.

Parameters:
aHost the host or domain for which the cookie is set. presence of a leading dot indicates a domain cookie; otherwise, the cookie is treated as a non-domain cookie (see RFC2109). The host string will be normalized to ASCII or ACE; any trailing dot will be stripped. To be a domain cookie, the host must have at least two subdomain parts (e.g. '.foo.com', not '.com'), otherwise an exception will be thrown. An empty string is acceptable (e.g. file:// URI's).
aPath path within the domain for which the cookie is valid
aName cookie name
aValue cookie data
aIsSecure true if the cookie should only be sent over a secure connection.
aIsHttpOnly true if the cookie should only be sent to, and can only be modified by, an http connection.
aIsSession true if the cookie should exist for the current session only. see aExpiry.
aExpiry expiration date, in seconds since midnight (00:00:00), January 1, 1970 UTC. note that expiry time will also be honored for session cookies; in this way, the more restrictive of the two will take effect.
boolean nsICookieManager2::cookieExists ( in nsICookie2  aCookie  ) 

Find whether a given cookie already exists.

Parameters:
aCookie the cookie to look for
Returns:
true if a cookie was found which matches the host, path, and name fields of aCookie
unsigned long nsICookieManager2::countCookiesFromHost ( in AUTF8String  aHost  ) 

Count how many cookies exist within the base domain of 'aHost'.

Thus, for a host "weather.yahoo.com", the base domain would be "yahoo.com", and any host or domain cookies for "yahoo.com" and its subdomains would be counted.

Parameters:
aHost the host string to search for, e.g. "google.com". this should consist of only the host portion of a URI. see for a description of acceptable host strings.
Returns:
the number of cookies found.
nsISimpleEnumerator nsICookieManager2::getCookiesFromHost ( in AUTF8String  aHost  ) 

Returns an enumerator of cookies that exist within the base domain of 'aHost'.

Thus, for a host "weather.yahoo.com", the base domain would be "yahoo.com", and any host or domain cookies for "yahoo.com" and its subdomains would be returned.

Parameters:
aHost the host string to search for, e.g. "google.com". this should consist of only the host portion of a URI. see for a description of acceptable host strings.
Returns:
an nsISimpleEnumerator of nsICookie2 objects.
See also:
countCookiesFromHost
void nsICookieManager2::importCookies ( in nsIFile  aCookieFile  ) 

Import an old-style cookie file.

Imported cookies will be added to the existing database. If the database contains any cookies the same as those being imported (i.e. domain, name, and path match), they will be replaced.

Parameters:
aCookieFile the file to import, usually cookies.txt

The documentation for this interface was generated from the following file: