summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Outgoing.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2012-09-10 08:47:58 +0200
committerBenoit Foucher <benoit@zeroc.com>2012-09-10 08:47:58 +0200
commit9560b7d54ec4411f0605a3b53997835599f70ea2 (patch)
treec40611c772a7a4f1af4ea0df5d487305dded456d /cpp/src/Ice/Outgoing.cpp
parentFix (diff)
downloadice-9560b7d54ec4411f0605a3b53997835599f70ea2.tar.bz2
ice-9560b7d54ec4411f0605a3b53997835599f70ea2.tar.xz
ice-9560b7d54ec4411f0605a3b53997835599f70ea2.zip
Fixed communicator flushBatchRequests to allow tracing
Diffstat (limited to 'cpp/src/Ice/Outgoing.cpp')
-rw-r--r--cpp/src/Ice/Outgoing.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/cpp/src/Ice/Outgoing.cpp b/cpp/src/Ice/Outgoing.cpp
index 23fc92af5df..565a954f691 100644
--- a/cpp/src/Ice/Outgoing.cpp
+++ b/cpp/src/Ice/Outgoing.cpp
@@ -547,19 +547,21 @@ IceInternal::Outgoing::throwUserException()
}
}
-IceInternal::BatchOutgoing::BatchOutgoing(RequestHandler* handler) :
+IceInternal::BatchOutgoing::BatchOutgoing(RequestHandler* handler, InvocationObserver& observer) :
_handler(handler),
_connection(0),
_sent(false),
- _os(handler->getReference()->getInstance().get(), Ice::currentProtocolEncoding)
+ _os(handler->getReference()->getInstance().get(), Ice::currentProtocolEncoding),
+ _observer(observer)
{
}
-IceInternal::BatchOutgoing::BatchOutgoing(ConnectionI* connection, Instance* instance) :
+IceInternal::BatchOutgoing::BatchOutgoing(ConnectionI* connection, Instance* instance, InvocationObserver& observer) :
_handler(0),
_connection(connection),
_sent(false),
- _os(instance, Ice::currentProtocolEncoding)
+ _os(instance, Ice::currentProtocolEncoding),
+ _observer(observer)
{
}
@@ -574,7 +576,7 @@ IceInternal::BatchOutgoing::invoke()
{
_monitor.wait();
}
-
+ _remoteObserver.detach();
if(_exception.get())
{
_exception->ice_throw();