[asterisk-scf-commits] asterisk-scf/integration/sip.git branch "master" updated.
Commits to the Asterisk SCF project code repositories
asterisk-scf-commits at lists.digium.com
Thu Oct 21 22:21:25 CDT 2010
branch "master" has been updated
via 34452fb36f2ccbec233a2508694db21aedc2dcb1 (commit)
from b55c0debb55b0b9f43f9a63116c5f558d15aece7 (commit)
Summary of changes:
src/PJSipSessionModule.cpp | 43 +++++++++++++++++++++++++++++++++++++++++--
1 files changed, 41 insertions(+), 2 deletions(-)
- Log -----------------------------------------------------------------
commit 34452fb36f2ccbec233a2508694db21aedc2dcb1
Author: Ken Hunt <ken.hunt at digium.com>
Date: Thu Oct 21 22:19:51 2010 -0500
Made the state replication data push all via one-way calls.
diff --git a/src/PJSipSessionModule.cpp b/src/PJSipSessionModule.cpp
index 8221e75..a110229 100644
--- a/src/PJSipSessionModule.cpp
+++ b/src/PJSipSessionModule.cpp
@@ -225,11 +225,50 @@ void PJSipSessionModule::replicateState(PJSipDialogModInfo *dlgInfo, PJSipTransa
{
if (setItems.size() != 0 && mStateReplicator)
{
- mStateReplicator->setState(setItems);
+ Ice::ObjectPrx oneway;
+ try
+ {
+ oneway = mStateReplicator->ice_oneway();
+ }
+ catch (const Ice::NoEndpointException&)
+ {
+ lg(Error) << "No endpoint for oneway invocation of setState() for state replication." << std::endl;
+ }
+
+ AsteriskSCF::SIP::V1::SipStateReplicatorPrx oneWayStateReplicator = AsteriskSCF::SIP::V1::SipStateReplicatorPrx::uncheckedCast(oneway);
+
+ try
+ {
+ oneWayStateReplicator->setState(setItems);
+ }
+ catch (const Ice::TwowayOnlyException&)
+ {
+ lg(Error) << "setState() is not oneway." << std::endl;
+ }
}
+
if (removeItems.size() != 0 && mStateReplicator)
{
- mStateReplicator->removeState(removeItems);
+ Ice::ObjectPrx oneway;
+ try
+ {
+ oneway = mStateReplicator->ice_oneway();
+ }
+ catch (const Ice::NoEndpointException&)
+ {
+ lg(Error) << "No endpoint for oneway invocation of removeState() for state replication." << std::endl;
+ }
+
+ AsteriskSCF::SIP::V1::SipStateReplicatorPrx oneWayStateReplicator = AsteriskSCF::SIP::V1::SipStateReplicatorPrx::uncheckedCast(oneway);
+
+ try
+ {
+ oneWayStateReplicator->removeState(removeItems);
+ }
+ catch (const Ice::TwowayOnlyException&)
+ {
+ lg(Error) << "removeState() is not oneway." << std::endl;
+ }
}
}
}
-----------------------------------------------------------------------
--
asterisk-scf/integration/sip.git
More information about the asterisk-scf-commits
mailing list