summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/OutgoingAsync.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2013-01-07 10:16:41 +0100
committerBenoit Foucher <benoit@zeroc.com>2013-01-07 10:16:41 +0100
commit2c9e1d532eb36bce9167a0ec656808c0a653730a (patch)
tree58781d4f42f58a8bdc03a0c8a1a5fd3160fa44fb /cpp/src/Ice/OutgoingAsync.cpp
parentFixed (ICE-5058) - WinRT port Platform::AccessDeniedException (diff)
downloadice-2c9e1d532eb36bce9167a0ec656808c0a653730a.tar.bz2
ice-2c9e1d532eb36bce9167a0ec656808c0a653730a.tar.xz
ice-2c9e1d532eb36bce9167a0ec656808c0a653730a.zip
Fixed ICE-4933: Added size and replySize fields to dispatch and remote invocation metrics, support for requestId attribute
Diffstat (limited to 'cpp/src/Ice/OutgoingAsync.cpp')
-rw-r--r--cpp/src/Ice/OutgoingAsync.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/cpp/src/Ice/OutgoingAsync.cpp b/cpp/src/Ice/OutgoingAsync.cpp
index eee5b3215c2..890e33a4cb9 100644
--- a/cpp/src/Ice/OutgoingAsync.cpp
+++ b/cpp/src/Ice/OutgoingAsync.cpp
@@ -617,6 +617,10 @@ IceInternal::OutgoingAsync::__finished(BasicStream& is)
{
IceUtil::Monitor<IceUtil::Mutex>::Lock sync(_monitor);
assert(!_exception.get() && !(_state & Done));
+ if(_remoteObserver)
+ {
+ _remoteObserver->reply(is.b.size() - headerSize - 4);
+ }
_remoteObserver.detach();
if(_timerTaskConnection)
@@ -1054,9 +1058,10 @@ IceInternal::CommunicatorBatchOutgoingAsync::flushConnection(const ConnectionIPt
_outAsync->check(false);
}
- virtual void __attachRemoteObserver(const Ice::ConnectionInfoPtr& connection, const Ice::EndpointPtr& endpt)
+ virtual void __attachRemoteObserver(const Ice::ConnectionInfoPtr& connection, const Ice::EndpointPtr& endpt,
+ Ice::Int requestId, Ice::Int sz)
{
- _remoteObserver.attach(_observer.getRemoteObserver(connection, endpt));
+ _remoteObserver.attach(_observer.getRemoteObserver(connection, endpt, requestId, sz));
}
private: