diff options
author | Benoit Foucher <benoit@zeroc.com> | 2012-10-10 16:00:58 +0200 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2012-10-10 16:00:58 +0200 |
commit | 8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4 (patch) | |
tree | 1cdcd88fccb57f88d2b47cd1757b4d43bc05be4b /java/src/IceInternal/BatchOutgoing.java | |
parent | Added IceGridGUI IceStorm metrics (diff) | |
download | ice-8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4.tar.bz2 ice-8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4.tar.xz ice-8bcfc9e4a8a1de3d72e30ffc6f3c9d72a8d3f0e4.zip |
Improved tracing of failures, user exceptions are now tracked
with a userException member.
Diffstat (limited to 'java/src/IceInternal/BatchOutgoing.java')
-rw-r--r-- | java/src/IceInternal/BatchOutgoing.java | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/java/src/IceInternal/BatchOutgoing.java b/java/src/IceInternal/BatchOutgoing.java index 8dfeefcf49d..69bb30285a5 100644 --- a/java/src/IceInternal/BatchOutgoing.java +++ b/java/src/IceInternal/BatchOutgoing.java @@ -53,11 +53,6 @@ public final class BatchOutgoing implements OutgoingMessageCallback } } - if(_remoteObserver != null) - { - _remoteObserver.detach(); - _remoteObserver = null; - } if(_exception != null) { throw _exception; @@ -81,11 +76,22 @@ public final class BatchOutgoing implements OutgoingMessageCallback { _sent = true; } + if(_remoteObserver != null) + { + _remoteObserver.detach(); + _remoteObserver = null; + } } public synchronized void finished(Ice.LocalException ex, boolean sent) { + if(_remoteObserver != null) + { + _remoteObserver.failed(ex.ice_name()); + _remoteObserver.detach(); + _remoteObserver = null; + } _exception = ex; notify(); } |