Main Page Namespace List Class Hierarchy Compound List File List Namespace Members Compound Members File Members Related Pages

# cgicc::HTTPCookie Class Reference

An HTTP cookie. More...

`#include <cgicc/HTTPCookie.h>`

Inheritance diagram for cgicc::HTTPCookie::

List of all members.

## Public Methods
Constructors and Destructor
| HTTPCookie ()
| Default Constructor. More...
| HTTPCookie (const std::string &name, const std::string &value)
| Create a new HTTPCookie. More...
| HTTPCookie (const std::string &name, const std::string &value, const std::string &comment, const std::string &domain, unsigned long maxAge, const std::string &path, bool secure)
| Create a new fully-spefified HTTPCookie. More...
| HTTPCookie (const HTTPCookie &cookie)
| Copy constructor. More...
virtual | ~HTTPCookie ()
| Destructor. More...
Overloaded Operators
bool | operator== (const HTTPCookie &cookie) const
| Compare two HTTPCookies for equality. More...
bool | operator!= (const HTTPCookie &cookie) const
| Compare two HTTPCookies for inequality. More...
Accessor Methods
std::string | getName () const
| Get the name of this cookie. More...
std::string | getValue () const
| Get the value of this cookie. More...
std::string | getComment () const
| Get the comment of this cookie. More...
std::string | getDomain () const
| Get the domain for which this cookie is valid. More...
unsigned long | getMaxAge () const
| Get the lifetime of this cookie, in seconds. More...
std::string | getPath () const
| Get the path of this cookie. More...
bool | isSecure () const
| Determine if this is a secure cookie. More...
Mutator Methods
void | setName (const std::string &name)
| Set the name of this cookie. More...
void | setValue (const std::string &value)
| Set the value of this cookie. More...
void | setComment (const std::string &comment)
| Set the comment of this cookie. More...
void | setDomain (const std::string &domain)
| Set the domain of this cookie. More...
void | setMaxAge (unsigned long maxAge)
| Set the lifetime of this cookie, in seconds. More...
void | setPath (const std::string &path)
| Set the path of this cookie. More...
void | setSecure (bool secure)
| Mark this cookie as secure or unsecure. More...
Inherited Methods
virtual void | render (std::ostream &out) const
| Write this object to a stream. More...

## Detailed Description

An HTTP cookie.

An HTTP cookie is a way to maintain state between stateless HTTP requests. HTTP cookies consist of name/value pairs, with optional comments, domains, and expiration dates. Usually, you will add one or more HTTPCookie objects to the HTTP headers your script is returning. For example, to set a cookie called `count` to `1` in a normal HTML document:

      out << HTTPHTMLHeader().setCookie(HTTPCookie("count","1"));

Definition at line 56 of file HTTPCookie.h.

## Constructor & Destructor Documentation

cgicc::HTTPCookie::HTTPCookie | ( |  | ) |

| Default Constructor. Create a new, empty HTTPCookie.

cgicc::HTTPCookie::HTTPCookie | ( | const std::string & | name,
|  | const std::string & | value
| ) |

  | Create a new HTTPCookie. This is the most commonly-used constructor. Parameters:
  name | The name of the cookie.
  value | The value of the cookie.

cgicc::HTTPCookie::HTTPCookie | ( | const std::string & | name,
|  | const std::string & | value,
|  | const std::string & | comment,
|  | const std::string & | domain,
|  | unsigned long | maxAge,
|  | const std::string & | path,
|  | bool | secure
| ) |

  | Create a new fully-spefified HTTPCookie. Parameters:
  name | The name of the cookie.
  value | The value of the cookie.
  comment | Any comment associated with the cookie.
  domain | The domain for which this cookie is valid- an empty string will use the hostname of the server which generated the cookie response. If specified, the domain must start with a period('.').
  maxAge | A number of seconds defining the lifetime of this cookie. A value of `0` indicates the cookie expires immediately.
  path | The subset of URLS in a domain for which the cookie is valid, for example `/`
  secure | Specifies whether this is a secure cookie.

cgicc::HTTPCookie::HTTPCookie | ( | const HTTPCookie & | cookie | ) |

  | Copy constructor. Set the name, value, comment, domain, age and path of this cookie to those of `cookie` Parameters:
  cookie | The HTTPCookie to copy.

virtual cgicc::HTTPCookie::~HTTPCookie | ( |  | ) | `[virtual]`

| Destructor. Delete this HTTPCookie

## Member Function Documentation

std:: string cgicc::HTTPCookie::getComment | ( |  | ) | const`[inline]`

| Get the comment of this cookie. Returns: The comment of this cookie. Definition at line 186 of file HTTPCookie.h.

std:: string cgicc::HTTPCookie::getDomain | ( |  | ) | const`[inline]`

| Get the domain for which this cookie is valid. An empty string indicates the hostname of the server which generated the cookie response. Returns: The domain of this cookie, or "" if none. Definition at line 197 of file HTTPCookie.h.

unsigned long cgicc::HTTPCookie::getMaxAge | ( |  | ) | const`[inline]`

| Get the lifetime of this cookie, in seconds. Returns: The lifetime of this cookie, or 0 if none. Definition at line 206 of file HTTPCookie.h.

std:: string cgicc::HTTPCookie::getName | ( |  | ) | const`[inline]`

| Get the name of this cookie. Returns: The name of this cookie. Definition at line 168 of file HTTPCookie.h.

std:: string cgicc::HTTPCookie::getPath | ( |  | ) | const`[inline]`

| Get the path of this cookie. This is the subset of URLS in a domain for which the cookie is valid, for example `/` Returns: The path of this cookie, or "" if none. Definition at line 217 of file HTTPCookie.h.

std:: string cgicc::HTTPCookie::getValue | ( |  | ) | const`[inline]`

| Get the value of this cookie. Returns: The value of this cookie. Definition at line 177 of file HTTPCookie.h.

bool cgicc::HTTPCookie::isSecure | ( |  | ) | const`[inline]`

| Determine if this is a secure cookie. Returns: True if this cookie is secure, false if not. Definition at line 226 of file HTTPCookie.h.

bool cgicc::HTTPCookie::operator!= | ( | const HTTPCookie & | cookie | ) | const`[inline]`

  | Compare two HTTPCookies for inequality. Two HTTPCookie objects are equal if their names, values, comments, domains, ages, and paths match. Parameters:
  cookie | The HTTPCookie to compare to this one
Returns: false if the two HTTPCookies are equal, true otherwise. Definition at line 146 of file HTTPCookie.h.

bool cgicc::HTTPCookie::operator== | ( | const HTTPCookie & | cookie | ) | const

  | Compare two HTTPCookies for equality. Two HTTPCookie objects are equal if their names, values, comments, domains, ages, and paths match. Parameters:
  cookie | The HTTPCookie to compare to this one
Returns: true if the two HTTPCookies are equal, false otherwise.

virtual void cgicc::HTTPCookie::render | ( | std::ostream & | out | ) | const`[virtual]`

  | Write this object to a stream. Subclasses must implement this function. Parameters:
  out | The ostream to which to write.
Reimplemented from cgicc::MStreamable.

void cgicc::HTTPCookie::setComment | ( | const std::string & | comment | ) | `[inline]`

  | Set the comment of this cookie. Parameters:
  comment | The comment of this cookie.
Definition at line 259 of file HTTPCookie.h.

void cgicc::HTTPCookie::setDomain | ( | const std::string & | domain | ) | `[inline]`

  | Set the domain of this cookie. An empty string indicates the hostname of the server which generated the cookie response. If specified, the domain must start with a period('.'). Parameters:
  domain | The domain of this cookie.
Definition at line 271 of file HTTPCookie.h.

void cgicc::HTTPCookie::setMaxAge | ( | unsigned long | maxAge | ) | `[inline]`

  | Set the lifetime of this cookie, in seconds. A value of `0` indicated the cookie expires immediately Parameters:
  maxAge | The lifetime of this cookie, in seconds.
Definition at line 281 of file HTTPCookie.h.

void cgicc::HTTPCookie::setName | ( | const std::string & | name | ) | `[inline]`

  | Set the name of this cookie. Parameters:
  name | The name of this cookie.
Definition at line 241 of file HTTPCookie.h.

void cgicc::HTTPCookie::setPath | ( | const std::string & | path | ) | `[inline]`

  | Set the path of this cookie. This is the subset of URLS in a domain for which the cookie is valid, for example `/` Parameters:
  path | The path of this cookie.
Definition at line 292 of file HTTPCookie.h.

void cgicc::HTTPCookie::setSecure | ( | bool | secure | ) | `[inline]`

  | Mark this cookie as secure or unsecure. Parameters:
  secure | Whether this is a secure cookie.
Definition at line 301 of file HTTPCookie.h.

void cgicc::HTTPCookie::setValue | ( | const std::string & | value | ) | `[inline]`

  | Set the value of this cookie. Parameters:
  value | The value of this cookie.
Definition at line 250 of file HTTPCookie.h.

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

- HTTPCookie.h