TAO::DII_Deferred_Invocation Class Reference

#include <DII_Invocation.h>

List of all members.

Public Member Functions

 DII_Deferred_Invocation (CORBA::Object_ptr otarget, Profile_Transport_Resolver &resolver, TAO_Operation_Details &detail, TAO_DII_Deferred_Reply_Dispatcher *rd, CORBA::Request_ptr req, bool response_expected=true)
virtual Dynamic::ParameterList * arguments () throw (CORBA::SystemException)
Invocation_Status remote_invocation (ACE_Time_Value *max_wait_time) throw (CORBA::Exception)

Private Attributes

CORBA::Request_ptr host_
 Back pointer to the DII request that created us.


Friends

class DII_Deferred_Invocation_Adapter


Constructor & Destructor Documentation

TAO::DII_Deferred_Invocation::DII_Deferred_Invocation CORBA::Object_ptr  otarget,
Profile_Transport_Resolver resolver,
TAO_Operation_Details detail,
TAO_DII_Deferred_Reply_Dispatcher rd,
CORBA::Request_ptr  req,
bool  response_expected = true
 

Definition at line 173 of file DII_Invocation.cpp.

00180     : Asynch_Remote_Invocation (otarget,
00181                                 resolver,
00182                                 detail,
00183                                 rd,
00184                                 response_expected)
00185       , host_ (req)
00186   {
00187 
00188   }


Member Function Documentation

Dynamic::ParameterList * TAO::DII_Deferred_Invocation::arguments  )  throw (CORBA::SystemException) [virtual]
 

Definition at line 193 of file DII_Invocation.cpp.

References ACE_CHECK_RETURN, ACE_ENV_SINGLE_ARG_PARAMETER, and TAO::NVList_Argument::interceptor_paramlist().

00195   {
00196     // Generate the argument list on demand.
00197     Dynamic::ParameterList *parameter_list =
00198       TAO_RequestInfo_Util::make_parameter_list (ACE_ENV_SINGLE_ARG_PARAMETER);
00199     ACE_CHECK_RETURN (0);
00200 
00201     Dynamic::ParameterList_var safe_parameter_list = parameter_list;
00202 
00203     TAO::Argument **args =
00204       this->details_.args ();
00205 
00206     if (this->details_.args_num () > 1)
00207       {
00208         // Take the second argument since the first is a return value.
00209         TAO::NVList_Argument *tmp_arg =
00210           dynamic_cast <TAO::NVList_Argument*> (args[1]);
00211 
00212         tmp_arg->interceptor_paramlist (parameter_list);
00213       }
00214 
00215     return safe_parameter_list._retn ();
00216   }

Invocation_Status TAO::DII_Deferred_Invocation::remote_invocation ACE_Time_Value max_wait_time  )  throw (CORBA::Exception)
 

Definition at line 220 of file DII_Invocation.cpp.

References ACE_ENV_ARG_PARAMETER.

Referenced by TAO::DII_Deferred_Invocation_Adapter::invoke_twoway().

00225   {
00226     this->safe_rd_->transport (this->resolver_.transport ());
00227 
00228     return Asynch_Remote_Invocation::remote_invocation (
00229         max_wait_time
00230         ACE_ENV_ARG_PARAMETER);
00231   }


Friends And Related Function Documentation

friend class DII_Deferred_Invocation_Adapter [friend]
 

Definition at line 90 of file DII_Invocation.h.


Member Data Documentation

CORBA::Request_ptr TAO::DII_Deferred_Invocation::host_ [private]
 

Back pointer to the DII request that created us.

Definition at line 113 of file DII_Invocation.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 13:05:14 2006 for TAO_DynamicInterface by doxygen 1.3.6