ANNA Suite  2020b
Multipurpose development suite for Telco applications
Public Member Functions | Friends | List of all members
anna::diameter::codec::tme::Avp Class Reference

#include <Avp.hpp>

Inheritance diagram for anna::diameter::codec::tme::Avp:
Inheritance graph
[legend]
Collaboration diagram for anna::diameter::codec::tme::Avp:
Collaboration graph
[legend]

Public Member Functions

 Avp (Engine *engine=NULL)
 
 Avp (AvpId id, Engine *engine=NULL)
 
 ~Avp ()
 
ISDNNumbergetISDNNumber () noexcept(false)
 
ISDNAddressgetISDNAddress () noexcept(false)
 
Unsigned16getUnsigned16 () noexcept(false)
 
const ISDNNumbergetISDNNumber () const noexcept(false)
 
const ISDNAddressgetISDNAddress () const noexcept(false)
 
const Unsigned16getUnsigned16 () const noexcept(false)
 
- Public Member Functions inherited from anna::diameter::codec::Avp
 Avp (Engine *engine=NULL)
 
 Avp (AvpId id, Engine *engine=NULL)
 
void setEngine (Engine *engine)
 
void clear () noexcept(false)
 
void setId (AvpId id) noexcept(false)
 
void setId (const char *name) noexcept(false)
 
void setMandatoryBit (bool activate=true)
 
void setEncryptionBit (bool activate=true)
 
AvpaddAvp (AvpId id) noexcept(false)
 
AvpaddAvp (const char *name) noexcept(false)
 
AvpaddAvp (Avp *avp) noexcept(false)
 
OctetStringgetOctetString () noexcept(false)
 
Integer32getInteger32 () noexcept(false)
 
Integer64getInteger64 () noexcept(false)
 
Unsigned32getUnsigned32 () noexcept(false)
 
Unsigned64getUnsigned64 () noexcept(false)
 
Float32getFloat32 () noexcept(false)
 
Float64getFloat64 () noexcept(false)
 
AddressgetAddress () noexcept(false)
 
TimegetTime () noexcept(false)
 
UTF8StringgetUTF8String () noexcept(false)
 
DiameterIdentitygetDiameterIdentity () noexcept(false)
 
DiameterURIgetDiameterURI () noexcept(false)
 
EnumeratedgetEnumerated () noexcept(false)
 
IPFilterRulegetIPFilterRule () noexcept(false)
 
QoSFilterRulegetQoSFilterRule () noexcept(false)
 
UnknowngetUnknown () noexcept(false)
 
bool removeAvp (AvpId id, int ocurrence=1) noexcept(false)
 
bool removeAvp (const char *name, int ocurrence=1) noexcept(false)
 
const AvpIdgetId () const
 
int getVendorId () const
 
const anna::diameter::stack::AvpgetStackAvp () const noexcept(false)
 
bool vendorBit () const
 
bool mandatoryBit () const
 
bool encryptionBit () const
 
const OctetStringgetOctetString () const noexcept(false)
 
const Integer32getInteger32 () const noexcept(false)
 
const Integer64getInteger64 () const noexcept(false)
 
const Unsigned32getUnsigned32 () const noexcept(false)
 
const Unsigned64getUnsigned64 () const noexcept(false)
 
const Float32getFloat32 () const noexcept(false)
 
const Float64getFloat64 () const noexcept(false)
 
const AvpgetAvp (AvpId id, int ocurrence=1, anna::Exception::Mode::_v emode=anna::Exception::Mode::Throw) const noexcept(false)
 
AvpgetAvp (AvpId id, int ocurrence=1, anna::Exception::Mode::_v emode=anna::Exception::Mode::Throw) noexcept(false)
 
const AvpgetAvp (const char *name, int ocurrence=1, anna::Exception::Mode::_v emode=anna::Exception::Mode::Throw) const noexcept(false)
 
AvpgetAvp (const char *name, int ocurrence=1, anna::Exception::Mode::_v emode=anna::Exception::Mode::Throw) noexcept(false)
 
const AddressgetAddress () const noexcept(false)
 
const TimegetTime () const noexcept(false)
 
const UTF8StringgetUTF8String () const noexcept(false)
 
const DiameterIdentitygetDiameterIdentity () const noexcept(false)
 
const DiameterURIgetDiameterURI () const noexcept(false)
 
const EnumeratedgetEnumerated () const noexcept(false)
 
const IPFilterRulegetIPFilterRule () const noexcept(false)
 
const QoSFilterRulegetQoSFilterRule () const noexcept(false)
 
const UnknowngetUnknown () const noexcept(false)
 
void decode (const anna::DataBlock &db) noexcept(false)
 
void fromXML (const anna::xml::Node *avpNode) noexcept(false)
 
void code (char *buffer, int &size) const noexcept(false)
 
anna::xml::NodeasXML (anna::xml::Node *parent) const
 
std::string asXMLString (bool normalize=false) const
 
bool isLike (const std::string &pattern) const
 
int countAvp (AvpId id) const noexcept(false)
 
int countAvp (const char *name) const noexcept(false)
 
int countChilds () const noexcept(false)
 
virtual void unknownAvpWithMandatoryBit () const noexcept(false)
 

Friends

class Message
 
class anna::diameter::codec::Engine
 

Additional Inherited Members

- Static Public Attributes inherited from anna::diameter::codec::Avp
static const int HeaderLengthVactive
 
static const int HeaderLengthVinactive
 
static const U8 VBitMask
 
static const U8 MBitMask
 
static const U8 PBitMask
 
- Protected Member Functions inherited from anna::diameter::codec::Avp
virtual EnginegetEngine () const noexcept(false)
 
void initialize ()
 
void assertFormat (const std::string &name) const noexcept(false)
 
U24 getLength () const
 
std::string getXMLdata (bool &isHex, const anna::diameter::stack::Format *stackFormat) const
 
void decodeDataPart (const char *buffer, int size, const anna::diameter::codec::parent_t &parent, Message *answer) noexcept(false)
 
- Protected Attributes inherited from anna::diameter::codec::Avp
Enginea_engine
 

Detailed Description

Diameter TME avp generic container Manages tme-specific formats (Unsigned16, ISDNAddress, ISDNNumber)

Constructor & Destructor Documentation

◆ Avp() [1/2]

anna::diameter::codec::tme::Avp::Avp ( Engine engine = NULL)
inline

Codec Engine getter: avoids have to create base engine when using its child Default constructor

Parameters
engineCodec engine used
87 : anna::diameter::codec::Avp(engine) {;}
Definition: Avp.hpp:125

◆ Avp() [2/2]

anna::diameter::codec::tme::Avp::Avp ( AvpId  id,
Engine engine = NULL 
)
inline

Identified constructor

Parameters
idAvp identifier as pair (code,vendor-id).
engineCodec engine used
94 : anna::diameter::codec::Avp(id, engine) {;}
Definition: Avp.hpp:125

◆ ~Avp()

anna::diameter::codec::tme::Avp::~Avp ( )
virtual

Destructor

Reimplemented from anna::diameter::codec::Avp.

Member Function Documentation

◆ getISDNAddress() [1/2]

ISDNAddress* anna::diameter::codec::tme::Avp::getISDNAddress ( )
inlinenoexcept

Access content for ISDNAddress Avp in order to set data part

106 { assertFormat("ISDNAddress"); return a_ISDNAddress; }
void assertFormat(const std::string &name) const noexcept(false)

◆ getISDNAddress() [2/2]

const ISDNAddress* anna::diameter::codec::tme::Avp::getISDNAddress ( ) const
inlinenoexcept

Access content for ISDNAddress Avp

114 { assertFormat("ISDNAddress"); return a_ISDNAddress; }
void assertFormat(const std::string &name) const noexcept(false)

◆ getISDNNumber() [1/2]

ISDNNumber* anna::diameter::codec::tme::Avp::getISDNNumber ( )
inlinenoexcept

Access content for ISDNNumber Avp in order to set data part

104 { assertFormat("ISDNNumber"); return a_ISDNNumber; }
void assertFormat(const std::string &name) const noexcept(false)

◆ getISDNNumber() [2/2]

const ISDNNumber* anna::diameter::codec::tme::Avp::getISDNNumber ( ) const
inlinenoexcept

Access content for ISDNNumber Avp

112 { assertFormat("ISDNNumber"); return a_ISDNNumber; }
void assertFormat(const std::string &name) const noexcept(false)

◆ getUnsigned16() [1/2]

Unsigned16* anna::diameter::codec::tme::Avp::getUnsigned16 ( )
inlinenoexcept

Access content for Unsigned16 Avp in order to set data part

108 { assertFormat("Unsigned16"); return a_Unsigned16; }
void assertFormat(const std::string &name) const noexcept(false)

◆ getUnsigned16() [2/2]

const Unsigned16* anna::diameter::codec::tme::Avp::getUnsigned16 ( ) const
inlinenoexcept

Access content for Unsigned16 Avp

116 { assertFormat("Unsigned16"); return a_Unsigned16; }
void assertFormat(const std::string &name) const noexcept(false)

Friends And Related Function Documentation

◆ anna::diameter::codec::Engine

friend class anna::diameter::codec::Engine
friend

◆ Message

friend class Message
friend

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