diff options
Diffstat (limited to 'TAO/tao/Messaging/MessagingS.cpp')
-rw-r--r-- | TAO/tao/Messaging/MessagingS.cpp | 214 |
1 files changed, 123 insertions, 91 deletions
diff --git a/TAO/tao/Messaging/MessagingS.cpp b/TAO/tao/Messaging/MessagingS.cpp index f616de642fc..3a3601faf20 100644 --- a/TAO/tao/Messaging/MessagingS.cpp +++ b/TAO/tao/Messaging/MessagingS.cpp @@ -15,13 +15,19 @@ // Irvine, CA // USA // http://doc.ece.uci.edu/ +// and +// Institute for Software Integrated Systems +// Vanderbilt University +// Nashville, TN +// USA +// http://www.isis.vanderbilt.edu/ // // Information about TAO is available at: // http://www.cs.wustl.edu/~schmidt/TAO.html // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_codegen.cpp:670 +// be/be_codegen.cpp:619 #ifndef _TAO_IDL_ORIG_MESSAGINGS_CPP_ #define _TAO_IDL_ORIG_MESSAGINGS_CPP_ @@ -32,9 +38,13 @@ #include "tao/PortableServer/Operation_Table.h" #include "tao/TAO_Server_Request.h" #include "tao/ORB_Core.h" +#include "tao/Profile.h" #include "tao/Stub.h" #include "tao/IFR_Client_Adapter.h" +#include "tao/Basic_Arguments.h" +#include "tao/Fixed_Size_Argument_T.h" #include "tao/PortableInterceptor.h" +#include "tao/Object_T.h" #if TAO_HAS_INTERCEPTORS == 1 #include "tao/RequestInfo_Util.h" #include "tao/PICurrent.h" @@ -43,6 +53,7 @@ #endif /* TAO_HAS_INTERCEPTORS == 1 */ #include "ace/Dynamic_Service.h" +#include "ace/config-all.h" #if defined (__BORLANDC__) #pragma option -w-rvl -w-rch -w-ccc -w-aus @@ -55,7 +66,15 @@ // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_interface.cpp:1731 +// be/be_visitor_arg_traits.cpp:59 + +// Arg traits specializations. +namespace TAO +{ +}; + +// TAO_IDL - Generated from +// be/be_interface.cpp:1403 class TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable : public TAO_Perfect_Hash_OpTable { @@ -66,7 +85,7 @@ public: }; /* C++ code produced by gperf version 2.8 (ACE version) */ -/* Command-line: gperf -m -M -J -c -C -D -E -T -f 0 -F 0 -a -o -t -p -K opname_ -L C++ -Z TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable -N lookup */ +/* Command-line: /project/tangotmp/bala/work/ACE+TAO/refactor/ACE_wrappers/bin/gperf -m -M -J -c -C -D -E -T -f 0 -F 0,0,0 -a -o -t -p -K opname_ -L C++ -Z TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable -N lookup */ unsigned int TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable::hash (const char *str, unsigned int len) { @@ -135,13 +154,13 @@ TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable::lookup (const char *str, unsign static const class TAO_operation_db_entry wordlist[] = { - {"",0},{"",0},{"",0},{"",0},{"",0}, - {"_is_a", &POA_Messaging::ReplyHandler::_is_a_skel}, - {"",0},{"",0},{"",0},{"",0}, - {"_component", &POA_Messaging::ReplyHandler::_component_skel}, - {"_interface", &POA_Messaging::ReplyHandler::_interface_skel}, - {"",0}, - {"_non_existent", &POA_Messaging::ReplyHandler::_non_existent_skel}, + {"",0,0,0},{"",0,0,0},{"",0,0,0},{"",0,0,0},{"",0,0,0}, + {"_is_a", &POA_Messaging::ReplyHandler::_is_a_skel, 0, 0}, + {"",0,0,0},{"",0,0,0},{"",0,0,0},{"",0,0,0}, + {"_component", &POA_Messaging::ReplyHandler::_component_skel, 0, 0}, + {"_interface", &POA_Messaging::ReplyHandler::_interface_skel, 0, 0}, + {"",0,0,0}, + {"_non_existent", &POA_Messaging::ReplyHandler::_non_existent_skel, 0, 0}, }; if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) @@ -161,7 +180,7 @@ TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable::lookup (const char *str, unsign static TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable tao_Messaging_ReplyHandler_optable; // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interceptors_ss.cpp:52 +// be/be_visitor_interface/interceptors_ss.cpp:52 #if (TAO_HAS_INTERCEPTORS == 1) @@ -172,10 +191,11 @@ static TAO_Messaging_ReplyHandler_Perfect_Hash_OpTable tao_Messaging_ReplyHandle // // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/strategized_proxy_broker_ss.cpp:40 +// be/be_visitor_interface/strategized_proxy_broker_ss.cpp:40 // Factory function Implementation. -POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker *POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::the_TAO_ReplyHandler_Strategized_Proxy_Broker (void) +POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker * +POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::the_TAO_ReplyHandler_Strategized_Proxy_Broker (void) { static POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker strategized_proxy_broker; return &strategized_proxy_broker; @@ -183,86 +203,73 @@ POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker *POA_Messaging::_TAO_R POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::_TAO_ReplyHandler_Strategized_Proxy_Broker (void) { - for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i) - { - this->proxy_cache_[i] = 0; - } } POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::~_TAO_ReplyHandler_Strategized_Proxy_Broker (void) { - for (int i = 0; i < TAO_Collocation_Strategies::CS_LAST; ++i) - { - delete this->proxy_cache_[i]; - - // Hack to prevent bug mentioned in 1204. Refer to 1204 - // for details.. - this->proxy_cache_[i] = 0; - } } -Messaging::_TAO_ReplyHandler_Proxy_Impl& -POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::select_proxy ( - ::Messaging::ReplyHandler *object +TAO::Collocation_Strategy +POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::get_strategy ( + CORBA::Object_ptr obj ACE_ENV_ARG_DECL ) + ACE_THROW_SPEC ((CORBA::SystemException)) { - int strategy = - TAO_ORB_Core::collocation_strategy (object ACE_ENV_ARG_PARAMETER); - ACE_CHECK_RETURN (*this->proxy_cache_[strategy]); + TAO::Collocation_Strategy strategy = + TAO_ORB_Core::collocation_strategy_new (obj ACE_ENV_ARG_PARAMETER); + ACE_CHECK_RETURN (TAO::TAO_CS_REMOTE_STRATEGY); - if (this->proxy_cache_[strategy] != 0) - { - return *this->proxy_cache_[strategy]; - } - - this->create_proxy (strategy ACE_ENV_ARG_PARAMETER); - ACE_CHECK_RETURN (*this->proxy_cache_[strategy]); - - return *this->proxy_cache_[strategy]; + return strategy; } -void -POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::create_proxy ( - int strategy +void +POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::dispatch ( + CORBA::Object_ptr obj, + CORBA::Object_out forward_obj, + TAO::Argument ** args, + int num_args, + const char * op, + size_t op_len, + TAO::Collocation_Strategy strategy ACE_ENV_ARG_DECL ) + ACE_THROW_SPEC ((CORBA::Exception)) { - ACE_GUARD (TAO_SYNCH_MUTEX, guard, this->mutex_); + TAO_Collocated_Skeleton collocated_skel; + + if (obj->_servant ()->_find (op, + collocated_skel, + strategy, + op_len) == -1) + ACE_THROW (CORBA::BAD_OPERATION ()); - if (this->proxy_cache_[strategy] == 0) + ACE_TRY { - switch (strategy) - { - case TAO_Collocation_Strategies::CS_THRU_POA_STRATEGY: - ACE_NEW_THROW_EX ( - this->proxy_cache_[strategy], - POA_Messaging::_TAO_ReplyHandler_ThruPOA_Proxy_Impl, - CORBA::NO_MEMORY () - ); - ACE_CHECK; - break; - - case TAO_Collocation_Strategies::CS_DIRECT_STRATEGY: - ACE_NEW_THROW_EX ( - this->proxy_cache_[strategy], - POA_Messaging::_TAO_ReplyHandler_Direct_Proxy_Impl, - CORBA::NO_MEMORY () - ); - ACE_CHECK; - break; - - case TAO_Collocation_Strategies::CS_REMOTE_STRATEGY: - default: - ACE_NEW_THROW_EX ( - this->proxy_cache_[strategy], - ::Messaging::_TAO_ReplyHandler_Remote_Proxy_Impl, - CORBA::NO_MEMORY () - ); - ACE_CHECK; - break; - } + collocated_skel ( + obj, + forward_obj, + args, + num_args + ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; } + #if (TAO_HAS_MINIMUM_CORBA == 0) + ACE_CATCH (PortableServer::ForwardRequest, forward_request) + { + forward_obj = + CORBA::Object::_duplicate (forward_request.forward_reference.in ()); + return; + } +#else + ACE_CATCHANY + { + ACE_UNUSED_ARG (forward_obj); + ACE_RE_THROW; + } +#endif /* TAO_HAS_MINIMUM_CORBA */ + ACE_ENDTRY; + ACE_CHECK; } // @@ -270,13 +277,13 @@ POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::create_proxy ( /////////////////////////////////////////////////////////////////////// // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:598 +// be/be_visitor_interface/interface_ss.cpp:603 -Messaging::_TAO_ReplyHandler_Proxy_Broker * -Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_function (CORBA::Object_ptr obj) +TAO::Collocation_Proxy_Broker * +Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_function (CORBA::Object_ptr) { - ACE_UNUSED_ARG (obj); - return ::POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::the_TAO_ReplyHandler_Strategized_Proxy_Broker(); + return + ::POA_Messaging::_TAO_ReplyHandler_Strategized_Proxy_Broker::the_TAO_ReplyHandler_Strategized_Proxy_Broker(); } int @@ -288,8 +295,14 @@ Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_Initializer (size_t) return 0; } -static int Messaging__TAO_ReplyHandler_Proxy_Broker_Stub_Factory_Initializer_Scarecrow = - Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_Initializer (ACE_reinterpret_cast (size_t, Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_Initializer)); +static int +Messaging__TAO_ReplyHandler_Proxy_Broker_Stub_Factory_Initializer_Scarecrow = + Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_Initializer ( + ACE_reinterpret_cast ( + size_t, + Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_Initializer + ) + ); /////////////////////////////////////////////////////////////////////// @@ -297,14 +310,17 @@ static int Messaging__TAO_ReplyHandler_Proxy_Broker_Stub_Factory_Initializer_Sca // // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/thru_poa_proxy_impl_ss.cpp:37 +// be/be_visitor_interface/thru_poa_proxy_impl_ss.cpp:37 POA_Messaging::_TAO_ReplyHandler_ThruPOA_Proxy_Impl::_TAO_ReplyHandler_ThruPOA_Proxy_Impl (void) {} -// ThruPOA Implementation of the IDL interface methods// +// ThruPOA Implementation of the IDL interface methods + +// // End ThruPOA Proxy Implementation /////////////////////////////////////////////////////////////////////// + /////////////////////////////////////////////////////////////////////// // Direct Proxy Implementation // @@ -313,13 +329,13 @@ POA_Messaging::_TAO_ReplyHandler_Direct_Proxy_Impl::_TAO_ReplyHandler_Direct_Pro {} + // // End Direct Proxy Implementation /////////////////////////////////////////////////////////////////////// - // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:98 +// be/be_visitor_interface/interface_ss.cpp:98 POA_Messaging::ReplyHandler::ReplyHandler (void) { @@ -329,14 +345,15 @@ POA_Messaging::ReplyHandler::ReplyHandler (void) POA_Messaging::ReplyHandler::ReplyHandler (const ReplyHandler& rhs) : TAO_Abstract_ServantBase (rhs), TAO_ServantBase (rhs) -{} +{ +} POA_Messaging::ReplyHandler::~ReplyHandler (void) { } // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:163 +// be/be_visitor_interface/interface_ss.cpp:165 void POA_Messaging::ReplyHandler::_is_a_skel ( TAO_ServerRequest &_tao_server_request, @@ -499,7 +516,7 @@ const char* POA_Messaging::ReplyHandler::_interface_repository_id (void) const } // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:532 +// be/be_visitor_interface/interface_ss.cpp:539 void POA_Messaging::ReplyHandler::_dispatch ( TAO_ServerRequest &req, @@ -514,7 +531,7 @@ void POA_Messaging::ReplyHandler::_dispatch ( } // TAO_IDL - Generated from -// W:\ACE_wrappers\TAO\TAO_IDL\be\be_visitor_interface/interface_ss.cpp:478 +// be/be_visitor_interface/interface_ss.cpp:479 Messaging::ReplyHandler * POA_Messaging::ReplyHandler::_this (ACE_ENV_SINGLE_ARG_DECL) @@ -552,6 +569,21 @@ POA_Messaging::ReplyHandler::_this (ACE_ENV_SINGLE_ARG_DECL) CORBA::Object_var obj = tmp; (void) safe_stub.release (); - return ::Messaging::ReplyHandler::_unchecked_narrow (obj.in ()); + typedef ::Messaging::ReplyHandler STUB_SCOPED_NAME; + return + TAO::Narrow_Utils<STUB_SCOPED_NAME>::unchecked_narrow ( + obj.in (), + Messaging__TAO_ReplyHandler_Proxy_Broker_Factory_function_pointer + ); } + +// TAO_IDL - Generated from +// be/be_visitor_root/root.cpp:1740 + +#if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) + +#elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) + +#endif /* !ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ + #endif /* ifndef */ |