[asterisk-scf-commits] asterisk-scf/integration/bridging.git branch "master" updated.

Commits to the Asterisk SCF project code repositories asterisk-scf-commits at lists.digium.com
Thu Aug 26 11:42:28 CDT 2010


branch "master" has been updated
       via  ee10b2670a05948fce905176d6689b97ac683954 (commit)
       via  a444fbb30a528ca0e520e2aa1f39c010e400d781 (commit)
      from  cb276df602ff13e91c5bde5072ca8e260899ddba (commit)

Summary of changes:
 src/BridgeFactoryImpl.cpp |    1 +
 src/BridgeImpl.cpp        |    8 +++++++-
 src/BridgeImpl.h          |    3 +++
 3 files changed, 11 insertions(+), 1 deletions(-)


- Log -----------------------------------------------------------------
commit ee10b2670a05948fce905176d6689b97ac683954
Merge: a444fbb cb276df
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Aug 26 14:10:56 2010 -0230

    Merge branch 'master' of ssh://git.asterisk.org/asterisk-scf/integration/bridging


commit a444fbb30a528ca0e520e2aa1f39c010e400d781
Author: Brent Eagles <beagles at digium.com>
Date:   Thu Aug 26 14:10:19 2010 -0230

    Add a signalling facet to the bridge

diff --git a/src/BridgeFactoryImpl.cpp b/src/BridgeFactoryImpl.cpp
index 79826dc..e44cd74 100644
--- a/src/BridgeFactoryImpl.cpp
+++ b/src/BridgeFactoryImpl.cpp
@@ -141,6 +141,7 @@ Hydra::Core::Bridging::V1::BridgePrx Hydra::BridgeService::BridgeFactoryImpl::cr
 
     Hydra::BridgeService::BridgeImplPtr bridge = new Hydra::BridgeService::BridgeImpl(mAdapter, adminEp, eps, mgr, mBridgeEvents);
     Ice::ObjectPrx obj = mAdapter->addWithUUID(bridge);
+    mAdapter->addFacet(bridge->signalCB(), obj->ice_getIdentity(), "SignalCallback");
     mBridges.push_back(bridge);
     mLogger.getInfoStream() << current.adapter->getCommunicator()->identityToString(current.id) << ": creating new bridge " << obj->ice_toString() << "." << std::endl;
     return Hydra::Core::Bridging::V1::BridgePrx::uncheckedCast(obj);
diff --git a/src/BridgeImpl.cpp b/src/BridgeImpl.cpp
index b734089..73b2601 100644
--- a/src/BridgeImpl.cpp
+++ b/src/BridgeImpl.cpp
@@ -288,7 +288,8 @@ Hydra::BridgeService::BridgeImpl::BridgeImpl(
     {
         mQueuedEndpoints.insert(std::pair<std::string, Hydra::Session::V1::SessionEndpointPtr>(endpointIdToString((*i)->id), *i));
     }
-    mSignalling = Hydra::Session::V1::SignalCallbackPrx::uncheckedCast(mObjAdapter->addWithUUID(new DefaultBridgeSignallingCallback(this)));
+    mSignallingServant = new DefaultBridgeSignallingCallback(this);
+    mSignalling = Hydra::Session::V1::SignalCallbackPrx::uncheckedCast(mObjAdapter->addWithUUID(mSignallingServant));
     for(Hydra::Session::V1::SessionEndpointSeq::const_iterator i = initialEndpoints.begin(); i != initialEndpoints.end(); ++i)
     {
         (*i)->command->call(mBridgeId, (*i)->id, mSignalling);
@@ -606,6 +607,11 @@ void Hydra::BridgeService::BridgeImpl::endpointBusy(const Hydra::Core::Endpoint:
     }
 }
 
+Hydra::Session::V1::SignalCallbackPtr Hydra::BridgeService::BridgeImpl::signalCB()
+{
+    return mSignallingServant;
+}
+
 void Hydra::BridgeService::BridgeImpl::statePreCheck()
 {
     if(mState == ShuttingDown)
diff --git a/src/BridgeImpl.h b/src/BridgeImpl.h
index 92a1bfc..27e28e8 100644
--- a/src/BridgeImpl.h
+++ b/src/BridgeImpl.h
@@ -67,6 +67,8 @@ namespace BridgeService
       void endpointRinging(const Core::Endpoint::V1::EndpointIdPtr& id);
       void endpointBusy(const Core::Endpoint::V1::EndpointIdPtr& id);
 
+      Session::V1::SignalCallbackPtr signalCB();
+
    private:
 
       boost::shared_mutex mLock;
@@ -97,6 +99,7 @@ namespace BridgeService
 
       Ice::ObjectAdapterPtr mObjAdapter;
       Session::V1::SignalCallbackPrx mSignalling;
+      Session::V1::SignalCallbackPtr mSignallingServant;
 
       void statePreCheck();
       std::vector<BridgeEndpoint>::iterator find(const Core::Endpoint::V1::EndpointIdPtr& e);

-----------------------------------------------------------------------


-- 
asterisk-scf/integration/bridging.git



More information about the asterisk-scf-commits mailing list