Yate: MimeHeaderLine Class Reference

Yate

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
MimeHeaderLine Class Reference

MIME header line. More...

`#include <yatemime.h>`

Inheritance diagram for MimeHeaderLine:

## Public Member Functions
| MimeHeaderLine (const char *name, const String &value, char sep=0)
| MimeHeaderLine (const MimeHeaderLine &original, const char *newName=0)
virtual | ~MimeHeaderLine ()
virtual void * | getObject (const String &name) const
virtual MimeHeaderLine * | clone (const char *newName=0) const
virtual void | buildLine (String &line, bool header=true) const
MimeHeaderLine & | operator= (const char *value)
const ObjList & | params () const
char | separator () const
void | setParam (const char *name, const char *value=0)
void | delParam (const char *name)
const NamedString * | getParam (const char *name) const
Public Member Functions inherited from NamedString
| NamedString (const char *name, const char *value=0)
const String & | name () const
virtual const String & | toString () const
NamedString & | operator= (const char *value)
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
const String & | decodeFlags (unsigned int flags, const TokenDict *tokens, bool unknownflag=true)
const 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 ()
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
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
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 (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 (double value, unsigned int decimals=3)
String & | printf (const char *format,...)
String & | printf (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 & | 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 (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 | uriEscape (char extraEsc=0, const char *noEsc=0) const
String | uriUnescape (int *errptr=0) 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 void | addQuotes (String &str, bool force=false)
static void | delQuotes (String &str, bool force=false)
static String | quote (const String &str, bool force=false)
static String | unquote (const String &str, bool force=false)
static int | findSep (const char *str, char sep, int offs=0)
static void | buildHeaders (String &buf, const ObjList &headers)
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 | 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 | uriUnescape (const char *str, int *errptr=0)
static const String * | atom (const String *&str, const char *val)
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 ()

## Protected Attributes
ObjList | m_params
char | m_separator

## Additional Inherited Members
Public Types inherited from String
enum | Align { Left = 0, Center, Right }
Protected Member Functions inherited from String
virtual void | changed ()

## Detailed Description

MIME header line.

A MIME header line. The NamedString's value contain the first parameter after the header name

## Constructor & Destructor Documentation

MimeHeaderLine | ( | const char * | name,
|  | const String & | value,
|  | char | sep = `0`
| ) |  |

Constructor. Builds a MIME header line from a string buffer. Splits the value into header parameters

Parameters

  name | The header name
  value | The header value
  sep | Optional parameter separator. If 0, the default ';' will be used

MimeHeaderLine | ( | const MimeHeaderLine & | original,
|  | const char * | newName = `0`
| ) |  |

Constructor. Builds this MIME header line from another one

Parameters

  original | Original header line to build from.
  newName | Optional new header name. If 0, the original name will be used

virtual ~MimeHeaderLine | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

static void addQuotes | ( | String & | str,
|  | bool | force = `false`
| ) |  |
| static

Utility function, puts quotes around a string.

Parameters

  str | String to put quotes around.
  force | True to force quoting even if was already quoted

static void buildHeaders | ( | String & | buf,
|  | const ObjList & | headers
| ) |  |
| static

Build a string from a list of MIME header lines. Add a CR/LF terminator after each line

Parameters

  buf | Destination string
  headers | The list with the header lines

Referenced by MimeBody::buildHeaders().

virtual void buildLine | ( | String & | line,
|  | bool | header = `true`
| ) |  | const
| virtual

Build a string line from this MIME header without adding a line separator

Parameters

  line | Destination string
  header | True to add the header in front of line text

Reimplemented in MimeAuthLine.

Referenced by MimeBody::buildHeaders().

virtual MimeHeaderLine* clone | ( | const char * | newName = `0` | ) | const
| virtual

Duplicate this MIME header line.

Parameters

  newName | Optional new header name. If 0, this header's name will be used

Returns
  Copy of this MIME header line

Reimplemented in MimeAuthLine.

void delParam | ( | const char * | name | ) |

Remove a parameter from list

Parameters

  name | Parameter's name

static void delQuotes | ( | String & | str,
|  | bool | force = `false`
| ) |  |
| static

Utility function, removes quotes around a string.

Parameters

  str | String to remove quotes.
  force | True to force unquoting even if wasn't properly quoted

static int findSep | ( | const char * | str,
|  | char | sep,
|  | int | offs = `0`
| ) |  |
| static

Utility function to find a separator not in "quotes" or inside <uri>.

Parameters

  str | Input string used to find the separator.
  sep | The separator to find.
  offs | Starting offset in input string.

Returns
  The position of the separator in input string or -1 if not found.

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

RTTI method, get a pointer to a derived class given the 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 NamedString.

Reimplemented in MimeAuthLine.

const NamedString* getParam | ( | const char * | name | ) | const

Get a header parameter

Parameters

  name | Parameter's name

Returns
  Pointer to the desired parameter or 0 if not found

MimeHeaderLine& operator= | ( | const char * | value | ) |
| inline

Assignement operator. Set the header's value

Parameters

  value | The new headr value

References NamedString::operator=().

const ObjList& params | ( |  | ) | const
| inline

Get the header's parameters

Returns
  This header's list of parameters

static String quote | ( | const String & | str,
|  | bool | force = `false`
| ) |  |
| static

Utility function, puts quotes around a string.

Parameters

  str | String to put quotes around.
  force | True to force quoting even if was already quoted

Returns
  The input string enclosed in quotes.

char separator | ( |  | ) | const
| inline

Get the character used as separator in header line

Returns
  This header's separator

void setParam | ( | const char * | name,
|  | const char * | value = `0`
| ) |  |

Replace the value of an existing parameter or add a new one

Parameters

  name | Parameter's name
  value | Parameter's value

static String unquote | ( | const String & | str,
|  | bool | force = `false`
| ) |  |
| static

Utility function, removes quotes around a string.

Parameters

  str | String to remove quotes around.
  force | True to force unquoting even if wasn't properly quoted

Returns
  The input string with enclosing quotes removed.

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

- yatemime.h