//------------------------------------------------------------------------------
//----------------------------------------------------------- AvpRule::setQual()
//------------------------------------------------------------------------------
-void anna::diameter::stack::AvpRule::setQual(const std::string & q) throw(anna::RuntimeException) {
+void anna::diameter::stack::AvpRule::setQual(const std::string & q) noexcept(false) {
const char *asterisk = strstr(q.c_str(), "*");
if((q != "") && (asterisk == NULL))
//------------------------------------------------------------------------------
-//------------------------------------------------------------- AvpRule::getId()
+//-------------------------------------------------------- AvpRule::getAvpName()
//------------------------------------------------------------------------------
-anna::diameter::AvpId anna::diameter::stack::AvpRule::getId(void) const throw() {
- const Avp * avp = a_dictionary->getAvp(a_avpName);
- return avp->getId();
+std::string anna::diameter::stack::AvpRule::getAvpName(void) const {
+ const Avp * avp = a_dictionary->getAvp(a_avpId);
+ return avp->getName();
}
//------------------------------------------------------------------------------
//------------------------------------------------------------- AvpRule::isAny()
//------------------------------------------------------------------------------
-bool anna::diameter::stack::AvpRule::isAny(void) const throw() {
- const Avp * avp = a_dictionary->getAvp(a_avpName);
+bool anna::diameter::stack::AvpRule::isAny(void) const {
+ const Avp * avp = a_dictionary->getAvp(a_avpId);
const Format * format = a_dictionary->getFormat(avp->getFormatName());
return format->isAny();
}
//------------------------------------------------------------------------------
//-------------------------------------------------------- AvpRule::getQualMin()
//------------------------------------------------------------------------------
-int anna::diameter::stack::AvpRule::getQualMin(void) const throw() {
+int anna::diameter::stack::AvpRule::getQualMin(void) const {
if(a_qual == "") {
if(isFixed() || isMandatory()) return 1;
//------------------------------------------------------------------------------
//-------------------------------------------------------- AvpRule::getQualMax()
//------------------------------------------------------------------------------
-int anna::diameter::stack::AvpRule::getQualMax(void) const throw() {
+int anna::diameter::stack::AvpRule::getQualMax(void) const {
if(a_qual == "") return 1;
// Asterisk location
//------------------------------------------------------------------------------
//---------------------------------------------------------- AvpRule::asString()
//------------------------------------------------------------------------------
-std::string anna::diameter::stack::AvpRule::asString(bool showPair) const throw() {
+std::string anna::diameter::stack::AvpRule::asString(bool showPair) const {
std::string trace = "No Avp rule defined";
- const Avp * avp = a_dictionary->getAvp(a_avpName);
+ const Avp * avp = a_dictionary->getAvp(a_avpId);
if(avp) {
trace = a_qual;
if(isOptional()) { s_open = "["; s_close = "]"; }
trace += s_open;
- trace += a_avpName;
+ trace += getAvpName(); // anna::diameter::functions::avpIdAsPairString(a_avpId);;
trace += s_close;
if(!showPair) return trace;
//------------------------------------------------------------------------------
//------------------------------------------------------------- AvpRule::asXML()
//------------------------------------------------------------------------------
-anna::xml::Node* anna::diameter::stack::AvpRule::asXML(anna::xml::Node* parent) const throw() {
+anna::xml::Node* anna::diameter::stack::AvpRule::asXML(anna::xml::Node* parent) const {
// <!ELEMENT avprule EMPTY>
// <!ATTLIST avprule id CDATA #REQUIRED type (Fixed | Mandatory | Optional) #REQUIRED qual CDATA #IMPLIED>
anna::xml::Node* result = parent->createChild("avprule");
- result->createAttribute("id", a_avpName);
+ result->createAttribute("id", getAvpName());
std::string type;
if(isFixed()) type = "Fixed";