summaryrefslogtreecommitdiff
path: root/TAO/tao/Messaging/MessagingS.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Messaging/MessagingS.cpp')
-rw-r--r--TAO/tao/Messaging/MessagingS.cpp214
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 */