Yate: NamedList Class Reference

Yate

Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
NamedList Class Reference

A named string container class. More...

`#include <yateclass.h>`

Inheritance diagram for NamedList:

## Public Types
enum | DumpFlags { DumpAddSeparator = 0x0001 , DumpForcePrefix = 0x0001 , DumpName = 0x0002 , DumpQuoteName = 0x0004 , DumpEmptyName = 0x0008 , DumpQuoteParamName = 0x0010 , DumpDontQuoteParamValue = 0x0020 }
Public Types inherited from String
enum | Align { Left = 0 , Center , Right }

## Public Member Functions
| NamedList (const char *name)
| NamedList (const NamedList &original)
| NamedList (const char *name, const NamedList &original, const String &prefix)
NamedList & | operator= (const NamedList &value)
virtual void * | getObject (const String &name) const
unsigned int | length () const
unsigned int | count () const
void | clearParams ()
NamedList & | addParam (NamedString *param)
NamedList & | addParam (const char *name, const char *value, bool emptyOK=true)
NamedList & | addParam (const char *name, int64_t value)
NamedList & | addParam (const char *name, uint64_t value)
NamedList & | addParam (const char *name, int32_t value)
NamedList & | addParam (const char *name, uint32_t value)
NamedList & | addParam (const char *name, double value)
NamedList & | addParam (const char *name, bool value)
NamedList & | addParam (const char *name, unsigned int flags, const TokenDict *tokens, bool unknownflag=true)
NamedList & | addParam (const char *name, uint64_t flags, const TokenDict64 *tokens, bool unknownflag=true)
NamedList & | addParamHex (const char *name, const void *buf, unsigned int len, char sep=0)
NamedList & | setParam (NamedString *param)
NamedList & | setParam (const String &name, const char *value)
NamedList & | setParam (const String &name, int64_t value)
NamedList & | setParam (const String &name, uint64_t value)
NamedList & | setParam (const String &name, int32_t value)
NamedList & | setParam (const String &name, uint32_t value)
NamedList & | setParam (const String &name, double value)
NamedList & | setParam (const String &name, bool value)
NamedList & | setParam (const String &name, unsigned int flags, const TokenDict *tokens, bool unknownflag=true)
NamedList & | setParam (const String &name, uint64_t flags, const TokenDict64 *tokens, bool unknownflag=true)
NamedList & | setParamHex (const String &name, const void *buf, unsigned int len, char sep=0)
NamedList & | clearParam (const String &name, char childSep=0, const String *value=0)
NamedList & | clearParam (NamedString *param, bool delParam=true)
NamedList & | copyParam (const NamedList &original, const String &name, char childSep=0)
NamedList & | copyParams (bool replace, const NamedList &original, bool copyUserData=false)
NamedList & | copyParams (const NamedList &original)
NamedList & | copyParams (const NamedList &original, ObjList *list, char childSep=0)
NamedList & | copyParams (const NamedList &original, const String &list, char childSep=0)
NamedList & | copySubParams (const NamedList &original, const String &prefix, bool skipPrefix=true, bool replace=false)
bool | hasSubParams (const char *prefix) const
int | getIndex (const NamedString *param) const
int | getIndex (const String &name) const
NamedString * | getParam (const String &name) const
NamedString * | getParam (unsigned int index) const
const String & | operator[] (const String &name) const
const char * | getValue (const String &name, const char *defvalue=0) const
int | getIntValue (const String &name, int defvalue=0, int minvalue=INT_MIN, int maxvalue=INT_MAX, bool clamp=true) const
int | getIntValue (const String &name, const TokenDict *tokens, int defvalue=0) const
int | getIntValue (const String &name, const TokenDictStr *tokens, int defvalue=0) const
int64_t | getInt64Value (const String &name, int64_t defvalue=0, int64_t minvalue=LLONG_MIN, int64_t maxvalue=LLONG_MAX, bool clamp=true) const
int64_t | getInt64ValueDict (const String &name, const TokenDict64 *tokens, int64_t defvalue=0) const
int64_t | getInt64ValueDict (const String &name, const TokenDictStr64 *tokens, int64_t defvalue=0) const
uint64_t | getUInt64Value (const String &name, uint64_t defvalue=0, uint64_t minvalue=0, uint64_t maxvalue=ULLONG_MAX, bool clamp=true) const
double | getDoubleValue (const String &name, double defvalue=0.0) const
bool | getBoolValue (const String &name, bool defvalue=false) const
int | replaceParams (String &str, bool sqlEsc=false, char extraEsc=0) const
void | dump (String &str, const char *separator, char quote=0, bool force=false) const
bool | dump (String &str, unsigned int flags, const char *separator, const char *nameSep=0, const char *prefix=0, char quote=0) const
ObjList * | paramList ()
const ObjList * | paramList () const
Public Member Functions inherited from String
| String ()
| String (const char *value, int len=-1)
| String (char value, unsigned int repeat=1)
| String (int32_t value)
| String (uint32_t value)
| String (int64_t value)
| String (uint64_t value)
| String (bool value)
| String (double value)
| String (const String &value)
| String (const String *value)
virtual | ~String ()
const char * | c_str () const
const char * | safe () const
const char * | safe (const char *defStr) const
unsigned int | length () const
bool | null () const
int | lenUtf8 (uint32_t maxChar=0x10ffff, bool overlong=false) const
int | fixUtf8 (const char *replace=0, uint32_t maxChar=0x10ffff, bool overlong=false)
unsigned int | encodeFlags (const TokenDict *tokens) const
uint64_t | encodeFlags (const TokenDict64 *tokens) const
String & | decodeFlags (unsigned int flags, const TokenDict *tokens, bool unknownflag=true)
String & | decodeFlags (uint64_t flags, const TokenDict64 *tokens, bool unknownflag=true)
bool | checkBOM () const
bool | stripBOM ()
unsigned int | hash () const
void | clear ()
char | at (int index) const
String | substr (int offs, int len=-1) const
String & | trimBlanks ()
String & | trimSpaces ()
virtual const String & | toString () const
int | toInteger (int defvalue=0, int base=0, int minvalue=INT_MIN, int maxvalue=INT_MAX, bool clamp=true) const
int | toInteger (const TokenDict *tokens, int defvalue=0, int base=0) const
int | toInteger (const TokenDictStr *tokens, int defvalue=0, int base=0) const
long int | toLong (long int defvalue=0, int base=0, long int minvalue=LONG_MIN, long int maxvalue=LONG_MAX, bool clamp=true) const
int64_t | toInt64 (int64_t defvalue=0, int base=0, int64_t minvalue=LLONG_MIN, int64_t maxvalue=LLONG_MAX, bool clamp=true) const
int64_t | toInt64Dict (const TokenDict64 *tokens, int64_t defvalue=0, int base=0) const
int64_t | toInt64Dict (const TokenDictStr64 *tokens, int64_t defvalue=0, int base=0) const
uint64_t | toUInt64 (uint64_t defvalue=0, int base=0, uint64_t minvalue=0, uint64_t maxvalue=ULLONG_MAX, bool clamp=true) const
double | toDouble (double defvalue=0.0) const
bool | toBoolean (bool defvalue=false) const
bool | isBoolean () const
String & | toUpper ()
String & | toLower ()
char | operator[] (signed int index) const
char | operator[] (unsigned int index) const
| operator const char * () const
String & | assign (const char *value, int len=-1)
String & | assign (char value, unsigned int repeat=1)
String & | hexify (const void *data, unsigned int len, char sep=0, bool upCase=false)
String & | operator= (const String &value)
String & | operator= (const String *value)
String & | operator= (const char *value)
String & | operator= (char value)
String & | operator= (int32_t value)
String & | operator= (uint32_t value)
String & | operator= (int64_t value)
String & | operator= (uint64_t value)
String & | operator= (bool value)
String & | operator= (double value)
String & | operator+= (const char *value)
String & | operator+= (char value)
String & | operator+= (int32_t value)
String & | operator+= (uint32_t value)
String & | operator+= (int64_t value)
String & | operator+= (uint64_t value)
String & | operator+= (bool value)
String & | operator+= (double value)
bool | operator== (const char *value) const
bool | operator!= (const char *value) const
bool | operator== (const String &value) const
bool | operator!= (const String &value) const
bool | operator&= (const char *value) const
bool | operator|= (const char *value) const
String & | operator<< (const char *value)
String & | operator<< (char value)
String & | operator<< (int32_t value)
String & | operator<< (uint32_t value)
String & | operator<< (int64_t value)
String & | operator<< (uint64_t value)
String & | operator<< (bool value)
String & | operator<< (double value)
String & | operator>> (const char *skip)
String & | operator>> (char &store)
String & | operator>> (UChar &store)
String & | operator>> (int &store)
String & | operator>> (unsigned int &store)
String & | operator>> (bool &store)
String & | append (const char *value, int len)
String & | append (const char *value, const char *separator=0, bool force=false)
String & | append (const ObjList *list, const char *separator=0, bool force=false)
String & | append (const ObjList &list, const char *separator=0, bool force=false)
String & | append (char value, unsigned int len=1)
String & | append (double value, unsigned int decimals=3)
String & | insert (unsigned int pos, const char *value, int len=-1)
String & | insert (unsigned int pos, char value, unsigned int len=1)
String & | printf (const char *format,...)
String & | printf (unsigned int length, const char *format,...)
String & | printfAppend (const char *format,...)
String & | printfAppend (unsigned int length, const char *format,...)
String & | appendFixed (unsigned int fixedLength, const char *str, unsigned int len=-1, char fill=' ', int align=Left)
String & | appendFixed (unsigned int fixedLength, const String &str, char fill=' ', int align=Left)
int | find (char what, unsigned int offs=0) const
int | find (const char *what, unsigned int offs=0) const
int | rfind (char what) const
int | rfind (const char *what) const
bool | startsWith (const char *what, bool wordBreak=false, bool caseInsensitive=false) const
bool | endsWith (const char *what, bool wordBreak=false, bool caseInsensitive=false) const
bool | startSkip (const char *what, bool wordBreak=true, bool caseInsensitive=false)
String & | replaceChars (const char *what, const char *repl, bool inPlace=false, int wLen=-1, int rLen=-1, bool *chg=0)
String & | removeChars (const char *what, int wLen=-1, bool *chg=0)
String & | extractTo (const char *sep, String &store)
String & | extractTo (const char *sep, bool &store)
String & | extractTo (const char *sep, int &store, int base=0)
String & | extractTo (const char *sep, int &store, const TokenDict *tokens, int base=0)
String & | extractTo (const char *sep, double &store)
virtual bool | matches (const String &value) const
bool | matches (const Regexp &rexp)
int | matchOffset (int index=0) const
int | matchLength (int index=0) const
String | matchString (int index=0) const
String | replaceMatches (const String &templ) const
int | matchCount () const
ObjList * | split (ObjList &list, char separator, bool emptyOK=true) const
ObjList * | split (ObjList &list, const Regexp &reg, bool emptyOK=true) const
ObjList * | split (char separator, bool emptyOK=true) const
ObjList * | split (const Regexp &reg, bool emptyOK=true) const
String | msgEscape (char extraEsc=0) const
String | msgUnescape (int *errptr=0, char extraEsc=0) const
String | sqlEscape (char extraEsc=0) const
String & | uriEscapeTo (String &buf, char extraEsc=0, const char *noEsc=0) const
String | uriEscape (char extraEsc=0, const char *noEsc=0) const
String & | uriUnescapeTo (String &buf, bool setPartial=false, int *errptr=0) const
String & | uriUnescapeStr (bool setPartial=false, int *errptr=0)
String | uriUnescape (int *errptr=0, bool setPartial=true) const
Public Member Functions inherited from GenObject
| GenObject ()
virtual | ~GenObject ()
virtual bool | alive () const
virtual void | destruct ()
virtual const String & | traceId () const
NamedCounter * | getObjCounter () const
NamedCounter * | setObjCounter (NamedCounter *counter)

## Static Public Member Functions
static const NamedList & | empty ()
Static Public Member Functions inherited from String
static const String & | empty ()
static const char * | boolText (bool value)
static int | lenUtf8 (const char *value, uint32_t maxChar=0x10ffff, bool overlong=false)
static bool | checkBOM (const char *str)
static bool | stripBOM (const char *&str)
static bool | stripBOM (char *&str)
static unsigned int | hash (const char *value, unsigned int h=0)
static String | msgEscape (const char *str, char extraEsc=0)
static String | msgUnescape (const char *str, int *errptr=0, char extraEsc=0)
static String | sqlEscape (const char *str, char extraEsc=0)
static String & | uriEscapeTo (String &buf, const char *str, char extraEsc=0, const char *noEsc=0)
static String & | uriEscapeTo (String &buf, const char *str, const char *extraEsc, const char *noEsc=0)
static String | uriEscape (const char *str, char extraEsc=0, const char *noEsc=0)
static String | uriEscape (const char *str, const char *extraEsc, const char *noEsc=0)
static String & | uriUnescapeTo (String &buf, const char *str, bool setPartial=false, int *errptr=0)
static String | uriUnescape (const char *str, int *errptr=0, bool setPartial=true)
static const String * | atom (const String *&str, const char *val)
static unsigned int | c_starts_with (const char *str, const char *what, int lenStr=-1, int lenWhat=-1, bool caseInsensitive=false)
static unsigned int | c_ends_with (const char *str, const char *what, int lenStr=-1, int lenWhat=-1, bool caseInsensitive=false)
static unsigned int | c_skip (const char *&str, const char *what, int lenStr=-1, int lenWhat=-1, bool caseInsensitive=false)
static unsigned int | c_skip_chars (const char *&str, const char *what, int len=-1, bool skipFound=true)
static char * | c_replace_chars (const char *str, const char *what, const char *repl=0, bool inPlace=false, int wLen=-1, int rLen=-1, bool *chg=0)
Static Public Member Functions inherited from GenObject
static void * | getObject (const String &name, const GenObject *obj)
static bool | getObjCounting ()
static void | setObjCounting (bool enable)
static NamedCounter * | getObjCounter (const String &name, bool create=true)
static ObjList & | getObjCounters ()

## Friends
class | NamedIterator

## Additional Inherited Members
Protected Member Functions inherited from String
virtual void | changed ()

## Detailed Description

A named string container class.

This class holds a named list of named strings

## Member Enumeration Documentation

## ◆ DumpFlags

enum DumpFlags

List dump flags

## Constructor & Destructor Documentation

## ◆ NamedList() [1/3]

NamedList | ( | const char * | name | ) |
| explicit

Creates a new named list.

Parameters

  name | Name of the list - must not be NULL or empty

## ◆ NamedList() [2/3]

NamedList | ( | const NamedList & | original | ) |

Copy constructor

Parameters

  original | Named list we are copying

## ◆ NamedList() [3/3]

NamedList | ( | const char * | name,
|  | const NamedList & | original,
|  | const String & | prefix )

Creates a named list with subparameters of another list.

Parameters

  name | Name of the list - must not be NULL or empty
  original | Named list to copy parameters from
  prefix | Prefix to match and remove from parameter names

## Member Function Documentation

## ◆ addParam() [1/10]

NamedList & addParam | ( | const char * | name,
|  | bool | value )
| inline

Add a named string in the parameter list from boolean value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

References String::boolText().

## ◆ addParam() [2/10]

NamedList & addParam | ( | const char * | name,
|  | const char * | value,
|  | bool | emptyOK = true )

Add a named string to the parameter list.

Parameters

  name | Name of the new string
  value | Value of the new string
  emptyOK | True to always add parameter, false to skip empty values

Returns
  Reference to this NamedList

## ◆ addParam() [3/10]

NamedList & addParam | ( | const char * | name,
|  | double | value )
| inline

Append a named string in the parameter list from floating point value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ addParam() [4/10]

NamedList & addParam | ( | const char * | name,
|  | int32_t | value )
| inline

Append a named string in the parameter list from signed integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ addParam() [5/10]

NamedList & addParam | ( | const char * | name,
|  | int64_t | value )
| inline

Append a named string in the parameter list from signed integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ addParam() [6/10]

NamedList & addParam | ( | const char * | name,
|  | uint32_t | value )
| inline

Append a named string in the parameter list from unsigned integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ addParam() [7/10]

NamedList & addParam | ( | const char * | name,
|  | uint64_t | flags,
|  | const TokenDict64 * | tokens,
|  | bool | unknownflag = true )
| inline

Add a named string in the parameter list from encoded flags

Parameters

  name | Name of the string
  flags | The flags
  tokens | The dictionary containing the flags
  unknownflag | True (default) to add unknown flags

Returns
  Reference to this NamedList

References String::decodeFlags().

## ◆ addParam() [8/10]

NamedList & addParam | ( | const char * | name,
|  | uint64_t | value )
| inline

Append a named string in the parameter list from unsigned integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ addParam() [9/10]

NamedList & addParam | ( | const char * | name,
|  | unsigned int | flags,
|  | const TokenDict * | tokens,
|  | bool | unknownflag = true )
| inline

Add a named string in the parameter list from encoded flags

Parameters

  name | Name of the string
  flags | The flags
  tokens | The dictionary containing the flags
  unknownflag | True (default) to add unknown flags

Returns
  Reference to this NamedList

References String::decodeFlags().

## ◆ addParam() [10/10]

NamedList & addParam | ( | NamedString * | param | ) |

Add a named string to the parameter list.

Parameters

  param | Parameter to add

Returns
  Reference to this NamedList

Referenced by MucRoom::buildMucRoom(), and Channel::putStatus().

## ◆ addParamHex()

NamedList & addParamHex | ( | const char * | name,
|  | const void * | buf,
|  | unsigned int | len,
|  | char | sep = 0 )
| inline

Hexify a buffer and add it to parameters list

Parameters

  name | Parameter name
  buf | Buffer to add
  len | Buffer length
  sep | Optiona separamtor (defaults to space)

Returns
  Reference to this NamedList

References String::hexify().

## ◆ clearParam() [1/2]

NamedList & clearParam | ( | const String & | name,
|  | char | childSep = 0,
|  | const String * | value = 0 )

Clears all instances of a named string in the parameter list.

Parameters

  name | Name of the string to remove
  childSep | If set clears all child parameters in format name+childSep+anything
  value | Optional pointer to string used to match parameter's value (may be a regexp)

Returns
  Reference to this NamedList

Referenced by XmlElement::removeAttribute().

## ◆ clearParam() [2/2]

NamedList & clearParam | ( | NamedString * | param,
|  | bool | delParam = true )

Remove a specific parameter

Parameters

  param | Pointer to parameter to remove
  delParam | True to destroy the parameter

Returns
  Reference to this NamedList

## ◆ clearParams()

void clearParams | ( |  | ) |
| inline

Clear all parameters

Referenced by XmlSaxParser::resetParsed().

## ◆ copyParam()

NamedList & copyParam | ( | const NamedList & | original,
|  | const String & | name,
|  | char | childSep = 0 )

Copy a parameter from another NamedList, clears it if not present there

Parameters

  original | NamedList to copy the parameter from
  name | Name of the string to copy or clear
  childSep | If set copies all child parameters in format name+childSep+anything

Returns
  Reference to this NamedList

## ◆ copyParams() [1/4]

NamedList & copyParams | ( | bool | replace,
|  | const NamedList & | original,
|  | bool | copyUserData = false )

Copy all parameters from another NamedList, does not clear list first

Parameters

  replace | Replace (set params) or append (add param)
  original | NamedList to copy the parameters from
  copyUserData | Copy user data for known objects (DataBlock, XmlElement)

Returns
  Reference to this NamedList

Referenced by ClientFile::ClientFile(), SharedVars::copy(), Channel::copyChanParams(), and XmlElement::setAttributes().

## ◆ copyParams() [2/4]

NamedList & copyParams | ( | const NamedList & | original | ) |
| inline

Copy all parameters from another NamedList, does not clear list first

Parameters

  original | NamedList to copy the parameters from

Returns
  Reference to this NamedList

## ◆ copyParams() [3/4]

NamedList & copyParams | ( | const NamedList & | original,
|  | const String & | list,
|  | char | childSep = 0 )

Copy multiple parameters from another NamedList, clears it if not present there

Parameters

  original | NamedList to copy the parameter from
  list | Comma separated list of parameters to copy or clear
  childSep | If set copies all child parameters in format name+childSep+anything

Returns
  Reference to this NamedList

## ◆ copyParams() [4/4]

NamedList & copyParams | ( | const NamedList & | original,
|  | ObjList * | list,
|  | char | childSep = 0 )

Copy multiple parameters from another NamedList, clears them if not present there

Parameters

  original | NamedList to copy the parameters from
  list | List of objects (usually String) whose name (blanks stripped) is used as parameters names
  childSep | If set copies all child parameters in format name+childSep+anything

Returns
  Reference to this NamedList

## ◆ copySubParams()

NamedList & copySubParams | ( | const NamedList & | original,
|  | const String & | prefix,
|  | bool | skipPrefix = true,
|  | bool | replace = false )

Copy subparameters from another list

Parameters

  original | Named list to copy parameters from
  prefix | Prefix to match in parameter names, must not be NULL
  skipPrefix | Skip over the prefix when building new parameter name
  replace | Set to true to replace list parameter instead of adding a new one

Returns
  Reference to this NamedList

Referenced by SharedVars::copy(), XmlElement::setAttributes(), and Channel::setChanParams().

## ◆ count()

unsigned int count | ( |  | ) | const
| inline

Get the number of non-null parameters

Returns
  Count of existing named strings

## ◆ dump() [1/2]

void dump | ( | String & | str,
|  | const char * | separator,
|  | char | quote = 0,
|  | bool | force = false ) const

Dumps the name and all parameters to a string in a human readable format. No escaping takes place so this method should be used for debugging only

Parameters

  str | String to which the name and parameters are appended
  separator | Separator string to use before each parameter
  quote | String quoting character, usually single or double quote
  force | True to insert the separator even in an empty string

## ◆ dump() [2/2]

bool dump | ( | String & | str,
|  | unsigned int | flags,
|  | const char * | separator,
|  | const char * | nameSep = 0,
|  | const char * | prefix = 0,
|  | char | quote = 0 ) const

List dump

Parameters

  str | String to which the name and parameters are appended
  flags | Dump flags
  separator | Separator string to use before each parameter
  nameSep | Name/value separator, use "=" if NULL
  prefix | String to be added to destination before dumped data
  quote | String quoting character, usually single or double quote

Returns
  True if destination string changed, false otherwise

## ◆ empty()

static const NamedList & empty | ( |  | ) |
| static

A static empty named list

Returns
  Reference to a static empty named list

## ◆ getBoolValue()

bool getBoolValue | ( | const String & | name,
|  | bool | defvalue = false ) const

Retrieve the boolean value of a parameter.

Parameters

  name | Name of parameter to locate
  defvalue | Default value to return if not found

Returns
  The boolean value contained in the named parameter or the default

Referenced by ClientContact::local(), ClientContact::remote(), and ClientAccount::startup().

## ◆ getDoubleValue()

double getDoubleValue | ( | const String & | name,
|  | double | defvalue = 0.0 ) const

Retrieve the floating point value of a parameter.

Parameters

  name | Name of parameter to locate
  defvalue | Default value to return if not found

Returns
  The number contained in the named parameter or the default

## ◆ getIndex() [1/2]

int getIndex | ( | const NamedString * | param | ) | const

Get the index of a named string in the parameter list.

Parameters

  param | Pointer to the parameter to locate

Returns
  Index of the named string or -1 if not found

## ◆ getIndex() [2/2]

int getIndex | ( | const String & | name | ) | const

Get the index of first matching named string in the parameter list.

Parameters

  name | Name of parameter to locate

Returns
  Index of the first matching named string or -1 if not found

## ◆ getInt64Value()

int64_t getInt64Value | ( | const String & | name,
|  | int64_t | defvalue = 0,
|  | int64_t | minvalue = LLONG_MIN,
|  | int64_t | maxvalue = LLONG_MAX,
|  | bool | clamp = true ) const

Retrieve the 64-bit numeric value of a parameter.

Parameters

  name | Name of parameter to locate
  defvalue | Default value to return if not found
  minvalue | Minimum value allowed for the parameter
  maxvalue | Maximum value allowed for the parameter
  clamp | Control the out of bound values: true to adjust to the nearest bound, false to return the default value

Returns
  The number contained in the named parameter or the default

## ◆ getInt64ValueDict() [1/2]

int64_t getInt64ValueDict | ( | const String & | name,
|  | const TokenDict64 * | tokens,
|  | int64_t | defvalue = 0 ) const

Retrieve the 64bit numeric value of a parameter trying first a table lookup.

Parameters

  name | Name of parameter to locate
  tokens | A pointer to an array of tokens to try to lookup
  defvalue | Default value to return if not found

Returns
  The number contained in the named parameter or the default

## ◆ getInt64ValueDict() [2/2]

int64_t getInt64ValueDict | ( | const String & | name,
|  | const TokenDictStr64 * | tokens,
|  | int64_t | defvalue = 0 ) const

Retrieve the 64bit numeric value of a parameter trying first a table lookup.

Parameters

  name | Name of parameter to locate
  tokens | A pointer to an array of String tokens to try to lookup
  defvalue | Default value to return if not found

Returns
  The number contained in the named parameter or the default

## ◆ getIntValue() [1/3]

int getIntValue | ( | const String & | name,
|  | const TokenDict * | tokens,
|  | int | defvalue = 0 ) const

Retrieve the numeric value of a parameter trying first a table lookup.

Parameters

  name | Name of parameter to locate
  tokens | A pointer to an array of tokens to try to lookup
  defvalue | Default value to return if not found

Returns
  The number contained in the named parameter or the default

## ◆ getIntValue() [2/3]

int getIntValue | ( | const String & | name,
|  | const TokenDictStr * | tokens,
|  | int | defvalue = 0 ) const

Retrieve the numeric value of a parameter trying first a table lookup.

Parameters

  name | Name of parameter to locate
  tokens | A pointer to an array of String tokens to try to lookup
  defvalue | Default value to return if not found

Returns
  The number contained in the named parameter or the default

## ◆ getIntValue() [3/3]

int getIntValue | ( | const String & | name,
|  | int | defvalue = 0,
|  | int | minvalue = INT_MIN,
|  | int | maxvalue = INT_MAX,
|  | bool | clamp = true ) const

Retrieve the numeric value of a parameter.

Parameters

  name | Name of parameter to locate
  defvalue | Default value to return if not found
  minvalue | Minimum value allowed for the parameter
  maxvalue | Maximum value allowed for the parameter
  clamp | Control the out of bound values: true to adjust to the nearest bound, false to return the default value

Returns
  The number contained in the named parameter or the default

## ◆ getObject()

virtual void * getObject | ( | const String & | name | ) | const
| virtual

Get a pointer to a derived class given that class name

Parameters

  name | Name of the class we are asking for

Returns
  Pointer to the requested class or NULL if this object doesn't implement it

Reimplemented from String.

Reimplemented in Message.

## ◆ getParam() [1/2]

NamedString * getParam | ( | const String & | name | ) | const

Locate a named string in the parameter list.

Parameters

  name | Name of parameter to locate

Returns
  A pointer to the named string or NULL.

Referenced by XmlElement::getAttribute(), ClientContact::haveShare(), and MatchingItemRandom::runMatchListParam().

## ◆ getParam() [2/2]

NamedString * getParam | ( | unsigned int | index | ) | const

Locate a named string in the parameter list.

Parameters

  index | Index of the parameter to locate

Returns
  A pointer to the named string or NULL.

## ◆ getUInt64Value()

uint64_t getUInt64Value | ( | const String & | name,
|  | uint64_t | defvalue = 0,
|  | uint64_t | minvalue = 0,
|  | uint64_t | maxvalue = ULLONG_MAX,
|  | bool | clamp = true ) const

Retrieve the unsigned 64-bit numeric value of a parameter.

Parameters

  name | Name of parameter to locate
  defvalue | Default value to return if not found
  minvalue | Minimum value allowed for the parameter
  maxvalue | Maximum value allowed for the parameter
  clamp | Control the out of bound values: true to adjust to the nearest bound, false to return the default value

Returns
  The number contained in the named parameter or the default

## ◆ getValue()

const char * getValue | ( | const String & | name,
|  | const char * | defvalue = 0 ) const

Retrieve the value of a named parameter.

Parameters

  name | Name of parameter to locate
  defvalue | Default value to return if not found

Returns
  The string contained in the named parameter or the default

Referenced by XmlElement::attribute().

## ◆ hasSubParams()

bool hasSubParams | ( | const char * | prefix | ) | const

Check if we have a parameter that starts with prefix

Parameters

  prefix | Prefix to match in parameter name, must not be NULL

Returns
  True if a parameter starts with prefix

## ◆ length()

unsigned int length | ( |  | ) | const
| inline

Get the number of parameters

Returns
  Count of named strings

## ◆ operator=()

NamedList & operator= | ( | const NamedList & | value | ) |

Assignment operator

Parameters

  value | New name and parameters to assign

Returns
  Reference to this NamedList

Referenced by DataFormat::operator=().

## ◆ operator[]()

const String & operator[] | ( | const String & | name | ) | const

Parameter access operator

Parameters

  name | Name of the parameter to return

Returns
  String value of the parameter, String::empty() if missing

## ◆ paramList() [1/2]

ObjList * paramList | ( |  | ) |
| inline

Get the parameters list

Returns
  Pointer to the parameters list

## ◆ paramList() [2/2]

const ObjList * paramList | ( |  | ) | const
| inline

Get the parameters list

Returns
  Pointer to the parameters list

## ◆ replaceParams()

int replaceParams | ( | String & | str,
|  | bool | sqlEsc = false,
|  | char | extraEsc = 0 ) const

Replaces all ${paramname} in a String with the corresponding parameters

Parameters

  str | String in which the replacements will be made
  sqlEsc | True to apply SQL escaping to parameter values
  extraEsc | Character to escape other than the SQL default ones

Returns
  Number of replacements made, -1 if an error occured

## ◆ setParam() [1/10]

NamedList & setParam | ( | const String & | name,
|  | bool | value )
| inline

Set a named string in the parameter list from boolean value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

References String::boolText().

## ◆ setParam() [2/10]

NamedList & setParam | ( | const String & | name,
|  | const char * | value )

Set a named string in the parameter list.

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ setParam() [3/10]

NamedList & setParam | ( | const String & | name,
|  | double | value )

Set a named string in the parameter list from floating point value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ setParam() [4/10]

NamedList & setParam | ( | const String & | name,
|  | int32_t | value )

Set a named string in the parameter list from signed integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ setParam() [5/10]

NamedList & setParam | ( | const String & | name,
|  | int64_t | value )

Set a named string in the parameter list from signed integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ setParam() [6/10]

NamedList & setParam | ( | const String & | name,
|  | uint32_t | value )

Set a named string in the parameter list from unsigned integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ setParam() [7/10]

NamedList & setParam | ( | const String & | name,
|  | uint64_t | flags,
|  | const TokenDict64 * | tokens,
|  | bool | unknownflag = true )

Set a named string in the parameter list from encoded flags

Parameters

  name | Name of the string
  flags | The flags
  tokens | The dictionary containing the flags
  unknownflag | True (default) to add unknown flags

Returns
  Reference to this NamedList

## ◆ setParam() [8/10]

NamedList & setParam | ( | const String & | name,
|  | uint64_t | value )

Set a named string in the parameter list from unsigned integer value

Parameters

  name | Name of the string
  value | Value of the string

Returns
  Reference to this NamedList

## ◆ setParam() [9/10]

NamedList & setParam | ( | const String & | name,
|  | unsigned int | flags,
|  | const TokenDict * | tokens,
|  | bool | unknownflag = true )

Set a named string in the parameter list from encoded flags

Parameters

  name | Name of the string
  flags | The flags
  tokens | The dictionary containing the flags
  unknownflag | True (default) to add unknown flags

Returns
  Reference to this NamedList

## ◆ setParam() [10/10]

NamedList & setParam | ( | NamedString * | param | ) |

Set a named string in the parameter list.

Parameters

  param | Parameter to set or add

Returns
  Reference to this NamedList

Referenced by Channel::putStatus(), XmlElement::setAttribute(), XmlElement::setAttributeValid(), ClientContact::setLocal(), ClientContact::setRemote(), and ClientAccount::startup().

## ◆ setParamHex()

NamedList & setParamHex | ( | const String & | name,
|  | const void * | buf,
|  | unsigned int | len,
|  | char | sep = 0 )

Set a named string in the parameter list.

Parameters

  name | Name of the string
  buf | Buffer to hexify
  len | Buffer length
  sep | Optional separator

Returns
  Reference to this NamedList

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

- yateclass.h