|
reSIProcate/stack
9694
|
Generically used to represent any parameter that is not known by the implmentation. More...
#include <UnknownParameter.hxx>


Public Member Functions | |
| UnknownParameter (const char *startName, unsigned int nameSize, ParseBuffer &pb, const std::bitset< 256 > &terminators) | |
| UnknownParameter (ParameterTypes::Type type, const Data &value) | |
| UnknownParameter (const Data &name) | |
| EncodeStream & | encode (EncodeStream &stream) const |
| Data & | value () |
| const Data & | value () const |
| bool | hasValue () const |
| bool | isQuoted () const |
| void | setQuoted (bool b) |
| virtual const Data & | getName () const |
| virtual Parameter * | clone () const |
Private Attributes | |
| Data | mName |
| Data | mValue |
| bool | mIsQuoted |
Generically used to represent any parameter that is not known by the implmentation.
Definition at line 18 of file UnknownParameter.hxx.
| UnknownParameter::UnknownParameter | ( | const char * | startName, |
| unsigned int | nameSize, | ||
| ParseBuffer & | pb, | ||
| const std::bitset< 256 > & | terminators | ||
| ) |
Definition at line 13 of file UnknownParameter.cxx.
References resip::ParseBuffer::data(), resip::Symbols::DOUBLE_QUOTE, resip::ParseBuffer::eof(), resip::Symbols::EQUALS, mValue, resip::ParseBuffer::position(), setQuoted(), resip::ParseBuffer::skipChar(), resip::ParseBuffer::skipToEndQuote(), resip::ParseBuffer::skipToOneOf(), and resip::ParseBuffer::skipWhitespace().
Referenced by clone().
: Parameter(ParameterTypes::UNKNOWN), mName(startName, nameSize), mValue(), mIsQuoted(false) { pb.skipWhitespace(); if (!pb.eof() && *pb.position() == Symbols::EQUALS[0]) { pb.skipChar(Symbols::EQUALS[0]); pb.skipWhitespace(); if (*pb.position() == Symbols::DOUBLE_QUOTE[0]) { setQuoted(true); pb.skipChar(); const char* pos = pb.position(); pb.skipToEndQuote(); pb.data(mValue, pos); pb.skipChar(); } else { const char* pos = pb.position(); pb.skipToOneOf(terminators); pb.data(mValue, pos); } } else { // must be a terminator -- exists style } }

| resip::UnknownParameter::UnknownParameter | ( | ParameterTypes::Type | type, |
| const Data & | value | ||
| ) |
| UnknownParameter::UnknownParameter | ( | const Data & | name | ) | [explicit] |
Definition at line 50 of file UnknownParameter.cxx.
: Parameter(ParameterTypes::UNKNOWN), mName(name), mIsQuoted(false) { }
| Parameter * UnknownParameter::clone | ( | ) | const [virtual] |
Implements resip::Parameter.
Definition at line 65 of file UnknownParameter.cxx.
References UnknownParameter().
{
return new UnknownParameter(*this);
}

| EncodeStream & UnknownParameter::encode | ( | EncodeStream & | stream | ) | const [virtual] |
Implements resip::Parameter.
Definition at line 71 of file UnknownParameter.cxx.
References resip::Symbols::DOUBLE_QUOTE, resip::Data::empty(), resip::Symbols::EQUALS, getName(), mIsQuoted, and mValue.
{
if (mIsQuoted)
{
return stream << getName() << Symbols::EQUALS
<< Symbols::DOUBLE_QUOTE << mValue << Symbols::DOUBLE_QUOTE;
}
else if (!mValue.empty())
{
return stream << getName() << Symbols::EQUALS << mValue;
}
else
{
return stream << getName();
}
}

| const Data & UnknownParameter::getName | ( | ) | const [virtual] |
Reimplemented from resip::Parameter.
Definition at line 58 of file UnknownParameter.cxx.
References mName.
Referenced by resip::ParserCategory::commutativeParameterHash(), encode(), and operator<<().
{
return mName;
}
| bool resip::UnknownParameter::hasValue | ( | ) | const [inline] |
Definition at line 35 of file UnknownParameter.hxx.
References resip::Data::empty(), mIsQuoted, and mValue.

| bool resip::UnknownParameter::isQuoted | ( | ) | const [inline, virtual] |
Reimplemented from resip::Parameter.
Definition at line 36 of file UnknownParameter.hxx.
References mIsQuoted.
{ return mIsQuoted; }
| void resip::UnknownParameter::setQuoted | ( | bool | b | ) | [inline, virtual] |
Reimplemented from resip::Parameter.
Definition at line 37 of file UnknownParameter.hxx.
References mIsQuoted.
Referenced by UnknownParameter().
{ mIsQuoted = b; }; // this parameter will be enclosed in quotes e.g. "foo"
| Data& resip::UnknownParameter::value | ( | ) | [inline] |
Definition at line 33 of file UnknownParameter.hxx.
References mValue.
Referenced by resip::ParserCategory::commutativeParameterHash(), operator<<(), and resip::Uri::operator==().
{return mValue;}
| const Data& resip::UnknownParameter::value | ( | ) | const [inline] |
bool resip::UnknownParameter::mIsQuoted [private] |
Definition at line 45 of file UnknownParameter.hxx.
Referenced by encode(), hasValue(), isQuoted(), and setQuoted().
Data resip::UnknownParameter::mName [private] |
Definition at line 43 of file UnknownParameter.hxx.
Referenced by getName().
Data resip::UnknownParameter::mValue [private] |
Definition at line 44 of file UnknownParameter.hxx.
Referenced by encode(), hasValue(), UnknownParameter(), and value().
1.7.5.1