org.jacorb.orb
Class ReplyReceiver

java.lang.Object
  extended byorg.jacorb.orb.giop.ReplyPlaceholder
      extended byorg.jacorb.orb.ReplyReceiver
All Implemented Interfaces:
org.apache.avalon.framework.configuration.Configurable

public class ReplyReceiver
extends ReplyPlaceholder
implements org.apache.avalon.framework.configuration.Configurable

A special ReplyPlaceholder that receives replies to normal requests, either synchronously or asynchronously. A ReplyReceiver handles all ORB-internal work that needs to be done for the reply, such as checking for exceptions and invoking the interceptors. The client stub can either do a blocking wait on the ReplyReceiver (via getReply()), or a ReplyHandler can be supplied when the ReplyReceiver is created; then the reply is delivered to that ReplyHandler.

Version:
$Id: ReplyReceiver.java,v 1.25 2005/03/02 22:01:47 andre.spiegel Exp $
Author:
Andre Spiegel

Field Summary
 
Fields inherited from class org.jacorb.orb.giop.ReplyPlaceholder
communicationException, in, ready, remarshalException, timeout, timeoutException
 
Constructor Summary
ReplyReceiver(Delegate delegate, java.lang.String operation, UtcT replyEndTime, ClientInterceptorHandler interceptors, ReplyHandler replyHandler)
           
 
Method Summary
 void configure(org.apache.avalon.framework.configuration.Configuration configuration)
           
 ReplyInputStream getReply()
          This method blocks until a reply becomes available.
 void replyReceived(MessageInputStream in)
           
 
Methods inherited from class org.jacorb.orb.giop.ReplyPlaceholder
cancel, getInputStream, retry
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReplyReceiver

public ReplyReceiver(Delegate delegate,
                     java.lang.String operation,
                     UtcT replyEndTime,
                     ClientInterceptorHandler interceptors,
                     ReplyHandler replyHandler)
Method Detail

configure

public void configure(org.apache.avalon.framework.configuration.Configuration configuration)
               throws org.apache.avalon.framework.configuration.ConfigurationException
Specified by:
configure in interface org.apache.avalon.framework.configuration.Configurable
Throws:
org.apache.avalon.framework.configuration.ConfigurationException

replyReceived

public void replyReceived(MessageInputStream in)
Overrides:
replyReceived in class ReplyPlaceholder

getReply

public ReplyInputStream getReply()
                          throws RemarshalException,
                                 ApplicationException
This method blocks until a reply becomes available. If the reply contains any exceptions, they are rethrown.

Throws:
RemarshalException
ApplicationException