reSIProcate/stack  9694
Public Types | Public Member Functions | Private Attributes | Static Private Attributes
resip::Token Class Reference

Represents the "token" element in the RFC 3261 grammar. More...

#include <Token.hxx>

Inheritance diagram for resip::Token:
Inheritance graph
[legend]
Collaboration diagram for resip::Token:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { commaHandling = CommasAllowedOutputCommas }

Public Member Functions

 Token ()
 Token (const Data &d)
 Token (const HeaderFieldValue &hfv, Headers::Type type, PoolBase *pool=0)
 Token (const Token &orig, PoolBase *pool=0)
Tokenoperator= (const Token &)
bool isEqual (const Token &rhs) const
bool operator== (const Token &rhs) const
bool operator!= (const Token &rhs) const
bool operator< (const Token &rhs) const
const Datavalue () const
 Gets the value (ie; no parameters) of this Token as a Data&.
Datavalue ()
virtual void parse (ParseBuffer &pb)
virtual ParserCategoryclone () const
virtual ParserCategoryclone (void *location) const
virtual ParserCategoryclone (PoolBase *pool) const
virtual EncodeStreamencodeParsed (EncodeStream &str) const
virtual ParametercreateParam (ParameterTypes::Type type, ParseBuffer &pb, const std::bitset< 256 > &terminators, PoolBase *pool)
bool exists (const Param< Token > &paramType) const
void remove (const Param< Token > &paramType)
 defineParam (text,"text", ExistsOrDataParameter,"RFC 3840")
 defineParam (dAlg,"d-alg", DataParameter,"RFC 3329")
 defineParam (dQop,"d-qop", DataParameter,"RFC 3329")
 defineParam (dVer,"d-ver", QuotedDataParameter,"RFC 3329")
 defineParam (expires,"expires", UInt32Parameter,"RFC 3261")
 defineParam (filename,"filename", DataParameter,"RFC 2183")
 defineParam (fromTag,"from-tag", DataParameter,"RFC 4235")
 defineParam (handling,"handling", DataParameter,"RFC 3261")
 defineParam (id,"id", DataParameter,"RFC 3265")
 defineParam (q,"q", QValueParameter,"RFC 3261")
 defineParam (reason,"reason", DataParameter,"RFC 3265")
 defineParam (retryAfter,"retry-after", UInt32Parameter,"RFC 3265")
 defineParam (toTag,"to-tag", DataParameter,"RFC 4235")
 defineParam (extension,"ext", DataParameter,"RFC 3966")
 defineParam (profileType,"profile-type", DataParameter,"RFC 6080")
 defineParam (vendor,"vendor", QuotedDataParameter,"RFC 6080")
 defineParam (model,"model", QuotedDataParameter,"RFC 6080")
 defineParam (version,"version", QuotedDataParameter,"RFC 6080")
 defineParam (effectiveBy,"effective-by", UInt32Parameter,"RFC 6080")
 defineParam (document,"document", DataParameter,"draft-ietf-sipping-config-framework-07 (removed in 08)")
 defineParam (appId,"app-id", DataParameter,"draft-ietf-sipping-config-framework-05 (renamed to auid in 06, which was then removed in 08)")
 defineParam (networkUser,"network-user", DataParameter,"draft-ietf-sipping-config-framework-11 (removed in 12)")
 defineParam (require,"require", DataParameter,"RFC 5373")

Private Attributes

Data mValue

Static Private Attributes

static ParameterTypes::Factory ParameterFactories [ParameterTypes::MAX_PARAMETER] = {0}

Detailed Description

Represents the "token" element in the RFC 3261 grammar.

Definition at line 17 of file Token.hxx.


Member Enumeration Documentation

anonymous enum
Enumerator:
commaHandling 

Definition at line 20 of file Token.hxx.


Constructor & Destructor Documentation

Token::Token ( )

Definition at line 21 of file Token.cxx.

Referenced by clone().

Token::Token ( const Data d) [explicit]

Definition at line 26 of file Token.cxx.

   : ParserCategory(),
     mValue(d) 
{}
Token::Token ( const HeaderFieldValue hfv,
Headers::Type  type,
PoolBase pool = 0 
)

Definition at line 31 of file Token.cxx.

   : ParserCategory(hfv, type, pool), 
     mValue() 
{}
Token::Token ( const Token orig,
PoolBase pool = 0 
)

Definition at line 36 of file Token.cxx.

   : ParserCategory(rhs, pool),
     mValue(rhs.mValue)
{}

Member Function Documentation

ParserCategory * Token::clone ( ) const [virtual]

Implements resip::ParserCategory.

Definition at line 101 of file Token.cxx.

References Token().

{
   return new Token(*this);
}

Here is the call graph for this function:

ParserCategory * Token::clone ( void *  location) const [virtual]

Implements resip::ParserCategory.

Definition at line 107 of file Token.cxx.

References Token().

{
   return new (location) Token(*this);
}

Here is the call graph for this function:

ParserCategory * Token::clone ( PoolBase pool) const [virtual]

Implements resip::ParserCategory.

Definition at line 113 of file Token.cxx.

References Token().

{
   return new (pool) Token(*this, pool);
}

Here is the call graph for this function:

Parameter * Token::createParam ( ParameterTypes::Type  type,
ParseBuffer pb,
const std::bitset< 256 > &  terminators,
PoolBase pool 
) [virtual]
resip::Token::defineParam ( text  ,
"text"  ,
ExistsOrDataParameter  ,
"RFC 3840"   
)
resip::Token::defineParam ( dAlg  ,
"d-alg"  ,
DataParameter  ,
"RFC 3329"   
)
resip::Token::defineParam ( dQop  ,
"d-qop"  ,
DataParameter  ,
"RFC 3329"   
)
resip::Token::defineParam ( dVer  ,
"d-ver"  ,
QuotedDataParameter  ,
"RFC 3329"   
)
resip::Token::defineParam ( expires  ,
"expires"  ,
UInt32Parameter  ,
"RFC 3261"   
)
resip::Token::defineParam ( filename  ,
"filename"  ,
DataParameter  ,
"RFC 2183"   
)
resip::Token::defineParam ( fromTag  ,
"from-tag"  ,
DataParameter  ,
"RFC 4235"   
)
resip::Token::defineParam ( handling  ,
"handling"  ,
DataParameter  ,
"RFC 3261"   
)
resip::Token::defineParam ( id  ,
"id"  ,
DataParameter  ,
"RFC 3265"   
)
resip::Token::defineParam ( ,
"q"  ,
QValueParameter  ,
"RFC 3261"   
)
resip::Token::defineParam ( reason  ,
"reason"  ,
DataParameter  ,
"RFC 3265"   
)
resip::Token::defineParam ( retryAfter  ,
"retry-after"  ,
UInt32Parameter  ,
"RFC 3265"   
)
resip::Token::defineParam ( toTag  ,
"to-tag"  ,
DataParameter  ,
"RFC 4235"   
)
resip::Token::defineParam ( extension  ,
"ext"  ,
DataParameter  ,
"RFC 3966"   
)
resip::Token::defineParam ( profileType  ,
"profile-type ,
DataParameter  ,
"RFC 6080"   
)
resip::Token::defineParam ( vendor  ,
"vendor"  ,
QuotedDataParameter  ,
"RFC 6080"   
)
resip::Token::defineParam ( model  ,
"model"  ,
QuotedDataParameter  ,
"RFC 6080"   
)
resip::Token::defineParam ( version  ,
"version"  ,
QuotedDataParameter  ,
"RFC 6080"   
)
resip::Token::defineParam ( effectiveBy  ,
"effective-by"  ,
UInt32Parameter  ,
"RFC 6080"   
)
resip::Token::defineParam ( document  ,
"document"  ,
DataParameter  ,
"draft-ietf-sipping-config-framework-07 (removed in 08)"   
)
resip::Token::defineParam ( appId  ,
"app-id"  ,
DataParameter  ,
"draft-ietf-sipping-config-framework-05 (renamed to auid in 06, which was then removed in 08)"   
)
resip::Token::defineParam ( networkUser  ,
"network-user"  ,
DataParameter  ,
"draft-ietf-sipping-config-framework-11 (removed in 12)"   
)
resip::Token::defineParam ( require  ,
"require"  ,
DataParameter  ,
"RFC 5373"   
)
EncodeStream & Token::encodeParsed ( EncodeStream str) const [virtual]

Implements resip::LazyParser.

Definition at line 119 of file Token.cxx.

References resip::ParserCategory::encodeParameters(), and mValue.

{
   str << mValue;
   encodeParameters(str);
   return str;
}

Here is the call graph for this function:

bool Token::exists ( const Param< Token > &  paramType) const

Definition at line 139 of file Token.cxx.

References resip::LazyParser::checkParsed(), resip::ParserCategory::getParameterByEnum(), and resip::ParamBase::getTypeNum().

Referenced by main().

{
    checkParsed();
    bool ret = getParameterByEnum(paramType.getTypeNum()) != NULL;
    return ret;
}

Here is the call graph for this function:

bool Token::isEqual ( const Token rhs) const

Definition at line 53 of file Token.cxx.

References value().

{
   return (value() == rhs.value());
}

Here is the call graph for this function:

bool Token::operator!= ( const Token rhs) const

Definition at line 65 of file Token.cxx.

References value().

{
   return (value() != rhs.value());
}

Here is the call graph for this function:

bool Token::operator< ( const Token rhs) const

Definition at line 71 of file Token.cxx.

References value().

{
   return (value() < rhs.value());
}

Here is the call graph for this function:

Token & Token::operator= ( const Token rhs)

Definition at line 42 of file Token.cxx.

References mValue.

{
   if (this != &rhs)
   {
      ParserCategory::operator=(rhs);
      mValue = rhs.mValue;
   }
   return *this;
}
bool Token::operator== ( const Token rhs) const

Definition at line 59 of file Token.cxx.

References value().

{
   return (value() == rhs.value());
}

Here is the call graph for this function:

void Token::parse ( ParseBuffer pb) [virtual]
void Token::remove ( const Param< Token > &  paramType)

Definition at line 147 of file Token.cxx.

References resip::LazyParser::checkParsed(), resip::ParamBase::getTypeNum(), and resip::ParserCategory::removeParameterByEnum().

Here is the call graph for this function:

const Data & Token::value ( ) const

Gets the value (ie; no parameters) of this Token as a Data&.

Definition at line 77 of file Token.cxx.

References resip::LazyParser::checkParsed(), and mValue.

Referenced by isEqual(), main(), resip::Helper::make405(), operator!=(), operator<(), operator==(), and resip::TuIM::sendNotify().

{
   checkParsed(); 
   return mValue;
}

Here is the call graph for this function:

Data & Token::value ( )

Definition at line 84 of file Token.cxx.

References resip::LazyParser::checkParsed(), and mValue.

{
   checkParsed(); 
   return mValue;
}

Here is the call graph for this function:


Member Data Documentation

Definition at line 90 of file Token.hxx.

Referenced by encodeParsed(), operator=(), parse(), and value().

Definition at line 92 of file Token.hxx.

Referenced by createParam().


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