Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / tao / DynamicInterface / DII_Invocation.h
blob2c80c8a5d946449c01ca98d9a655fbec82f06fea
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file DII_Invocation.h
7 * @brief The DII invocation classes.
9 * @author Carlos O'Ryan <coryan@cs.wustl.edu>
10 * @author Alexander Babu Arulanthu <alex@cs.wustl.edu>
11 * @author Jeff Parsons <parsons@cs.wustl.edu>
13 //=============================================================================
15 #ifndef TAO_DII_INVOCATION_H
16 #define TAO_DII_INVOCATION_H
18 #include /**/ "ace/pre.h"
20 #include "tao/DynamicInterface/dynamicinterface_export.h"
22 #if !defined (ACE_LACKS_PRAGMA_ONCE)
23 # pragma once
24 #endif /* ACE_LACKS_PRAGMA_ONCE */
26 #include "tao/Synch_Invocation.h"
27 #include "tao/Messaging/Asynch_Invocation.h"
29 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
31 class TAO_DII_Deferred_Reply_Dispatcher;
32 class TAO_DII_Asynch_Reply_Dispatcher;
34 namespace Dynamic
36 class ParameterList;
39 namespace TAO
41 class TAO_DynamicInterface_Export DII_Invocation:
42 public Synch_Twoway_Invocation
44 public:
45 friend class DII_Invocation_Adapter;
47 DII_Invocation (CORBA::Object_ptr otarget,
48 Profile_Transport_Resolver &resolver,
49 TAO_Operation_Details &detail,
50 CORBA::ExceptionList *excp,
51 CORBA::Request_ptr req,
52 bool response_expected = true);
54 #if TAO_HAS_INTERCEPTORS ==1
55 virtual Dynamic::ParameterList *arguments ();
56 #endif /*TAO_HAS_INTERCEPTORS == 1*/
58 protected:
59 virtual Invocation_Status handle_user_exception (TAO_InputCDR &cdr);
61 private:
62 CORBA::ExceptionList *excp_list_;
64 /// Back pointer to the DII request that created us.
65 CORBA::Request_ptr host_;
68 class TAO_DynamicInterface_Export DII_Deferred_Invocation
69 : public Asynch_Remote_Invocation
71 public:
72 friend class DII_Deferred_Invocation_Adapter;
74 DII_Deferred_Invocation (CORBA::Object_ptr otarget,
75 Profile_Transport_Resolver &resolver,
76 TAO_Operation_Details &detail,
77 TAO_DII_Deferred_Reply_Dispatcher *rd,
78 bool response_expected = true);
80 #if TAO_HAS_INTERCEPTORS ==1
81 virtual Dynamic::ParameterList *arguments ();
82 #endif /*TAO_HAS_INTERCEPTORS == 1*/
86 TAO_END_VERSIONED_NAMESPACE_DECL
88 #include /**/ "ace/post.h"
90 #endif /* TAO_DII_INVOCATION_H */