Poco::Net

class NameValueCollection

Library: Net
Package: Messages
Header: Poco/Net/NameValueCollection.h

Description

A collection of name-value pairs that are used in various internet protocols like HTTP and SMTP.

The name is case-insensitive.

There can be more than one name-value pair with the same name.

Inheritance

Known Derived Classes: HTMLForm, HTTPAuthenticationParams, HTTPMessage, HTTPRequest, HTTPResponse, HTTPServerRequest, HTTPServerRequestImpl, HTTPServerResponse, HTTPServerResponseImpl, MailMessage, MessageHeader

Member Summary

Member Functions: add, begin, clear, empty, end, erase, find, get, has, operator =, operator [], set, size, swap

Nested Classes

struct ILT

 more...

Types

ConstIterator

typedef HeaderMap::const_iterator ConstIterator;

HeaderMap

typedef std::multimap < std::string, std::string, ILT > HeaderMap;

Iterator

typedef HeaderMap::iterator Iterator;

Constructors

NameValueCollection

NameValueCollection();

Creates an empty NameValueCollection.

NameValueCollection

NameValueCollection(
    const NameValueCollection & nvc
);

Creates a NameValueCollection by copying another one.

Destructor

~NameValueCollection virtual

virtual ~NameValueCollection();

Destroys the NameValueCollection.

Member Functions

add

void add(
    const std::string & name,
    const std::string & value
);

Adds a new name-value pair with the given name and value.

begin

ConstIterator begin() const;

Returns an iterator pointing to the begin of the name-value pair collection.

clear

void clear();

Removes all name-value pairs and their values.

empty

bool empty() const;

Returns true if and only if the header does not have any content.

end

ConstIterator end() const;

Returns an iterator pointing to the end of the name-value pair collection.

erase

void erase(
    const std::string & name
);

Removes all name-value pairs with the given name.

find

ConstIterator find(
    const std::string & name
) const;

Returns an iterator pointing to the first name-value pair with the given name.

get

const std::string & get(
    const std::string & name
) const;

Returns the value of the first name-value pair with the given name.

Throws a NotFoundException if the name-value pair does not exist.

get

const std::string & get(
    const std::string & name,
    const std::string & defaultValue
) const;

Returns the value of the first name-value pair with the given name. If no value with the given name has been found, the defaultValue is returned.

has

bool has(
    const std::string & name
) const;

Returns true if there is at least one name-value pair with the given name.

operator =

NameValueCollection & operator = (
    const NameValueCollection & nvc
);

Assigns the name-value pairs of another NameValueCollection to this one.

operator []

const std::string & operator[] (
    const std::string & name
) const;

Returns the value of the (first) name-value pair with the given name.

Throws a NotFoundException if the name-value pair does not exist.

set

void set(
    const std::string & name,
    const std::string & value
);

Sets the value of the (first) name-value pair with the given name.

size

int size() const;

Returns the number of name-value pairs in the collection.

swap

void swap(
    NameValueCollection & nvc
);

Swaps the NameValueCollection with another one.