[prev in list] [next in list] [prev in thread] [next in thread] 

List:       semsdev
Subject:    [Semsdev] git:master: sbc: allow custom AmSipSubscription instance to be passed in constructor
From:       Raphael Coeffic <rco () iptel ! org>
Date:       2013-06-24 9:21:41
Message-ID: 20130624092141.C7523EF8074 () rimmer ! ryngle ! com
[Download RAW message or body]

Module: sems
Branch: master
Commit: 62cdc2396fa5a0c0ee542ef7b123c89a87cbf4ea
URL:    http://git.sip-router.org/cgi-bin/gitweb.cgi/sems/?a=commit;h=62cdc2396fa5a0c0ee542ef7b123c89a87cbf4ea


Author: Raphael Coeffic <rco@iptel.org>
Committer: Raphael Coeffic <rco@iptel.org>
Date:   Mon Jun 17 12:28:59 2013 +0200

sbc: allow custom AmSipSubscription instance to be passed in constructor

---

 apps/sbc/CallLeg.cpp    |   18 ++++++++++--------
 apps/sbc/CallLeg.h      |    5 +++--
 apps/sbc/SBCCallLeg.cpp |   14 ++++++++------
 apps/sbc/SBCCallLeg.h   |    8 +++++---
 4 files changed, 26 insertions(+), 19 deletions(-)

diff --git a/apps/sbc/CallLeg.cpp b/apps/sbc/CallLeg.cpp
index c58f8cb..9f37530 100644
--- a/apps/sbc/CallLeg.cpp
+++ b/apps/sbc/CallLeg.cpp
@@ -49,10 +49,11 @@ ReliableB2BEvent::~ReliableB2BEvent()
 ////////////////////////////////////////////////////////////////////////////////
 
 // callee
-CallLeg::CallLeg(const CallLeg* caller, AmSipDialog* p_dlg):
-  AmB2BSession(caller->getLocalTag(),p_dlg),
-  call_status(Disconnected),
-  hold_request_cseq(0), hold_status(NotHeld)
+CallLeg::CallLeg(const CallLeg* caller, AmSipDialog* p_dlg, AmSipSubscription* \
p_subs) +  : AmB2BSession(caller->getLocalTag(),p_dlg,p_subs),
+    call_status(Disconnected),
+    hold_request_cseq(0), 
+    hold_status(NotHeld)
 {
   a_leg = !caller->a_leg; // we have to be the complement
 
@@ -92,10 +93,11 @@ CallLeg::CallLeg(const CallLeg* caller, AmSipDialog* p_dlg):
 }
 
 // caller
-CallLeg::CallLeg(AmSipDialog* p_dlg): 
-  AmB2BSession("",p_dlg),
-  call_status(Disconnected),
-  hold_request_cseq(0), hold_status(NotHeld)
+CallLeg::CallLeg(AmSipDialog* p_dlg, AmSipSubscription* p_subs)
+  : AmB2BSession("",p_dlg,p_subs),
+    call_status(Disconnected),
+    hold_request_cseq(0),
+    hold_status(NotHeld)
 {
   a_leg = true;
 
diff --git a/apps/sbc/CallLeg.h b/apps/sbc/CallLeg.h
index bfe326b..44d431b 100644
--- a/apps/sbc/CallLeg.h
+++ b/apps/sbc/CallLeg.h
@@ -371,10 +371,11 @@ class CallLeg: public AmB2BSession
 
   public:
     /** creates A leg */
-    CallLeg(AmSipDialog* dlg=NULL);
+    CallLeg(AmSipDialog* p_dlg=NULL, AmSipSubscription* p_subs=NULL);
 
     /** creates B leg using given session as A leg */
-    CallLeg(const CallLeg* caller, AmSipDialog* dlg=NULL);
+    CallLeg(const CallLeg* caller, AmSipDialog* p_dlg=NULL,
+	    AmSipSubscription* p_subs=NULL);
 
     virtual ~CallLeg();
 };
diff --git a/apps/sbc/SBCCallLeg.cpp b/apps/sbc/SBCCallLeg.cpp
index 8b0a395..a71595d 100644
--- a/apps/sbc/SBCCallLeg.cpp
+++ b/apps/sbc/SBCCallLeg.cpp
@@ -152,8 +152,9 @@ void PayloadIdMapping::reset()
 ///////////////////////////////////////////////////////////////////////////////////////////
  
 // A leg constructor (from SBCDialog)
-SBCCallLeg::SBCCallLeg(const SBCCallProfile& call_profile, AmSipDialog* p_dlg)
-  : CallLeg(p_dlg),
+SBCCallLeg::SBCCallLeg(const SBCCallProfile& call_profile, AmSipDialog* p_dlg,
+		       AmSipSubscription* p_subs)
+  : CallLeg(p_dlg,p_subs),
     m_state(BB_Init),
     auth(NULL),
     call_profile(call_profile),
@@ -182,10 +183,11 @@ SBCCallLeg::SBCCallLeg(const SBCCallProfile& call_profile, \
AmSipDialog* p_dlg)  }
 
 // B leg constructor (from SBCCalleeSession)
-SBCCallLeg::SBCCallLeg(SBCCallLeg* caller, AmSipDialog* p_dlg)
+SBCCallLeg::SBCCallLeg(SBCCallLeg* caller, AmSipDialog* p_dlg,
+		       AmSipSubscription* p_subs)
   : auth(NULL),
     call_profile(caller->getCallProfile()),
-    CallLeg(caller,p_dlg),
+    CallLeg(caller,p_dlg,p_subs),
     cc_started(false),
     logger(NULL)
 {
@@ -223,8 +225,8 @@ SBCCallLeg::SBCCallLeg(SBCCallLeg* caller, AmSipDialog* p_dlg)
   setLogger(caller->getLogger());
 }
 
-SBCCallLeg::SBCCallLeg(AmSipDialog* p_dlg)
-  : CallLeg(p_dlg),
+SBCCallLeg::SBCCallLeg(AmSipDialog* p_dlg, AmSipSubscription* p_subs)
+  : CallLeg(p_dlg,p_subs),
     m_state(BB_Init),
     auth(NULL),
     cc_timer_id(SBC_TIMER_ID_CALL_TIMERS_START),
diff --git a/apps/sbc/SBCCallLeg.h b/apps/sbc/SBCCallLeg.h
index bf48df1..d82b3a3 100644
--- a/apps/sbc/SBCCallLeg.h
+++ b/apps/sbc/SBCCallLeg.h
@@ -114,9 +114,11 @@ class SBCCallLeg : public CallLeg, public CredentialHolder
 
  public:
 
-  SBCCallLeg(const SBCCallProfile& call_profile, AmSipDialog* dlg=NULL);
-  SBCCallLeg(SBCCallLeg* caller, AmSipDialog* dlg=NULL);
-  SBCCallLeg(AmSipDialog* dlg=NULL);
+  SBCCallLeg(const SBCCallProfile& call_profile, AmSipDialog* dlg=NULL,
+	     AmSipSubscription* p_subs=NULL);
+  SBCCallLeg(SBCCallLeg* caller, AmSipDialog* dlg=NULL,
+	     AmSipSubscription* p_subs=NULL);
+  SBCCallLeg(AmSipDialog* dlg=NULL,AmSipSubscription* p_subs=NULL);
   ~SBCCallLeg();
 
   void process(AmEvent* ev);

_______________________________________________
Semsdev mailing list
Semsdev@lists.iptel.org
http://lists.iptel.org/mailman/listinfo/semsdev


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic