org.jacorb.orb

Class ReplyReceiver

Implemented Interfaces:
Configurable

public class ReplyReceiver
extends ReplyPlaceholder
implements 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.21 2004/05/06 12:40:00 nicolas 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, 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, replyReceived, retry

Constructor Details

ReplyReceiver

public ReplyReceiver(Delegate delegate,
                     String operation,
                     UtcT replyEndTime,
                     ClientInterceptorHandler interceptors,
                     ReplyHandler replyHandler)

Method Details

configure

public void configure(org.apache.avalon.framework.configuration.Configuration configuration)
            throws org.apache.avalon.framework.configuration.ConfigurationException


getReply

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


replyReceived

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