1#if !defined(RESIP_DialogInfoContents_HXX)
2#define RESIP_DialogInfoContents_HXX
110 mHasDuration(false), mAppearance(0), mHasAppearance(false), mExclusive(false), mHasExclusive(false) {}
158 void setAppearance(
unsigned int appearanceNum) { mAppearance = appearanceNum; mHasAppearance =
true; }
163 void setExclusive(
bool exclusive) { mExclusive = exclusive; mHasExclusive =
true; }
169 { mReplacedDialogs.push_back(
DialogIdInfo(callId, localTag, remoteTag)); }
175 { mJoinedDialogs.push_back(
DialogIdInfo(callId, localTag, remoteTag)); }
199 { mSessionDescription = sessionDescription; mSessionDescriptionType = sessionDescriptionType; }
212 Data mSessionDescription;
213 Data mSessionDescriptionType;
252 DialogIdInfo mReplaces;
258 Participant mLocalParticipant;
259 Participant mRemoteParticipant;
262 unsigned int mAppearance;
266 std::list<DialogIdInfo> mReplacedDialogs;
267 std::list<DialogIdInfo> mJoinedDialogs;
269 std::multimap<Data, Data> mExtraDialogElements;
301 Data mBaseDialogInfoNamespacePrefix;
302 Data mSharedAppearanceDialogInfoNamespacePrefix;
Wraps your platform's implementation of hash_map, hash_multimap, and hash_set.
Base class for all SIP body types.
int & version()
returns the major version of MIME used by the contents
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
DialogIdInfo(const Data &callId, const Data &localTag, const Data &remoteTag)
void setTarget(const Uri &target)
const Data & getSessionDescriptionType() const
void setSessionDescription(const Data &sessionDescription, const Data &sessionDescriptionType)
void addTargetParam(const Data &name, const Data &value)
const Data & getSessionDescription() const
const NameAddr & getIdentity() const
void setIdentity(const NameAddr &identity)
bool getTargetParam(const Data &name, Data &value) const
const uint32_t & getCSeq() const
const Uri & getTarget() const
void setCSeq(const uint32_t &cseq)
std::map< Data, Data > TargetParams
const TargetParams & getTargetParams() const
const std::list< Dialog::DialogIdInfo > & getReplacedDialogs() const
const Data & getId() const
const Data & getLocalTag() const
const Dialog::DialogIdInfo & getReplaces() const
const Data & getCallId() const
void addReplacedDialog(const Dialog::DialogIdInfo &dialogIdInfo)
void setRouteSet(const NameAddrs &routes)
const int & getStateCode() const
const NameAddrs & getRouteSet() const
const Data & getReplacesRemoteTag() const
void addJoinedDialog(const Data &callId, const Data &localTag, const Data &remoteTag)
Participant & remoteParticipant()
const uint32_t & getDuration() const
bool getExclusive() const
void setRemoteTag(const Data &remoteTag)
void setDuration(const uint32_t &duration)
bool hasExclusive() const
void setAppearance(unsigned int appearanceNum)
void setState(const DialogState &state)
const std::list< Dialog::DialogIdInfo > & getJoinedDialogs() const
const Participant & localParticipant() const
const Participant & remoteParticipant() const
void setCallId(const Data &callId)
void clearJoinedDialogs()
const Direction & getDirection() const
void addJoinedDialog(const Dialog::DialogIdInfo &dialogIdInfo)
const DialogStateEvent & getStateEvent() const
const Data & getReplacesCallId() const
const DialogState & getState() const
void setStateCode(const int &stateCode)
void addRouteToRouteSet(const NameAddr &route)
Participant & localParticipant()
void clearReplacedDialogs()
void setReplacesInfo(const Data &callId, const Data &localTag, const Data &remoteTag)
void addReplacedDialog(const Data &callId, const Data &localTag, const Data &remoteTag)
bool getAppearance() const
void setReferredBy(const NameAddr &referredBy)
void setStateEvent(const DialogStateEvent &stateEvent)
void setDirection(const Direction &direction)
bool getDialogElement(const Data &childElementName, Data &elementValue, int instance=0) const
void setExclusive(bool exclusive)
const Data & getReplacesLocalTag() const
const NameAddr & getReferredBy() const
void setLocalTag(const Data &localTag)
bool hasAppearance() const
void setId(const Data &id)
void addDialogElement(const Data &childElementName, const Data &elementValue)
const Data & getRemoteTag() const
SIP body type for holding DialogInfo contents (MIME content-type application/dialog-info+xml).
virtual void parse(ParseBuffer &pb)
virtual ~DialogInfoContents()
void addDialog(const Dialog &dialog)
static const char * dialogInfoStateToString(const DialogInfoState &dialogInfoState)
virtual Contents * clone() const
duplicate an DialogInfoContents object
void setVersion(uint32_t version)
@ MaxOrUnsetDialogStateEvent
uint32_t getVersion() const
static const char * dialogStateEventToString(const DialogStateEvent &dialogStateEvent)
static DialogState dialogStateStringToEnum(const Data &dialogStateString)
static bool compareTag(const Data &tagName, const Data &compareToTagNoPrefix, const Data &namespacePrefix)
void setEncodeIndent(const Data &indent)
static const char * directionToString(const Direction &direction)
static Direction directionStringToEnum(const Data &directionString)
void setEntity(const Uri &entity)
RESIP_HeapCount(DialogInfoContents)
bool removeDialog(const Data &id)
static const char * dialogStateToString(const DialogState &dialogState)
const Uri & getEntity() const
static const DialogInfoContents Empty
const DialogList & getDialogs() const
virtual EncodeStream & encodeParsed(EncodeStream &str) const
static const Mime & getStaticType()
static DialogInfoState dialogInfoStateStringToEnum(const Data &dialogInfoStateString)
std::list< Dialog > DialogList
DialogInfoState getDialogInfoState() const
static DialogStateEvent dialogStateEventStringToEnum(const Data &dialogStateEventString)
void setDialogInfoState(DialogInfoState dialogInfoState)
dcm! – kill typedef std::list<DialogId> DialogIdSet;
Represents the "media-type" element in the RFC 3261 grammar.
Represents the "name-addr" and the "addr-spec" elements in the RFC 3261 grammar.
Provides string-parsing functionality with protection from buffer overflow.
void clear()
clear the mParsers vector
void push_back(const T &t)
Inserts a header field value at the back of this container.
Represents the "SIP-URI" and "SIPS-URI" elements in the RFC 3261 grammar.
dcm! – add UnusedChecking(_enum) below;
static bool invokeDialogInfoContentsInit