--- orig/DomainC.cpp Tue Apr 24 23:48:52 2001 +++ DomainC.cpp Tue Apr 24 13:44:40 2001 @@ -1,6 +1,6 @@ // -*- C++ -*- // -// $Id$ +// $Id$ // **** Code generated by the The ACE ORB (TAO) IDL Compiler **** // TAO and the TAO IDL Compiler have been developed by: @@ -27,6 +27,8 @@ #if TAO_HAS_INTERCEPTORS == 1 #include "tao/RequestInfo_Util.h" #endif /* TAO_HAS_INTERCEPTORS == 1 */ +#include "tao/IFR_Client_Adapter.h" +#include "ace/Dynamic_Service.h" #if defined (__BORLANDC__) #pragma option -w-rvl -w-rch -w-ccc -w-aus @@ -36,52 +38,6 @@ #include "DomainC.i" #endif /* !defined INLINE */ -TAO_NAMESPACE_TYPE (const CORBA::ULong) -TAO_NAMESPACE_BEGIN (CORBA) -TAO_NAMESPACE_DEFINE (const CORBA::ULong, SecConstruction, 11U) -TAO_NAMESPACE_END -CORBA_DomainManager_ptr -tao_CORBA_DomainManager_duplicate ( - CORBA_DomainManager_ptr p - ) -{ - return CORBA_DomainManager::_duplicate (p); -} - -void -tao_CORBA_DomainManager_release ( - CORBA_DomainManager_ptr p - ) -{ - CORBA::release (p); -} - -CORBA_DomainManager_ptr -tao_CORBA_DomainManager_nil ( - void - ) -{ - return CORBA_DomainManager::_nil (); -} - -CORBA_DomainManager_ptr -tao_CORBA_DomainManager_narrow ( - CORBA::Object *p, - CORBA::Environment &ACE_TRY_ENV - ) -{ - return CORBA_DomainManager::_narrow (p, ACE_TRY_ENV); -} - -CORBA::Object * -tao_CORBA_DomainManager_upcast ( - void *src - ) -{ - CORBA_DomainManager **tmp = - ACE_static_cast (CORBA_DomainManager **, src); - return *tmp; -} // ************************************************************* // Operations for class CORBA_DomainManager_var @@ -205,9 +161,8 @@ ACE_static_cast (CORBA_DomainManager **, src); return *tmp; } - // ************************************************************* -// Inline operations for class CORBA_DomainManager_out +// Operations for class CORBA_DomainManager_out // ************************************************************* CORBA_DomainManager_out::CORBA_DomainManager_out (CORBA_DomainManager_ptr &p) @@ -296,14 +251,14 @@ ) ACE_THROW_SPEC ((CORBA::SystemException)); - void result (CORBA_Policy_ptr result); + void result (CORBA::Policy_ptr result); private: TAO_ClientRequestInfo_CORBA_DomainManager_get_domain_policy (const TAO_ClientRequestInfo_CORBA_DomainManager_get_domain_policy &); void operator= (const TAO_ClientRequestInfo_CORBA_DomainManager_get_domain_policy &); const CORBA::PolicyType & policy_type_; - CORBA_Policy_ptr _result; + CORBA::Policy_ptr _result; }; TAO_ClientRequestInfo_CORBA_DomainManager_get_domain_policy::TAO_ClientRequestInfo_CORBA_DomainManager_get_domain_policy ( @@ -365,7 +320,7 @@ } void -TAO_ClientRequestInfo_CORBA_DomainManager_get_domain_policy::result (CORBA_Policy_ptr result) +TAO_ClientRequestInfo_CORBA_DomainManager_get_domain_policy::result (CORBA::Policy_ptr result) { // update the result this->_result = result; @@ -385,7 +340,7 @@ // Remote Implementation of the IDL interface methods -CORBA_Policy_ptr _TAO_CORBA_DomainManager_Remote_Proxy_Impl::get_domain_policy ( +CORBA::Policy_ptr _TAO_CORBA_DomainManager_Remote_Proxy_Impl::get_domain_policy ( CORBA_Object *_collocated_tao_target_, CORBA::PolicyType policy_type, CORBA::Environment &ACE_TRY_ENV @@ -395,8 +350,8 @@ )) { - CORBA_Policy_ptr _tao_retval = CORBA_Policy::_nil (); - CORBA_Policy_var _tao_safe_retval (_tao_retval); + CORBA::Policy_ptr _tao_retval = CORBA::Policy::_nil (); + CORBA::Policy_var _tao_safe_retval (_tao_retval); TAO_Stub *istub = _collocated_tao_target_->_stubobj (); @@ -491,7 +446,7 @@ } TAO_INTERCEPTOR ( - CORBA_Policy_ptr _tao_retval_info = _tao_safe_retval._retn (); + CORBA::Policy_ptr _tao_retval_info = _tao_safe_retval._retn (); ri.result (_tao_retval_info); _tao_safe_retval = _tao_retval_info; ); @@ -742,7 +697,7 @@ return "IDL:CORBA_DomainManager:1.0"; } -CORBA_Policy_ptr CORBA_DomainManager::get_domain_policy ( +CORBA::Policy_ptr CORBA_DomainManager::get_domain_policy ( CORBA::PolicyType policy_type, CORBA::Environment &ACE_TRY_ENV ) @@ -791,49 +746,6 @@ CORBA::TypeCode_ptr _tc_CORBA_DomainManager = &_tc_TAO_tc_CORBA_DomainManager; -CORBA_ConstructionPolicy_ptr -tao_CORBA_ConstructionPolicy_duplicate ( - CORBA_ConstructionPolicy_ptr p - ) -{ - return CORBA_ConstructionPolicy::_duplicate (p); -} - -void -tao_CORBA_ConstructionPolicy_release ( - CORBA_ConstructionPolicy_ptr p - ) -{ - CORBA::release (p); -} - -CORBA_ConstructionPolicy_ptr -tao_CORBA_ConstructionPolicy_nil ( - void - ) -{ - return CORBA_ConstructionPolicy::_nil (); -} - -CORBA_ConstructionPolicy_ptr -tao_CORBA_ConstructionPolicy_narrow ( - CORBA::Object *p, - CORBA::Environment &ACE_TRY_ENV - ) -{ - return CORBA_ConstructionPolicy::_narrow (p, ACE_TRY_ENV); -} - -CORBA::Object * -tao_CORBA_ConstructionPolicy_upcast ( - void *src - ) -{ - CORBA_ConstructionPolicy **tmp = - ACE_static_cast (CORBA_ConstructionPolicy **, src); - return *tmp; -} - // ************************************************************* // Operations for class CORBA_ConstructionPolicy_var // ************************************************************* @@ -956,9 +868,8 @@ ACE_static_cast (CORBA_ConstructionPolicy **, src); return *tmp; } - // ************************************************************* -// Inline operations for class CORBA_ConstructionPolicy_out +// Operations for class CORBA_ConstructionPolicy_out // ************************************************************* CORBA_ConstructionPolicy_out::CORBA_ConstructionPolicy_out (CORBA_ConstructionPolicy_ptr &p) @@ -1024,7 +935,7 @@ TAO_ClientRequestInfo_CORBA_ConstructionPolicy_make_domain_manager ( TAO_GIOP_Invocation *_tao_invocation, CORBA::Object_ptr _tao_target, - CORBA_InterfaceDef_ptr object_type, + CORBA::InterfaceDef_ptr object_type, const CORBA::Boolean & constr_policy, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () @@ -1052,7 +963,7 @@ TAO_ClientRequestInfo_CORBA_ConstructionPolicy_make_domain_manager (const TAO_ClientRequestInfo_CORBA_ConstructionPolicy_make_domain_manager &); void operator= (const TAO_ClientRequestInfo_CORBA_ConstructionPolicy_make_domain_manager &); - CORBA_InterfaceDef_ptr object_type_; + CORBA::InterfaceDef_ptr object_type_; const CORBA::Boolean & constr_policy_; }; @@ -1060,7 +971,7 @@ TAO_ClientRequestInfo_CORBA_ConstructionPolicy_make_domain_manager::TAO_ClientRequestInfo_CORBA_ConstructionPolicy_make_domain_manager ( TAO_GIOP_Invocation *_tao_invocation, CORBA::Object_ptr _tao_target, - CORBA_InterfaceDef_ptr object_type, + CORBA::InterfaceDef_ptr object_type, const CORBA::Boolean & constr_policy, CORBA::Environment & ) @@ -1080,9 +991,17 @@ Dynamic::ParameterList_var safe_parameter_list = parameter_list; + TAO_IFR_Client_Adapter *adapter = + ACE_Dynamic_Service::instance ( + TAO_ORB_Core::ifr_client_adapter_name () + ); + CORBA::ULong length_object_type = parameter_list->length (); parameter_list->length (length_object_type + 1); - (*parameter_list)[length_object_type].argument <<= this->object_type_; + adapter->interfacedef_any_insert ( + (*parameter_list)[length_object_type].argument, + this->object_type_ + ); (*parameter_list)[length_object_type].mode = Dynamic::PARAM_IN; @@ -1136,7 +1055,7 @@ void _TAO_CORBA_ConstructionPolicy_Remote_Proxy_Impl::make_domain_manager ( CORBA_Object *_collocated_tao_target_, - CORBA_InterfaceDef_ptr object_type, + CORBA::InterfaceDef_ptr object_type, CORBA::Boolean constr_policy, CORBA::Environment &ACE_TRY_ENV ) @@ -1168,6 +1087,11 @@ #endif /* TAO_HAS_INTERCEPTORS */ + TAO_IFR_Client_Adapter *adapter = + ACE_Dynamic_Service::instance ( + TAO_ORB_Core::ifr_client_adapter_name () + ); + for (;;) { int _invoke_status = TAO_INVOKE_EXCEPTION; @@ -1208,7 +1132,7 @@ TAO_OutputCDR &_tao_out = _tao_call.out_stream (); if (!( - (_tao_out << object_type) && + (adapter->interfacedef_cdr_insert (_tao_out, object_type)) && (_tao_out << CORBA::Any::from_boolean (constr_policy)) )) TAO_INTERCEPTOR_THROW ( @@ -1449,7 +1373,7 @@ { if ( (!ACE_OS::strcmp ((char *)value, "IDL:CORBA_ConstructionPolicy:1.0")) || - (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA_Policy:1.0")) || + (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Policy:1.0")) || (!ACE_OS::strcmp ((char *)value, "IDL:omg.org/CORBA/Object:1.0"))) return 1; // success using local knowledge else @@ -1465,13 +1389,13 @@ retv = ACE_reinterpret_cast (void*, this); else if (type == ACE_reinterpret_cast (ptr_arith_t, - &CORBA_Policy::_narrow)) + &::CORBA::Policy::_narrow)) retv = ACE_reinterpret_cast ( void *, ACE_static_cast ( - CORBA_Policy_ptr, + CORBA::Policy_ptr, this ) ); @@ -1490,7 +1414,7 @@ } void CORBA_ConstructionPolicy::make_domain_manager ( - CORBA_InterfaceDef_ptr object_type, + CORBA::InterfaceDef_ptr object_type, CORBA::Boolean constr_policy, CORBA::Environment &ACE_TRY_ENV ) @@ -2056,11 +1980,6 @@ // If length is 0 we return true. if (0 >= _tao_seq_len) return 1; - // Add a check to the length of the sequence - // to make sure it does not exceed the length - // of the stream. (See bug 58.) - if (_tao_seq_len > strm.length()) - return 0; // retrieve all the elements CORBA::Boolean _tao_marshal_flag = 1; for (CORBA::ULong i = 0; i < _tao_sequence.length () && _tao_marshal_flag; i++) @@ -2071,4 +1990,3 @@ } return 0; // error } -