TAO::DII_Deferred_Invocation Class Reference

#include <DII_Invocation.h>

Collaboration diagram for TAO::DII_Deferred_Invocation:

Collaboration graph
[legend]
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 (void)
Invocation_Status remote_invocation (ACE_Time_Value *max_wait_time)

Private Attributes

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

Friends

class DII_Deferred_Invocation_Adapter

Detailed Description

Definition at line 72 of file DII_Invocation.h.


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 160 of file DII_Invocation.cpp.

00167     : Asynch_Remote_Invocation (otarget,
00168                                 resolver,
00169                                 detail,
00170                                 rd,
00171                                 response_expected)
00172       , host_ (req)
00173   {
00174   }


Member Function Documentation

Dynamic::ParameterList * TAO::DII_Deferred_Invocation::arguments ( void   )  [virtual]

Definition at line 179 of file DII_Invocation.cpp.

00180   {
00181     Dynamic::ParameterList_var safe_parameter_list;
00182 
00183     TAO::Argument ** const args = this->details_.args ();
00184 
00185     if (this->details_.args_num () > 1)
00186       {
00187         // Take the second argument since the first is a return value.
00188         TAO::NVList_Argument * const tmp_arg =
00189           dynamic_cast <TAO::NVList_Argument*> (args[1]);
00190 
00191         if (tmp_arg)
00192           {
00193             // Generate the argument list on demand.
00194             Dynamic::ParameterList * const parameter_list =
00195               TAO_RequestInfo_Util::make_parameter_list ();
00196 
00197             safe_parameter_list = parameter_list;
00198 
00199             tmp_arg->interceptor_paramlist (parameter_list);
00200           }
00201       }
00202 
00203     return safe_parameter_list._retn ();
00204   }

Invocation_Status TAO::DII_Deferred_Invocation::remote_invocation ( ACE_Time_Value max_wait_time  ) 

Definition at line 208 of file DII_Invocation.cpp.

00209   {
00210     this->safe_rd_->transport (this->resolver_.transport ());
00211 
00212     return Asynch_Remote_Invocation::remote_invocation (max_wait_time);
00213   }


Friends And Related Function Documentation

friend class DII_Deferred_Invocation_Adapter [friend]

Definition at line 76 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 93 of file DII_Invocation.h.


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:43:27 2010 for TAO_DynamicInterface by  doxygen 1.4.7