diff options
Diffstat (limited to 'java/src/IceInternal/OutgoingAsync.java')
-rw-r--r-- | java/src/IceInternal/OutgoingAsync.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/java/src/IceInternal/OutgoingAsync.java b/java/src/IceInternal/OutgoingAsync.java index 29ce96039af..6d354f23885 100644 --- a/java/src/IceInternal/OutgoingAsync.java +++ b/java/src/IceInternal/OutgoingAsync.java @@ -79,7 +79,6 @@ public abstract class OutgoingAsync extends OutgoingAsyncMessageCallback case ReplyStatus.replyOK: case ReplyStatus.replyUserException: { - __is.startReadEncaps(); break; } @@ -368,6 +367,22 @@ public abstract class OutgoingAsync extends OutgoingAsyncMessageCallback protected abstract void __response(boolean ok); + protected void + __throwUserException() + throws Ice.UserException + { + try + { + __is.startReadEncaps(); + __is.throwException(); + } + catch(Ice.UserException ex) + { + __is.endReadEncaps(); + throw ex; + } + } + private void handleException(LocalExceptionWrapper ex) { |