reSIProcate/DialogUsageManager  9694
Public Member Functions | Static Public Attributes | Private Attributes
resip::MergedRequestKey Class Reference

#include <MergedRequestKey.hxx>

Collaboration diagram for resip::MergedRequestKey:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 MergedRequestKey ()
 MergedRequestKey (const SipMessage &request, bool checkRequestUri)
bool operator== (const MergedRequestKey &other) const
bool operator!= (const MergedRequestKey &other) const
bool operator< (const MergedRequestKey &other) const
Datacseq ()
const Datacseq () const

Static Public Attributes

static const MergedRequestKey Empty

Private Attributes

Data mRequestUri
Data mCSeq
Data mTag
Data mCallId
bool mCheckRequestUri

Detailed Description

Definition at line 10 of file MergedRequestKey.hxx.


Constructor & Destructor Documentation

MergedRequestKey::MergedRequestKey ( )

Definition at line 9 of file MergedRequestKey.cxx.

                                  :
   mCheckRequestUri(true)
{
}
MergedRequestKey::MergedRequestKey ( const SipMessage request,
bool  checkRequestUri 
)

Definition at line 14 of file MergedRequestKey.cxx.

References h_RequestLine, and value.

                                                                              : 
   mRequestUri(Data::from(req.header(h_RequestLine).uri())),
   mCSeq(Data::from(req.header(h_CSeq))),
   mTag(req.header(h_From).exists(p_tag) ? req.header(h_From).param(p_tag) : Data::Empty),
   mCallId(req.header(h_CallID).value()),
   mCheckRequestUri(checkRequestUri)
{
}

Member Function Documentation

Data & MergedRequestKey::cseq ( )

Definition at line 78 of file MergedRequestKey.cxx.

References mCSeq.

{
    return mCSeq;
}
const Data & MergedRequestKey::cseq ( ) const

Definition at line 83 of file MergedRequestKey.cxx.

References mCSeq.

{
    return mCSeq;
}
bool MergedRequestKey::operator!= ( const MergedRequestKey other) const

Definition at line 33 of file MergedRequestKey.cxx.

{
   return !(*this == other);
}
bool MergedRequestKey::operator< ( const MergedRequestKey other) const

Definition at line 39 of file MergedRequestKey.cxx.

References mCallId, mCheckRequestUri, mCSeq, mRequestUri, and mTag.

{
   if ( mCallId < other.mCallId)
   {
      return true;
   }
   else if (mCallId > other.mCallId)
   {
      return false;
   }
   
   if (mTag < other.mTag)
   {
      return true;
   }
   else if (mTag > other.mTag)
   {
      return false;
   }
   
   if(!mCheckRequestUri)
   {
      return (mCSeq < other.mCSeq);
   }
   else
   {
      if (mCSeq < other.mCSeq)
      {
         return true;
      }
      else if (mCSeq > other.mCSeq)
      {
         return false;
      }
   
      return (mRequestUri < other.mRequestUri);
   }
}
bool MergedRequestKey::operator== ( const MergedRequestKey other) const

Definition at line 24 of file MergedRequestKey.cxx.

References mCallId, mCheckRequestUri, mCSeq, mRequestUri, and mTag.

{
   return (mCallId == other.mCallId  &&
           mTag == other.mTag &&
           mCSeq == other.mCSeq &&
           (!mCheckRequestUri || (mRequestUri == other.mRequestUri)));
}

Member Data Documentation

Definition at line 21 of file MergedRequestKey.hxx.

Referenced by resip::DialogSet::~DialogSet().

Definition at line 27 of file MergedRequestKey.hxx.

Referenced by operator<(), and operator==().

Definition at line 28 of file MergedRequestKey.hxx.

Referenced by operator<(), and operator==().

Definition at line 25 of file MergedRequestKey.hxx.

Referenced by cseq(), operator<(), and operator==().

Definition at line 24 of file MergedRequestKey.hxx.

Referenced by operator<(), and operator==().

Definition at line 26 of file MergedRequestKey.hxx.

Referenced by operator<(), and operator==().


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