diff options
| author | Audrius Meskauskas <audriusa@Bioinformatics.org> | 2005-05-29 15:39:41 +0000 |
|---|---|---|
| committer | Audrius Meskauskas <audriusa@Bioinformatics.org> | 2005-05-29 15:39:41 +0000 |
| commit | d2e41f3d6d2a388933fed0823d4e2df591951c6f (patch) | |
| tree | 4712dfb3245aea8597f99b9f9aa1afcc21cc0c4f /gnu/CORBA/gnuRequest.java | |
| parent | eb80e97ad74fd8eb2d1a281a601cb11bfb5bd945 (diff) | |
| download | classpath-d2e41f3d6d2a388933fed0823d4e2df591951c6f.tar.gz | |
2005-05-29 Audrius Meskauskas <AudriusA@Bioinformatics.org>
* gnu/CORBA/gnuRequest.java (p_invoke): Wrap the received UserException into
UnknownUserException.
* gnu/CORBA/streamReadyHolder.java: New wrapper for UserException.
* org/omg/CORBA/UnknownUserException.java: New exception.
Diffstat (limited to 'gnu/CORBA/gnuRequest.java')
| -rw-r--r-- | gnu/CORBA/gnuRequest.java | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/gnu/CORBA/gnuRequest.java b/gnu/CORBA/gnuRequest.java index 0665e919b..5f674aa2e 100644 --- a/gnu/CORBA/gnuRequest.java +++ b/gnu/CORBA/gnuRequest.java @@ -69,6 +69,7 @@ import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; +import org.omg.CORBA.UnknownUserException; /** * The implementation of the CORBA request. @@ -786,17 +787,15 @@ public class gnuRequest input.align(8); align = false; } - input.mark(2000); - String uxId = input.read_string(); - input.reset(); + // Prepare an Any that will hold the exception. + gnuAny exc = new gnuAny(); - UserException uex = ObjectCreator.readUserException(uxId, input); + exc.insert_Streamable(new streamReadyHolder(input)); + + UnknownUserException unuex = new UnknownUserException(exc); + m_environment.exception(unuex); - if (uex == null) - m_environment.exception(new UserException(uxId)); - else - m_environment.exception(uex); break; case ReplyHeader.LOCATION_FORWARD_PERM : |
