Kea 2.7.3
|
Container for storing client class names. More...
#include <classify.h>
Public Types | |
typedef ClientClassContainer::const_iterator | const_iterator |
Type of iterators. | |
typedef ClientClassContainer::iterator | iterator |
Public Member Functions | |
ClientClasses () | |
Default constructor. | |
ClientClasses (const std::string &class_names) | |
Constructor from comma separated values. | |
void | clear () |
Clears containers. | |
bool | contains (const ClientClass &x) const |
returns if class x belongs to the defined classes | |
bool | empty () const |
Check if classes is empty. | |
void | erase (const ClientClass &class_name) |
Erase element by name. | |
void | insert (const ClientClass &class_name) |
Insert an element. | |
size_t | size () const |
Returns the number of classes. | |
isc::data::ElementPtr | toElement () const |
Returns all class names as an ElementPtr of type ListElement. | |
std::string | toText (const std::string &separator=", ") const |
Returns all class names as text. | |
const_iterator | cbegin () const |
Iterators to the first element. | |
const_iterator | begin () const |
iterator | begin () |
const_iterator | cend () const |
Iterators to the past the end element. | |
const_iterator | end () const |
iterator | end () |
Container for storing client class names.
Both a list to iterate on it in insert order and unordered set of names for existence.
Definition at line 108 of file classify.h.
typedef ClientClassContainer::const_iterator isc::dhcp::ClientClasses::const_iterator |
Type of iterators.
Definition at line 112 of file classify.h.
typedef ClientClassContainer::iterator isc::dhcp::ClientClasses::iterator |
Definition at line 113 of file classify.h.
|
inline |
Default constructor.
Definition at line 116 of file classify.h.
isc::dhcp::ClientClasses::ClientClasses | ( | const std::string & | class_names | ) |
Constructor from comma separated values.
class_names | A string containing a client classes separated with commas. The class names are trimmed before insertion to the set. |
Definition at line 25 of file classify.cc.
References insert(), and isc::util::str::trim().
|
inline |
Definition at line 158 of file classify.h.
|
inline |
Definition at line 155 of file classify.h.
|
inline |
Iterators to the first element.
Definition at line 152 of file classify.h.
|
inline |
Iterators to the past the end element.
Definition at line 165 of file classify.h.
|
inline |
Clears containers.
Definition at line 183 of file classify.h.
bool isc::dhcp::ClientClasses::contains | ( | const ClientClass & | x | ) | const |
returns if class x belongs to the defined classes
x | client class to be checked |
Definition at line 49 of file classify.cc.
Referenced by isc::dhcp::Pkt::addSubClass(), isc::dhcp::Pkt::inClass(), isc::dhcp::Pool::requireClientClass(), and isc::dhcp::Network::requireClientClass().
|
inline |
Check if classes is empty.
Definition at line 138 of file classify.h.
|
inline |
Definition at line 171 of file classify.h.
|
inline |
Definition at line 168 of file classify.h.
void isc::dhcp::ClientClasses::erase | ( | const ClientClass & | class_name | ) |
Erase element by name.
class_name | The name of the class to erase. |
Definition at line 40 of file classify.cc.
|
inline |
Insert an element.
class_name | The name of the class to insert |
Definition at line 128 of file classify.h.
Referenced by ClientClasses(), isc::dhcp::Pkt::addClass(), isc::dhcp::Pkt::addSubClass(), isc::dhcp::Pool::requireClientClass(), isc::dhcp::Network::requireClientClass(), isc::dhcp::Dhcpv6Srv::requiredClassify(), and isc::dhcp::Dhcpv4Srv::requiredClassify().
|
inline |
Returns the number of classes.
Definition at line 146 of file classify.h.
ElementPtr isc::dhcp::ClientClasses::toElement | ( | ) | const |
Returns all class names as an ElementPtr of type ListElement.
Definition at line 70 of file classify.cc.
References isc::data::Element::create(), and isc::data::Element::createList().
std::string isc::dhcp::ClientClasses::toText | ( | const std::string & | separator = ", " | ) | const |
Returns all class names as text.
separator | Separator to be used between class names. The default separator comprises comma sign followed by space character. |
Definition at line 55 of file classify.cc.