--- orig/DomainC.cpp 2003-11-20 18:47:47.000000000 -0600 +++ DomainC.cpp 2003-11-20 18:55:45.000000000 -0600 @@ -30,13 +30,17 @@ #include "DomainC.h" -#include "tao/Exception_Data.h" -#include "tao/Invocation_Adapter.h" -#include "tao/Object_T.h" -#include "tao/Basic_Arguments.h" -#include "tao/Object_Argument_T.h" -#include "tao/Special_Basic_Arguments.h" +#include "IFR_Client_Adapter.h" +#include "Exception_Data.h" +#include "Invocation_Adapter.h" +#include "Object_T.h" +#include "Basic_Arguments.h" +#include "Object_Argument_T.h" +#include "Special_Basic_Arguments.h" +#include "ORB_Core.h" #include "ace/OS_NS_string.h" +#include "ace/Dynamic_Service.h" + #if defined (__BORLANDC__) #pragma option -w-rvl -w-rch -w-ccc -w-aus -w-sig @@ -48,6 +52,40 @@ // TAO_IDL - Generated from // be/be_visitor_arg_traits.cpp:62 +// TAO specific stuff. +namespace CORBA +{ + class InterfaceDef; + typedef InterfaceDef *InterfaceDef_ptr; + typedef TAO_Objref_Var_T InterfaceDef_var; + typedef TAO_Objref_Out_T InterfaceDef_out; +} + +ACE_TEMPLATE_SPECIALIZATION +void +TAO::In_Object_Argument_T::interceptor_param (Dynamic::Parameter & p) +{ + TAO_IFR_Client_Adapter *adapter = + ACE_Dynamic_Service::instance ( + TAO_ORB_Core::ifr_client_adapter_name () + ); + + adapter->interfacedef_any_insert (p.argument, this->x_); + p.mode = CORBA::PARAM_IN; +} + +ACE_TEMPLATE_SPECIALIZATION +CORBA::Boolean +TAO::In_Object_Argument_T::marshal (TAO_OutputCDR & cdr) +{ + TAO_IFR_Client_Adapter *adapter = + ACE_Dynamic_Service::instance ( + TAO_ORB_Core::ifr_client_adapter_name () + ); + + return adapter->interfacedef_cdr_insert (cdr, this->x_); +} + // Arg traits specializations. namespace TAO @@ -683,12 +721,6 @@ #endif /* end #if !defined */ template class - TAO::Ret_Object_Argument_T< - CORBA::Policy_ptr, - CORBA::Policy_var - >; - - template class TAO::Objref_Traits< CORBA::DomainManager >;