diff options
48 files changed, 1543 insertions, 363 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index a51a77f83bb..a698cc8563b 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,15 +1,93 @@ +Mon Mar 27 16:11:29 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao: The following changes allows the user finer grain control + over the CORBA Messaging policies. Most (all?) of the CORBA + Messaging policies are evaluated in the critical path and + therefore having finer grain control over the policies is + important. Thanks to Dennis Noll <Dennis.Noll@MW.Boeing.com> + for suggesting this. + + - For all the policies, support is enabled by default if TAO is + configured for CORBA Messaging. If TAO is not configured for + CORBA Messaging, then policies cannot be enabled. Default + support for all policies can be turned off by setting + TAO_DISABLE_CORBA_MESSAGING_POLICIES to 1. Once + TAO_DISABLE_CORBA_MESSAGING_POLICIES is set to 1, individual + policies can be turned on through their own #define. Here is + how to make it work: + + (a) If you want most policies turned on and a few disabled, + disable the few explicitly, e.g.: + + #define TAO_HAS_REBIND_POLICY 0 + + (b) If you want most policies turned off and a few enabled, + diable all by default and enable the few explicitly, e.g.: + + #define TAO_DISABLE_CORBA_MESSAGING_POLICIES 1 + #define TAO_HAS_REBIND_POLICY 1 + + - The following #defines were added, one for each CORBA + Messaging policy. Code related to each of the policies now use + the appropriate #define instead of using + TAO_HAS_CORBA_MESSAGING. + + - TAO_HAS_REBIND_POLICY + - TAO_HAS_SYNC_SCOPE_POLICY + - TAO_HAS_PRIORITY_POLICIES + - TAO_HAS_REQUEST_START_TIME_POLICY + - TAO_HAS_REQUEST_END_TIME_POLICY + - TAO_HAS_REPLY_START_TIME_POLICY + - TAO_HAS_REPLY_END_TIME_POLICY + - TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY + - TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY + - TAO_HAS_ROUTING_POLICY + - TAO_HAS_MAX_HOPS_POLICY + - TAO_HAS_QUEUE_ORDER_POLICY + - TAO_HAS_CLIENT_PRIORITY_POLICY + - TAO_HAS_BUFFERING_CONSTRAINT_POLICY + + The following files were effected: + + - Buffering_Constraint_Policy.{cpp,h} + - Client_Priority_Policy.{cpp,h,i} + - IIOP_Connect.cpp + - UIOP_Connect.cpp + - Invocation.cpp + - ORB.{cpp,h} + - ORB_Core.{cpp,h,i} + - Object.{cpp,h} + - Stub.{cpp,h} + - Sync_Strategies.{cpp,h} + - TAOC.{cpp,h,i} + - TAOS.{cpp,h,i} + - Policy_Manager.{cpp,h,i} + - Messaging_Policy_i.{cpp,h,i} + - MessagingC.{cpp,h.i} + - MessagingS.{cpp,h.i} + + - AMI is part of Messaging. Therefore, checking for + TAO_HAS_CORBA_MESSAGING and TAO_HAS_AMI_CALLBACK or + TAO_HAS_AMI_POLLER is redundant. Removed the extra + TAO_HAS_CORBA_MESSAGING check. Following files were effected: + + - Asynch_Invocation.{cpp,h,i} + - PollableC.{cpp,h} + - PollableS.{cpp,h} + - Reply_Dispatcher.{cpp,h,i} + Mon Mar 27 11:11:01 2000 Balachandran Natarajan <bala@cs.wustl.edu> * tao/GIOP_Message_Acceptors.h: * tao/GIOP_Message_Acceptors.i: Added a destructor to the class TAO_GIOP_Message_Acceptors. This would reset the OutputCDR - that it holds. + that it holds. Mon Mar 27 09:05:58 2000 Balachandran Natarajan <bala@cs.wustl.edu> * orbsvcs/tests/EC_Basic/Makefile: * orbsvcs/tests/Event/Basic: Needed the library libTAO_Svc_Utils - for successful linking. + for successful linking. Mon Mar 27 08:57:42 2000 Balachandran Natarajan <bala@cs.wustl.edu> @@ -20,13 +98,13 @@ Sun Mar 26 20:20:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> * TAO_IDL/be/be_visitor_interface/smart_proxy_ch.cpp: * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp: - Generated an implementation for <_stubobj> method in - the Smart_Proxy_Base class which delegated this call + Generated an implementation for <_stubobj> method in + the Smart_Proxy_Base class which delegated this call to the underlying <base_proxy_> member. This allows - <_narrow> on a smart proxy object to succeed. Thanks + <_narrow> on a smart proxy object to succeed. Thanks to Brian Wallis <brian.wallis@ot.com.au> for reporting this bug. - + Sun Mar 26 14:57:38 2000 Jeff Parsons <parsons@cs.wustl.edu> * TAO_IDL/fe/idl.ll: @@ -40,7 +118,7 @@ Sun Mar 26 14:57:38 2000 Jeff Parsons <parsons@cs.wustl.edu> generated code can contain identifiers identical to IDL keywords. Note that if the stripped identifier matches a C++ keyword "_cxx_" will be prepended in - generated code as before. Thanks to Alex Bangs + generated code as before. Thanks to Alex Bangs <bangs@entelos.com> for uncovering this problem by reporting that the IDL compiler would not accept CosLifeCycle.idl with valuetype support enabled @@ -69,19 +147,19 @@ Sun Mar 26 13:32:10 2000 Jeff Parsons <parsons@cs.wustl.edu> statement were all superfluous in UTL_ScopeStack::push(). Sat Mar 25 22:10:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> - - * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: + + * TAO_IDL/be/be_visitor_interface/interface_cs.cpp: Added a check for TAO_Stub pointer in the generated code for - <_unchecked_narrow>. This check allowed <_unchecked_narrow> on + <_unchecked_narrow>. This check allowed <_unchecked_narrow> on a smart proxy to succeed. Previously this was failing as the <protocol_proxy_> member for a smart proxy is nil and it was used to increment its reference count. Thanks to Brian Wallis <brian.wallis@ot.com.au> for reporting this bug. - + This did not solve the bug, more changes had to be made. Please see ChangeLogTag:Sun Mar 26 20:20:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> - + Sat Mar 25 15:24:06 2000 Carlos O'Ryan <coryan@uci.edu> * examples/Callback_Quoter/Makefile: @@ -181,6 +259,25 @@ Fri Mar 24 10:21:27 2000 Jeff Parsons <parsons@cs.wustl.edu> Initialized some variables to avoid cxx warnings, and made some cosmetic changes. +Thu Mar 23 23:57:16 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * rules.tao.GNU: There was a problem with the current make rules + that define default values some #defines, e.g., if nothing is + specified by the user with the make command wrt corba messaging, + -DTAO_HAS_CORBA_MESSAGING=1 gets added automatically. Make + rules such as these are too aggressive since this prevents the + user from setting #define TAO_HAS_CORBA_MESSAGING 0 in their + config files. Therefore, the default setting of the following + variables was removed from rules.tao.GNU since they will + automatically be picked up from the orb config file unless + overridden by the user in their config file: + + - TAO_HAS_CORBA_MESSAGING + - TAO_HAS_RT_CORBA + - TAO_HAS_AMI + - TAO_HAS_AMI_POLLER + - TAO_HAS_AMI_CALLBACK + Thu Mar 23 21:49:36 2000 Darrell Brunsch <brunsch@uci.edu> * orbsvcs/orbsvcs/RTEvent.dsp: Somehow the debugging information diff --git a/TAO/tao/Asynch_Invocation.cpp b/TAO/tao/Asynch_Invocation.cpp index 852fa004fd9..7e655cebd85 100644 --- a/TAO/tao/Asynch_Invocation.cpp +++ b/TAO/tao/Asynch_Invocation.cpp @@ -49,7 +49,6 @@ ACE_TIMEPROBE_EVENT_DESCRIPTIONS (TAO_Asynch_Invocation_Timeprobe_Description, #endif /* ACE_ENABLE_TIMEPROBES */ -#if (TAO_HAS_CORBA_MESSAGING == 1) #if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) void @@ -111,7 +110,6 @@ TAO_GIOP_Twoway_Asynch_Invocation::invoke_i (CORBA::Environment &ACE_TRY_ENV) } #endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ //************************************************************************** diff --git a/TAO/tao/Asynch_Invocation.h b/TAO/tao/Asynch_Invocation.h index be7fc3915b4..3e7475b2586 100644 --- a/TAO/tao/Asynch_Invocation.h +++ b/TAO/tao/Asynch_Invocation.h @@ -31,9 +31,7 @@ #include "tao/MessagingC.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) - -# if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) class TAO_Export TAO_GIOP_Twoway_Asynch_Invocation : public TAO_GIOP_Invocation { @@ -84,9 +82,8 @@ private: // Reply dispatcher for the current synchronous Asynch_Invocation. }; -# endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ +#endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ //*********************************************************************** diff --git a/TAO/tao/Asynch_Invocation.i b/TAO/tao/Asynch_Invocation.i index d11828e3b6b..53fd1818e42 100644 --- a/TAO/tao/Asynch_Invocation.i +++ b/TAO/tao/Asynch_Invocation.i @@ -3,21 +3,19 @@ // $Id$ // -#if (TAO_HAS_CORBA_MESSAGING == 1) - -# if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) ACE_INLINE TAO_GIOP_Twoway_Asynch_Invocation:: TAO_GIOP_Twoway_Asynch_Invocation (TAO_Stub *stub, const char *operation, - CORBA::ULong opname_len, + CORBA::ULong opname_len, TAO_ORB_Core *orb_core, const TAO_Reply_Handler_Skeleton &reply_handler_skel, Messaging::ReplyHandler_ptr reply_handler_ptr) : TAO_GIOP_Invocation (stub, operation, - opname_len, + opname_len, orb_core), rd_ (0) { @@ -31,9 +29,7 @@ TAO_GIOP_Twoway_Asynch_Invocation (TAO_Stub *stub, reply_handler_ptr)); } -# endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ - -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ //**************************************************************************** @@ -46,7 +42,7 @@ TAO_GIOP_DII_Deferred_Invocation (TAO_Stub *stub, const CORBA::Request_ptr req) : TAO_GIOP_Invocation (stub, req->operation (), - ACE_OS::strlen (req->operation ()), + ACE_OS::strlen (req->operation ()), orb_core), rd_ (0) { diff --git a/TAO/tao/Buffering_Constraint_Policy.cpp b/TAO/tao/Buffering_Constraint_Policy.cpp index b63a124d3ce..1e83634bc86 100644 --- a/TAO/tao/Buffering_Constraint_Policy.cpp +++ b/TAO/tao/Buffering_Constraint_Policy.cpp @@ -3,7 +3,7 @@ #include "tao/Buffering_Constraint_Policy.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) ACE_RCSID(TAO, Buffering_Constraint_Policy, "$Id$") @@ -109,4 +109,4 @@ TAO_Buffering_Constraint_Policy::_default_POA (CORBA_Environment &) #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ diff --git a/TAO/tao/Buffering_Constraint_Policy.h b/TAO/tao/Buffering_Constraint_Policy.h index e35e27c14ba..4a46e879de9 100644 --- a/TAO/tao/Buffering_Constraint_Policy.h +++ b/TAO/tao/Buffering_Constraint_Policy.h @@ -27,7 +27,7 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) #include "tao/TAOS.h" @@ -94,7 +94,7 @@ private: #include "tao/Buffering_Constraint_Policy.i" #endif /* __ACE_INLINE__ */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ #include "ace/post.h" #endif /* TAO_BUFFERING_CONSTRAINT_POLICY_H */ diff --git a/TAO/tao/Client_Priority_Policy.cpp b/TAO/tao/Client_Priority_Policy.cpp index 6fafae0bc9d..d9742e8c143 100644 --- a/TAO/tao/Client_Priority_Policy.cpp +++ b/TAO/tao/Client_Priority_Policy.cpp @@ -7,7 +7,7 @@ #include "tao/Client_Priority_Policy.i" #endif /* __ACE_INLINE__ */ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) ACE_RCSID(TAO, Client_Priority_Policy, "$Id$") @@ -118,4 +118,4 @@ TAO_Client_Priority_Policy::_default_POA (CORBA_Environment &) #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ diff --git a/TAO/tao/Client_Priority_Policy.h b/TAO/tao/Client_Priority_Policy.h index 859fb0a5392..6c09136f670 100644 --- a/TAO/tao/Client_Priority_Policy.h +++ b/TAO/tao/Client_Priority_Policy.h @@ -29,7 +29,7 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) #include "tao/TAOS.h" @@ -98,7 +98,7 @@ private: #pragma warning(pop) #endif /* _MSC_VER */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ #if defined (__ACE_INLINE__) #include "tao/Client_Priority_Policy.i" diff --git a/TAO/tao/Client_Priority_Policy.i b/TAO/tao/Client_Priority_Policy.i index 0811902a8b0..c79bf202c70 100644 --- a/TAO/tao/Client_Priority_Policy.i +++ b/TAO/tao/Client_Priority_Policy.i @@ -1,6 +1,6 @@ /* -*- C++ -*- */ // $Id$ -#if (TAO_HAS_CORBA_MESSAGING == 1) -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ diff --git a/TAO/tao/IIOP_Connect.cpp b/TAO/tao/IIOP_Connect.cpp index 51ad3eee66d..e09d02cfc3e 100644 --- a/TAO/tao/IIOP_Connect.cpp +++ b/TAO/tao/IIOP_Connect.cpp @@ -17,8 +17,6 @@ ACE_RCSID(tao, IIOP_Connect, "$Id$") - - #if defined (ACE_ENABLE_TIMEPROBES) static const char *TAO_IIOP_Connect_Timeprobe_Description[] = @@ -104,7 +102,7 @@ TAO_IIOP_Server_Connection_Handler::TAO_IIOP_Server_Connection_Handler (TAO_ORB_ ACE_NEW (this->acceptor_factory_, TAO_GIOP_Message_Acceptors (orb_core)); } - + } TAO_IIOP_Server_Connection_Handler::~TAO_IIOP_Server_Connection_Handler (void) @@ -287,7 +285,7 @@ TAO_IIOP_Server_Connection_Handler::handle_input_i (ACE_HANDLE, this->orb_core_, this->transport_.message_state_, max_wait_time); - + if (result == -1 && TAO_debug_level > 0) { ACE_DEBUG ((LM_DEBUG, @@ -326,7 +324,7 @@ TAO_IIOP_Server_Connection_Handler::handle_input_i (ACE_HANDLE, // Reset the message state. this->transport_.message_state_.reset (0); - result = + result = this->acceptor_factory_->process_client_message (this->transport (), this->orb_core_, input_cdr, @@ -462,7 +460,8 @@ TAO_IIOP_Client_Connection_Handler::handle_timeout (const ACE_Time_Value &, ACE_Time_Value *max_wait_time = 0; -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *timeout_policy = this->orb_core_->stubless_relative_roundtrip_timeout (); @@ -476,7 +475,8 @@ TAO_IIOP_Client_Connection_Handler::handle_timeout (const ACE_Time_Value &, timeout_policy->set_time_value (max_wait_time_value); max_wait_time = &max_wait_time_value; } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ // Cannot deal with errors, and therefore they are ignored. this->transport ()->send_buffered_messages (max_wait_time); @@ -551,7 +551,7 @@ TAO_IIOP_Client_Connection_Handler::handle_cleanup (void) } - + // **************************************************************** #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) diff --git a/TAO/tao/Invocation.cpp b/TAO/tao/Invocation.cpp index b127c2a6f82..121e09b0f21 100644 --- a/TAO/tao/Invocation.cpp +++ b/TAO/tao/Invocation.cpp @@ -98,7 +98,8 @@ TAO_GIOP_Invocation::select_profile_based_on_policy (CORBA::Environment &ACE_TRY_ENV) ACE_THROW_SPEC ((CORBA::SystemException)) { -#if (TAO_HAS_CORBA_MESSAGING == 0) + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 0) ACE_UNUSED_ARG (ACE_TRY_ENV); this->profile_ = this->stub_->profile_in_use (); @@ -185,7 +186,7 @@ TAO_GIOP_Invocation::select_profile_based_on_policy return this->profile_; } -#endif /* TAO_HAS_CORBA_MESSAGING == 0 */ +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 0 */ } @@ -240,7 +241,8 @@ TAO_GIOP_Invocation::start (CORBA::Environment &ACE_TRY_ENV) // have the protocol) then we give it another profile to try. // So the invocation Object should handle policy decisions. -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *timeout_policy = this->stub_->relative_roundtrip_timeout (); @@ -253,7 +255,8 @@ TAO_GIOP_Invocation::start (CORBA::Environment &ACE_TRY_ENV) timeout_policy->set_time_value (this->max_wait_time_value_); this->max_wait_time_ = &this->max_wait_time_value_; } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ ACE_Countdown_Time countdown (this->max_wait_time_); // Loop until a connection is established or there aren't any more @@ -900,14 +903,16 @@ TAO_GIOP_Oneway_Invocation (TAO_Stub *stub, : TAO_GIOP_Invocation (stub, operation, opname_len, orb_core), sync_scope_ (TAO::SYNC_WITH_TRANSPORT) { -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy *ssp = stub->sync_scope (); if (ssp) { this->sync_scope_ = ssp->synchronization (); } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ } TAO_GIOP_Oneway_Invocation::~TAO_GIOP_Oneway_Invocation (void) diff --git a/TAO/tao/MessagingC.cpp b/TAO/tao/MessagingC.cpp index ddc1e33d3ed..e3da125c1c2 100644 --- a/TAO/tao/MessagingC.cpp +++ b/TAO/tao/MessagingC.cpp @@ -170,6 +170,9 @@ TAO_NAMESPACE_TYPE (const CORBA::UShort) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::UShort, ORDER_DEADLINE, 8) TAO_NAMESPACE_END + +#if (TAO_HAS_REBIND_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, REBIND_POLICY_TYPE, @@ -248,6 +251,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_RebindPolicy, &_tc_TAO_tc_Messaging_RebindPolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, SYNC_SCOPE_POLICY_TYPE, @@ -326,6 +334,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_SyncScopePolicy, &_tc_TAO_tc_Messaging_SyncScopePolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, REQUEST_PRIORITY_POLICY_TYPE, @@ -510,6 +523,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ReplyPriorityPolicy, &_tc_TAO_tc_Messaging_ReplyPriorityPolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, REQUEST_START_TIME_POLICY_TYPE, @@ -588,6 +606,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_RequestStartTimePolicy, &_tc_TAO_tc_Messaging_RequestStartTimePolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, REQUEST_END_TIME_POLICY_TYPE, @@ -666,6 +689,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_RequestEndTimePolicy, &_tc_TAO_tc_Messaging_RequestEndTimePolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, REPLY_START_TIME_POLICY_TYPE, @@ -744,6 +772,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ReplyStartTimePolicy, &_tc_TAO_tc_Messaging_ReplyStartTimePolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, REPLY_END_TIME_POLICY_TYPE, @@ -822,6 +855,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_ReplyEndTimePolicy, &_tc_TAO_tc_Messaging_ReplyEndTimePolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, RELATIVE_REQ_TIMEOUT_POLICY_TYPE, @@ -900,6 +938,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_RelativeRequestTimeoutPolicy, &_tc_TAO_tc_Messaging_RelativeRequestTimeoutPolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, RELATIVE_RT_TIMEOUT_POLICY_TYPE, @@ -979,6 +1022,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_RelativeRoundtripTimeoutPolicy, &_tc_TAO_tc_Messaging_RelativeRoundtripTimeoutPolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, ROUTING_POLICY_TYPE, @@ -1085,6 +1133,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_RoutingPolicy, &_tc_TAO_tc_Messaging_RoutingPolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, MAX_HOPS_POLICY_TYPE, @@ -1163,6 +1216,11 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_MaxHopsPolicy, &_tc_TAO_tc_Messaging_MaxHopsPolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + TAO_NAMESPACE_TYPE (const CORBA::ULong) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (const CORBA::ULong, QUEUE_ORDER_POLICY_TYPE, @@ -1241,6 +1299,9 @@ TAO_NAMESPACE_TYPE (CORBA::TypeCode_ptr) TAO_NAMESPACE_BEGIN (Messaging) TAO_NAMESPACE_DEFINE (CORBA::TypeCode_ptr, _tc_QueueOrderPolicy, &_tc_TAO_tc_Messaging_QueueOrderPolicy) TAO_NAMESPACE_END + +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + static const CORBA::Long _oc_Messaging_PolicyValue[] = { TAO_ENCAP_BYTE_ORDER, // byte order @@ -2073,6 +2134,8 @@ TAO_NAMESPACE_END // **************************************************************** +#if (TAO_HAS_REBIND_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::RebindPolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2131,6 +2194,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::RebindPolicy_ return 0; } +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::SyncScopePolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2189,6 +2256,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::SyncScopePoli return 0; } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + void operator<<= (CORBA::Any &_tao_any, const Messaging::PriorityRange &_tao_elem) // copying { TAO_OutputCDR stream; @@ -2391,6 +2462,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::ReplyPriority return 0; } +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::RequestStartTimePolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2449,6 +2524,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::RequestStartT return 0; } +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::RequestEndTimePolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2507,6 +2586,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::RequestEndTim return 0; } +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::ReplyStartTimePolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2565,6 +2648,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::ReplyStartTim return 0; } +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::ReplyEndTimePolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2623,6 +2710,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::ReplyEndTimeP return 0; } +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::RelativeRequestTimeoutPolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2682,6 +2773,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::RelativeReque return 0; } +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::RelativeRoundtripTimeoutPolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2740,7 +2835,9 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::RelativeRound return 0; } -// **************************************************************** +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) void operator<<= (CORBA::Any &_tao_any, const Messaging::RoutingTypeRange &_tao_elem) // copying { @@ -2828,8 +2925,6 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, const Messaging::Routing return _tao_any >>= ACE_const_cast(Messaging::RoutingTypeRange *&,_tao_elem); } -// **************************************************************** - void operator<<= (CORBA::Any &_tao_any, Messaging::RoutingPolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2888,6 +2983,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::RoutingPolicy return 0; } +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::MaxHopsPolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -2946,6 +3045,10 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::MaxHopsPolicy return 0; } +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) + void operator<<= (CORBA::Any &_tao_any, Messaging::QueueOrderPolicy_ptr _tao_elem) { TAO_OutputCDR stream; @@ -3004,6 +3107,8 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, Messaging::QueueOrderPol return 0; } +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + void operator<<= (CORBA::Any &_tao_any, const Messaging::PolicyValue &_tao_elem) // copying { TAO_OutputCDR stream; diff --git a/TAO/tao/MessagingC.h b/TAO/tao/MessagingC.h index 4329b6291da..6d08b3d7069 100644 --- a/TAO/tao/MessagingC.h +++ b/TAO/tao/MessagingC.h @@ -120,8 +120,9 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS const CORBA::UShort ORDER_DEADLINE; - TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong REBIND_POLICY_TYPE; +#if (TAO_HAS_REBIND_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong REBIND_POLICY_TYPE; class RebindPolicy; typedef RebindPolicy *RebindPolicy_ptr; @@ -215,6 +216,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_RebindPolicy; +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong SYNC_SCOPE_POLICY_TYPE; class SyncScopePolicy; @@ -309,6 +314,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_SyncScopePolicy; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong REQUEST_PRIORITY_POLICY_TYPE; struct TAO_Export PriorityRange @@ -536,6 +545,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ReplyPriorityPolicy; +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong REQUEST_START_TIME_POLICY_TYPE; class RequestStartTimePolicy; @@ -630,6 +643,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_RequestStartTimePolicy; +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong REQUEST_END_TIME_POLICY_TYPE; class RequestEndTimePolicy; @@ -724,6 +741,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_RequestEndTimePolicy; +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong REPLY_START_TIME_POLICY_TYPE; class ReplyStartTimePolicy; @@ -818,6 +839,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ReplyStartTimePolicy; +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong REPLY_END_TIME_POLICY_TYPE; class ReplyEndTimePolicy; @@ -912,6 +937,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ReplyEndTimePolicy; +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong RELATIVE_REQ_TIMEOUT_POLICY_TYPE; class RelativeRequestTimeoutPolicy; @@ -1006,6 +1035,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_RelativeRequestTimeoutPolicy; +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong RELATIVE_RT_TIMEOUT_POLICY_TYPE; class RelativeRoundtripTimeoutPolicy; @@ -1100,6 +1133,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_RelativeRoundtripTimeoutPolicy; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong ROUTING_POLICY_TYPE; struct TAO_Export RoutingTypeRange @@ -1233,6 +1270,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_RoutingPolicy; +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong MAX_HOPS_POLICY_TYPE; class MaxHopsPolicy; @@ -1327,6 +1368,10 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_MaxHopsPolicy; +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) + TAO_NAMESPACE_STORAGE_CLASS const CORBA::ULong QUEUE_ORDER_POLICY_TYPE; class QueueOrderPolicy; @@ -1421,6 +1466,8 @@ TAO_NAMESPACE Messaging TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_QueueOrderPolicy; +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + struct TAO_Export PolicyValue { static void _tao_any_destructor (void *); @@ -2118,14 +2165,25 @@ typedef void (*TAO_Reply_Handler_Skeleton)( CORBA::ULong reply_status, CORBA::Environment & ); + #endif /* TAO_HAS_AMI_CALLBACK == 1 */ +#if (TAO_HAS_REBIND_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::RebindPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RebindPolicy *&); +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::SyncScopePolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::SyncScopePolicy *&); +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + TAO_Export void operator<<= (CORBA::Any &, const Messaging::PriorityRange &); // copying version TAO_Export void operator<<= (CORBA::Any &, Messaging::PriorityRange*); // noncopying version TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::PriorityRange *&); // deprecated @@ -2137,24 +2195,52 @@ TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RequestPri TAO_Export void operator<<= (CORBA::Any &, Messaging::ReplyPriorityPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::ReplyPriorityPolicy *&); +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::RequestStartTimePolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RequestStartTimePolicy *&); +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::RequestEndTimePolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RequestEndTimePolicy *&); +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::ReplyStartTimePolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::ReplyStartTimePolicy *&); +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::ReplyEndTimePolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::ReplyEndTimePolicy *&); +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::RelativeRequestTimeoutPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RelativeRequestTimeoutPolicy *&); +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::RelativeRoundtripTimeoutPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RelativeRoundtripTimeoutPolicy *&); +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, const Messaging::RoutingTypeRange &); // copying version TAO_Export void operator<<= (CORBA::Any &, Messaging::RoutingTypeRange*); // noncopying version TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RoutingTypeRange *&); @@ -2163,12 +2249,22 @@ TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, const Messaging::Rout TAO_Export void operator<<= (CORBA::Any &, Messaging::RoutingPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::RoutingPolicy *&); +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::MaxHopsPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::MaxHopsPolicy *&); +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, Messaging::QueueOrderPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::QueueOrderPolicy *&); +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + TAO_Export void operator<<= (CORBA::Any &, const Messaging::PolicyValue &); // copying version TAO_Export void operator<<= (CORBA::Any &, Messaging::PolicyValue*); // noncopying version TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::PolicyValue *&); @@ -2180,52 +2276,116 @@ TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::PolicyValu TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, const Messaging::PolicyValueSeq *&); #if (TAO_HAS_AMI_CALLBACK == 1) + extern TAO_Export Messaging::ReplyHandler_ptr (*_TAO_collocation_Messaging_ReplyHandler_Stub_Factory_function_pointer) ( CORBA::Object_ptr obj); // Any operators for interface Messaging::ReplyHandler TAO_Export void operator<<= (CORBA::Any &, Messaging::ReplyHandler_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::ReplyHandler *&); + #endif /* TAO_HAS_AMI_CALLBACK == 1 */ #if (TAO_HAS_AMI_POLLER == 1) + // Any operators for interface Messaging::Poller TAO_Export void operator<<= (CORBA::Any &, Messaging::Poller_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, Messaging::Poller *&); + #endif /* TAO_HAS_AMI_POLLER == 1 */ #ifndef __ACE_INLINE__ +#if (TAO_HAS_REBIND_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RebindPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RebindPolicy_ptr &); + +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::SyncScopePolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::SyncScopePolicy_ptr &); + +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::PriorityRange &); // TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::PriorityRange &); TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RequestPriorityPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RequestPriorityPolicy_ptr &); TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::ReplyPriorityPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::ReplyPriorityPolicy_ptr &); + +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RequestStartTimePolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RequestStartTimePolicy_ptr &); + +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RequestEndTimePolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RequestEndTimePolicy_ptr &); + +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::ReplyStartTimePolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::ReplyStartTimePolicy_ptr &); + +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::ReplyEndTimePolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::ReplyEndTimePolicy_ptr &); + +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RelativeRequestTimeoutPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RelativeRequestTimeoutPolicy_ptr &); + +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RelativeRoundtripTimeoutPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RelativeRoundtripTimeoutPolicy_ptr &); + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RoutingTypeRange &); // TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RoutingTypeRange &); TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::RoutingPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::RoutingPolicy_ptr &); + +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::MaxHopsPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::MaxHopsPolicy_ptr &); + +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::QueueOrderPolicy_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::QueueOrderPolicy_ptr &); + +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::PolicyValue &); // TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::PolicyValue &); TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::PolicyValue::_tao_seq_Octet &); // @@ -2234,18 +2394,22 @@ TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::PolicyVa TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::PolicyValueSeq &); #if (TAO_HAS_AMI_CALLBACK == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::ReplyHandler_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::ReplyHandler_ptr &); TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::ExceptionHolder &); // TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::ExceptionHolder &); TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::ExceptionHolder::_tao_seq_Octet &); // TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::ExceptionHolder::_tao_seq_Octet &); + #endif /* TAO_HAS_AMI_CALLBACK == 1 */ #if (TAO_HAS_AMI_POLLER == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const Messaging::Poller_ptr ); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, Messaging::Poller_ptr &); -#endif + +#endif /* TAO_HAS_AMI_POLLER == 1 */ #endif /* __ACE_INLINE__ */ diff --git a/TAO/tao/MessagingC.i b/TAO/tao/MessagingC.i index 7a10f63abde..7dbf628b915 100644 --- a/TAO/tao/MessagingC.i +++ b/TAO/tao/MessagingC.i @@ -8,6 +8,8 @@ // Information about TAO is available at: // http://www.cs.wustl.edu/~schmidt/TAO.html +#if (TAO_HAS_REBIND_POLICY == 1) + ACE_INLINE Messaging::RebindPolicy::RebindPolicy (void) // default constructor {} @@ -195,6 +197,10 @@ Messaging::RebindPolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE Messaging::SyncScopePolicy::SyncScopePolicy (void) // default constructor {} @@ -382,6 +388,10 @@ Messaging::SyncScopePolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + // ************************************************************* // Inline operations for class Messaging::PriorityRange_var // ************************************************************* @@ -400,7 +410,7 @@ ACE_INLINE Messaging::PriorityRange_var::PriorityRange_var (const Messaging::PriorityRange_var &p) // copy constructor { if (p.ptr_) - ACE_NEW (this->ptr_, + ACE_NEW (this->ptr_, Messaging::PriorityRange(*p.ptr_)); else this->ptr_ = 0; @@ -426,9 +436,9 @@ Messaging::PriorityRange_var::operator= (const Messaging::PriorityRange_var &p) if (this != &p) { delete this->ptr_; - ACE_NEW_RETURN (this->ptr_, + ACE_NEW_RETURN (this->ptr_, Messaging::PriorityRange (*p.ptr_), - *this); + *this); } return *this; } @@ -868,6 +878,10 @@ Messaging::ReplyPriorityPolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + ACE_INLINE Messaging::RequestStartTimePolicy::RequestStartTimePolicy (void) // default constructor {} @@ -1055,6 +1069,10 @@ Messaging::RequestStartTimePolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + ACE_INLINE Messaging::RequestEndTimePolicy::RequestEndTimePolicy (void) // default constructor {} @@ -1242,6 +1260,10 @@ Messaging::RequestEndTimePolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + ACE_INLINE Messaging::ReplyStartTimePolicy::ReplyStartTimePolicy (void) // default constructor {} @@ -1429,6 +1451,10 @@ Messaging::ReplyStartTimePolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + ACE_INLINE Messaging::ReplyEndTimePolicy::ReplyEndTimePolicy (void) // default constructor {} @@ -1616,6 +1642,10 @@ Messaging::ReplyEndTimePolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + ACE_INLINE Messaging::RelativeRequestTimeoutPolicy::RelativeRequestTimeoutPolicy (void) // default constructor {} @@ -1803,6 +1833,10 @@ Messaging::RelativeRequestTimeoutPolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + ACE_INLINE Messaging::RelativeRoundtripTimeoutPolicy::RelativeRoundtripTimeoutPolicy (void) // default constructor {} @@ -1990,6 +2024,10 @@ Messaging::RelativeRoundtripTimeoutPolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) + // ************************************************************* // Inline operations for class Messaging::RoutingTypeRange_var // ************************************************************* @@ -2008,7 +2046,7 @@ ACE_INLINE Messaging::RoutingTypeRange_var::RoutingTypeRange_var (const Messaging::RoutingTypeRange_var &p) // copy constructor { if (p.ptr_) - ACE_NEW (this->ptr_, + ACE_NEW (this->ptr_, Messaging::RoutingTypeRange(*p.ptr_)); else this->ptr_ = 0; @@ -2034,9 +2072,9 @@ Messaging::RoutingTypeRange_var::operator= (const Messaging::RoutingTypeRange_va if (this != &p) { delete this->ptr_; - ACE_NEW_RETURN (this->ptr_, - Messaging::RoutingTypeRange (*p.ptr_), - *this); + ACE_NEW_RETURN (this->ptr_, + Messaging::RoutingTypeRange (*p.ptr_), + *this); } return *this; } @@ -2289,6 +2327,10 @@ Messaging::RoutingPolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + ACE_INLINE Messaging::MaxHopsPolicy::MaxHopsPolicy (void) // default constructor {} @@ -2476,6 +2518,10 @@ Messaging::MaxHopsPolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) + ACE_INLINE Messaging::QueueOrderPolicy::QueueOrderPolicy (void) // default constructor {} @@ -2663,6 +2709,8 @@ Messaging::QueueOrderPolicy_out::operator-> (void) return this->ptr_; } +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + // ************************************************************* // Inline operations for class Messaging::PolicyValue_var // ************************************************************* @@ -2681,7 +2729,7 @@ ACE_INLINE Messaging::PolicyValue_var::PolicyValue_var (const Messaging::PolicyValue_var &p) // copy constructor { if (p.ptr_) - ACE_NEW (this->ptr_, + ACE_NEW (this->ptr_, Messaging::PolicyValue(*p.ptr_)); else this->ptr_ = 0; @@ -2707,9 +2755,9 @@ Messaging::PolicyValue_var::operator= (const Messaging::PolicyValue_var &p) if (this != &p) { delete this->ptr_; - ACE_NEW_RETURN (this->ptr_, - Messaging::PolicyValue (*p.ptr_), - *this); + ACE_NEW_RETURN (this->ptr_, + Messaging::PolicyValue (*p.ptr_), + *this); } return *this; } @@ -2853,7 +2901,7 @@ ACE_INLINE Messaging::PolicyValueSeq_var::PolicyValueSeq_var (const Messaging::PolicyValueSeq_var &p) // copy constructor { if (p.ptr_) - ACE_NEW (this->ptr_, + ACE_NEW (this->ptr_, Messaging::PolicyValueSeq (*p.ptr_)); else this->ptr_ = 0; @@ -2879,9 +2927,9 @@ Messaging::PolicyValueSeq_var::operator= (const Messaging::PolicyValueSeq_var &p if (this != &p) { delete this->ptr_; - ACE_NEW_RETURN (this->ptr_, - Messaging::PolicyValueSeq (*p.ptr_), - *this); + ACE_NEW_RETURN (this->ptr_, + Messaging::PolicyValueSeq (*p.ptr_), + *this); } return *this; } @@ -3082,20 +3130,20 @@ Messaging::ExceptionHolder::_tao_seq_Octet_var::operator-> (void) return this->ptr_; } -ACE_INLINE +ACE_INLINE Messaging::ExceptionHolder::_tao_seq_Octet_var::operator const Messaging::ExceptionHolder::_tao_seq_Octet &() const // cast { return *this->ptr_; } -ACE_INLINE -Messaging::ExceptionHolder::_tao_seq_Octet_var::operator Messaging::ExceptionHolder::_tao_seq_Octet &() // cast +ACE_INLINE +Messaging::ExceptionHolder::_tao_seq_Octet_var::operator Messaging::ExceptionHolder::_tao_seq_Octet &() // cast { return *this->ptr_; } -ACE_INLINE -Messaging::ExceptionHolder::_tao_seq_Octet_var::operator Messaging::ExceptionHolder::_tao_seq_Octet &() const// cast +ACE_INLINE +Messaging::ExceptionHolder::_tao_seq_Octet_var::operator Messaging::ExceptionHolder::_tao_seq_Octet &() const// cast { return *this->ptr_; } @@ -3118,7 +3166,7 @@ Messaging::ExceptionHolder::_tao_seq_Octet_var::inout (void) return *this->ptr_; } -// mapping for variable size +// mapping for variable size ACE_INLINE Messaging::ExceptionHolder::_tao_seq_Octet *& Messaging::ExceptionHolder::_tao_seq_Octet_var::out (void) { @@ -3179,7 +3227,7 @@ Messaging::ExceptionHolder::_tao_seq_Octet_out::operator= (Messaging::ExceptionH return *this; } -ACE_INLINE +ACE_INLINE Messaging::ExceptionHolder::_tao_seq_Octet_out::operator Messaging::ExceptionHolder::_tao_seq_Octet *&() // cast { return this->ptr_; @@ -3213,7 +3261,7 @@ ACE_INLINE Messaging::ExceptionHolder::~ExceptionHolder (void) // destructor {} -ACE_INLINE const char* +ACE_INLINE const char* Messaging::ExceptionHolder::_tao_obv_static_repository_id () { return "IDL:Messaging/ExceptionHolder:1.0"; @@ -3238,7 +3286,7 @@ Messaging::ExceptionHolder_var::ExceptionHolder_var (const Messaging::ExceptionH : ptr_ (ACE_const_cast(Messaging::ExceptionHolder*, p)) {} -ACE_INLINE Messaging::ExceptionHolder* +ACE_INLINE Messaging::ExceptionHolder* Messaging::ExceptionHolder_var::ptr (void) const { return this->ptr_; @@ -3278,19 +3326,19 @@ Messaging::ExceptionHolder_var::operator= (const Messaging::ExceptionHolder_var return *this; } -ACE_INLINE +ACE_INLINE Messaging::ExceptionHolder_var::operator const Messaging::ExceptionHolder* () const // cast { return this->ptr_; } -ACE_INLINE -Messaging::ExceptionHolder_var::operator Messaging::ExceptionHolder* () // cast +ACE_INLINE +Messaging::ExceptionHolder_var::operator Messaging::ExceptionHolder* () // cast { return this->ptr_; } -ACE_INLINE Messaging::ExceptionHolder* +ACE_INLINE Messaging::ExceptionHolder* Messaging::ExceptionHolder_var::operator-> (void) const { return this->ptr_; @@ -3316,7 +3364,7 @@ Messaging::ExceptionHolder_var::out (void) return this->ptr_; } -ACE_INLINE Messaging::ExceptionHolder* +ACE_INLINE Messaging::ExceptionHolder* Messaging::ExceptionHolder_var::_retn (void) { // yield ownership of managed obj reference @@ -3373,7 +3421,7 @@ Messaging::ExceptionHolder_out::operator= (Messaging::ExceptionHolder* p) return *this; } -ACE_INLINE +ACE_INLINE Messaging::ExceptionHolder_out::operator Messaging::ExceptionHolder* &() // cast { return this->ptr_; @@ -3385,7 +3433,7 @@ Messaging::ExceptionHolder_out::ptr (void) // ptr return this->ptr_; } -ACE_INLINE Messaging::ExceptionHolder* +ACE_INLINE Messaging::ExceptionHolder* Messaging::ExceptionHolder_out::operator-> (void) { return this->ptr_; @@ -3778,6 +3826,8 @@ Messaging::Poller_out::operator-> (void) // **************************************************************** +#if (TAO_HAS_REBIND_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -3816,6 +3866,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &, @@ -3865,9 +3919,13 @@ operator>> ( return 0; } -ACE_INLINE CORBA::Boolean +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + +ACE_INLINE CORBA::Boolean operator<< ( - TAO_OutputCDR &strm, + TAO_OutputCDR &strm, const Messaging::PriorityRange &_tao_aggregate ) { @@ -3881,9 +3939,9 @@ operator<< ( } -ACE_INLINE CORBA::Boolean +ACE_INLINE CORBA::Boolean operator>> ( - TAO_InputCDR &strm, + TAO_InputCDR &strm, Messaging::PriorityRange &_tao_aggregate ) { @@ -3973,6 +4031,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4011,6 +4073,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4049,6 +4115,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4087,6 +4157,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4125,6 +4199,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4163,6 +4241,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4201,11 +4283,13 @@ operator>> ( return 0; } -// **************************************************************** +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ -ACE_INLINE CORBA::Boolean +#if (TAO_HAS_ROUTING_POLICY == 1) + +ACE_INLINE CORBA::Boolean operator<< ( - TAO_OutputCDR &strm, + TAO_OutputCDR &strm, const Messaging::RoutingTypeRange &_tao_aggregate ) { @@ -4219,9 +4303,9 @@ operator<< ( } -ACE_INLINE CORBA::Boolean +ACE_INLINE CORBA::Boolean operator>> ( - TAO_InputCDR &strm, + TAO_InputCDR &strm, Messaging::RoutingTypeRange &_tao_aggregate ) { @@ -4273,6 +4357,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4311,6 +4399,10 @@ operator>> ( return 0; } +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) + ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, @@ -4349,6 +4441,8 @@ operator>> ( return 0; } +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + // **************************************************************** ACE_INLINE CORBA::Boolean operator<< ( @@ -4410,9 +4504,9 @@ ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, Messaging::PolicyValue // **************************************************************** -ACE_INLINE CORBA::Boolean +ACE_INLINE CORBA::Boolean operator<< ( - TAO_OutputCDR &strm, + TAO_OutputCDR &strm, const Messaging::PolicyValue &_tao_aggregate ) { @@ -4426,9 +4520,9 @@ operator<< ( } -ACE_INLINE CORBA::Boolean +ACE_INLINE CORBA::Boolean operator>> ( - TAO_InputCDR &strm, + TAO_InputCDR &strm, Messaging::PolicyValue &_tao_aggregate ) { @@ -4444,7 +4538,7 @@ operator>> ( // **************************************************************** -ACE_INLINE CORBA::Boolean +ACE_INLINE CORBA::Boolean operator<< ( TAO_OutputCDR &strm, const Messaging::PolicyValueSeq &_tao_sequence @@ -4461,9 +4555,9 @@ operator<< ( return 0; // error } -ACE_INLINE CORBA::Boolean +ACE_INLINE CORBA::Boolean operator>> ( - TAO_InputCDR &strm, + TAO_InputCDR &strm, Messaging::PolicyValueSeq &_tao_sequence ) { @@ -4510,7 +4604,7 @@ OBV_Messaging::ExceptionHolder::_tao_marshal_state (TAO_OutputCDR &strm) return 1; else return 0; - + } ACE_INLINE CORBA::Boolean @@ -4524,7 +4618,7 @@ OBV_Messaging::ExceptionHolder::_tao_unmarshal_state (TAO_InputCDR &strm) return 1; else return 0; - + } diff --git a/TAO/tao/MessagingS.cpp b/TAO/tao/MessagingS.cpp index cc3f5ef80e7..4596df6d5d5 100644 --- a/TAO/tao/MessagingS.cpp +++ b/TAO/tao/MessagingS.cpp @@ -26,7 +26,9 @@ ACE_RCSID(tao, MessagingS, "$Id$") - POA_Messaging::RebindPolicy::RebindPolicy (void) +#if (TAO_HAS_REBIND_POLICY == 1) + +POA_Messaging::RebindPolicy::RebindPolicy (void) { } @@ -137,7 +139,9 @@ POA_Messaging::RebindPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) POA_Messaging::SyncScopePolicy::SyncScopePolicy (void) { @@ -251,7 +255,9 @@ POA_Messaging::SyncScopePolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) POA_Messaging::RequestPriorityPolicy::RequestPriorityPolicy (void) { @@ -364,8 +370,6 @@ POA_Messaging::RequestPriorityPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** - POA_Messaging::ReplyPriorityPolicy::ReplyPriorityPolicy (void) { } @@ -477,7 +481,9 @@ POA_Messaging::ReplyPriorityPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) POA_Messaging::RequestStartTimePolicy::RequestStartTimePolicy (void) { @@ -590,7 +596,9 @@ POA_Messaging::RequestStartTimePolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) POA_Messaging::RequestEndTimePolicy::RequestEndTimePolicy (void) { @@ -703,7 +711,9 @@ POA_Messaging::RequestEndTimePolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) POA_Messaging::ReplyStartTimePolicy::ReplyStartTimePolicy (void) { @@ -816,7 +826,9 @@ POA_Messaging::ReplyStartTimePolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) POA_Messaging::ReplyEndTimePolicy::ReplyEndTimePolicy (void) { @@ -929,7 +941,9 @@ POA_Messaging::ReplyEndTimePolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) POA_Messaging::RelativeRequestTimeoutPolicy::RelativeRequestTimeoutPolicy (void) { @@ -1045,7 +1059,9 @@ POA_Messaging::RelativeRequestTimeoutPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) POA_Messaging::RelativeRoundtripTimeoutPolicy::RelativeRoundtripTimeoutPolicy (void) { @@ -1161,7 +1177,9 @@ POA_Messaging::RelativeRoundtripTimeoutPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) POA_Messaging::RoutingPolicy::RoutingPolicy (void) { @@ -1276,7 +1294,9 @@ POA_Messaging::RoutingPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) POA_Messaging::MaxHopsPolicy::MaxHopsPolicy (void) { @@ -1391,7 +1411,9 @@ POA_Messaging::MaxHopsPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) POA_Messaging::QueueOrderPolicy::QueueOrderPolicy (void) { @@ -1506,7 +1528,7 @@ POA_Messaging::QueueOrderPolicy::_dispatch ( ACE_TRY_ENV); } -// **************************************************************** +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ #if (TAO_HAS_AMI_CALLBACK == 1) diff --git a/TAO/tao/MessagingS.h b/TAO/tao/MessagingS.h index 9e51904c8c8..68bd413a0d7 100644 --- a/TAO/tao/MessagingS.h +++ b/TAO/tao/MessagingS.h @@ -33,6 +33,9 @@ TAO_NAMESPACE POA_Messaging { + +#if (TAO_HAS_REBIND_POLICY == 1) + class RebindPolicy; typedef RebindPolicy *RebindPolicy_ptr; class TAO_Export RebindPolicy : public virtual POA_CORBA::Policy, @@ -154,6 +157,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_REBIND_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + class SyncScopePolicy; typedef SyncScopePolicy *SyncScopePolicy_ptr; class TAO_Export SyncScopePolicy : public virtual POA_CORBA::Policy, @@ -272,6 +279,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_PRIORITY_POLICIES == 1) + class RequestPriorityPolicy; typedef RequestPriorityPolicy *RequestPriorityPolicy_ptr; class TAO_Export RequestPriorityPolicy : public virtual POA_CORBA::Policy, @@ -514,6 +525,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_PRIORITY_POLICIES == 1 */ + +#if (TAO_HAS_REQUEST_START_TIME_POLICY == 1) + class RequestStartTimePolicy; typedef RequestStartTimePolicy *RequestStartTimePolicy_ptr; class TAO_Export RequestStartTimePolicy : public virtual POA_CORBA::Policy, @@ -635,6 +650,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_REQUEST_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REQUEST_END_TIME_POLICY == 1) + class RequestEndTimePolicy; typedef RequestEndTimePolicy *RequestEndTimePolicy_ptr; class TAO_Export RequestEndTimePolicy : public virtual POA_CORBA::Policy, @@ -756,6 +775,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_REQUEST_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_START_TIME_POLICY == 1) + class ReplyStartTimePolicy; typedef ReplyStartTimePolicy *ReplyStartTimePolicy_ptr; class TAO_Export ReplyStartTimePolicy : public virtual POA_CORBA::Policy, @@ -877,6 +900,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_REPLY_START_TIME_POLICY == 1 */ + +#if (TAO_HAS_REPLY_END_TIME_POLICY == 1) + class ReplyEndTimePolicy; typedef ReplyEndTimePolicy *ReplyEndTimePolicy_ptr; class TAO_Export ReplyEndTimePolicy : public virtual POA_CORBA::Policy, @@ -998,6 +1025,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_REPLY_END_TIME_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1) + class RelativeRequestTimeoutPolicy; typedef RelativeRequestTimeoutPolicy *RelativeRequestTimeoutPolicy_ptr; class TAO_Export RelativeRequestTimeoutPolicy : public virtual POA_CORBA::Policy, @@ -1116,6 +1147,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + class RelativeRoundtripTimeoutPolicy; typedef RelativeRoundtripTimeoutPolicy *RelativeRoundtripTimeoutPolicy_ptr; class TAO_Export RelativeRoundtripTimeoutPolicy : public virtual POA_CORBA::Policy, @@ -1234,6 +1269,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_ROUTING_POLICY == 1) + class RoutingPolicy; typedef RoutingPolicy *RoutingPolicy_ptr; class TAO_Export RoutingPolicy : public virtual POA_CORBA::Policy, @@ -1355,6 +1394,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_ROUTING_POLICY == 1 */ + +#if (TAO_HAS_MAX_HOPS_POLICY == 1) + class MaxHopsPolicy; typedef MaxHopsPolicy *MaxHopsPolicy_ptr; class TAO_Export MaxHopsPolicy : public virtual POA_CORBA::Policy, @@ -1476,6 +1519,10 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_MAX_HOPS_POLICY == 1 */ + +#if (TAO_HAS_QUEUE_ORDER_POLICY == 1) + class QueueOrderPolicy; typedef QueueOrderPolicy *QueueOrderPolicy_ptr; class TAO_Export QueueOrderPolicy : public virtual POA_CORBA::Policy, @@ -1597,6 +1644,8 @@ private: #endif /* ACE_HAS_USING_KEYWORD */ +#endif /* TAO_HAS_QUEUE_ORDER_POLICY == 1 */ + #if (TAO_HAS_AMI_CALLBACK == 1) class ReplyHandler; diff --git a/TAO/tao/MessagingS.i b/TAO/tao/MessagingS.i index cb169078791..ac235b35edc 100644 --- a/TAO/tao/MessagingS.i +++ b/TAO/tao/MessagingS.i @@ -9,6 +9,7 @@ // http://www.cs.wustl.edu/~schmidt/TAO.html #if (TAO_HAS_AMI_POLLER == 1) + ACE_INLINE void POA_Messaging::Poller::is_ready_skel ( CORBA::ServerRequest &req, void *obj, @@ -39,4 +40,5 @@ ACE_INLINE void POA_Messaging::Poller::create_pollable_set_skel ( env ); } + #endif /* TAO_HAS_AMI_POLLER == 1 */ diff --git a/TAO/tao/Messaging_Policy_i.cpp b/TAO/tao/Messaging_Policy_i.cpp index 67a0a0f32cb..a75a74cfa3e 100644 --- a/TAO/tao/Messaging_Policy_i.cpp +++ b/TAO/tao/Messaging_Policy_i.cpp @@ -1,9 +1,6 @@ // $Id$ #include "tao/Messaging_Policy_i.h" - -#if (TAO_HAS_CORBA_MESSAGING == 1) - #include "tao/debug.h" #if ! defined (__ACE_INLINE__) @@ -12,6 +9,8 @@ ACE_RCSID(TAO, Messaging_Policy_i, "$Id$") +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy::TAO_RelativeRoundtripTimeoutPolicy (PortableServer::POA_ptr poa, const TimeBase::TimeT& relative_expiry) : poa_ (PortableServer::POA::_duplicate (poa)), @@ -141,8 +140,12 @@ TAO_RelativeRoundtripTimeoutPolicy::set_time_value (ACE_Time_Value &time_value) } } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + //////////////////////////////////////////////////////////////////////////////// +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy::TAO_Sync_Scope_Policy (Messaging::SyncScope synchronization, PortableServer::POA_ptr poa) : synchronization_ (synchronization), @@ -235,6 +238,8 @@ TAO_Sync_Scope_Policy::_default_POA (CORBA_Environment &) return PortableServer::POA::_duplicate (this->poa_.in ()); } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + //////////////////////////////////////////////////////////////////////////////// #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) @@ -242,5 +247,3 @@ TAO_Sync_Scope_Policy::_default_POA (CORBA_Environment &) #elif defined(ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ - -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ diff --git a/TAO/tao/Messaging_Policy_i.h b/TAO/tao/Messaging_Policy_i.h index bb964cf5392..73f55b586ec 100644 --- a/TAO/tao/Messaging_Policy_i.h +++ b/TAO/tao/Messaging_Policy_i.h @@ -22,9 +22,6 @@ #include "ace/pre.h" #include "tao/orbconf.h" - -#if (TAO_HAS_CORBA_MESSAGING == 1) - #include "tao/MessagingS.h" #if defined(_MSC_VER) @@ -34,6 +31,8 @@ #pragma warning(disable:4250) #endif /* _MSC_VER */ +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + class TAO_Export TAO_RelativeRoundtripTimeoutPolicy : public TAO_RefCountServantBase, public POA_Messaging::RelativeRoundtripTimeoutPolicy { @@ -84,8 +83,12 @@ private: // The attribute }; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + //////////////////////////////////////////////////////////////////////////////// +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + class TAO_Export TAO_Sync_Scope_Policy : public TAO_RefCountServantBase, public POA_Messaging::SyncScopePolicy @@ -144,7 +147,7 @@ private: #pragma warning(pop) #endif /* _MSC_VER */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ #include "ace/post.h" #endif /* TAO_MESSAGING_POLICY_I_H */ diff --git a/TAO/tao/Messaging_Policy_i.i b/TAO/tao/Messaging_Policy_i.i index dc9fb6240c0..878791281d0 100644 --- a/TAO/tao/Messaging_Policy_i.i +++ b/TAO/tao/Messaging_Policy_i.i @@ -1,5 +1,7 @@ // $Id$ +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE Messaging::SyncScope TAO_Sync_Scope_Policy::synchronization (CORBA::Environment &) { @@ -11,3 +13,5 @@ TAO_Sync_Scope_Policy::synchronization (void) { return this->synchronization_; } + +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ diff --git a/TAO/tao/ORB.cpp b/TAO/tao/ORB.cpp index 5994e48fb27..2f5fadea0c1 100644 --- a/TAO/tao/ORB.cpp +++ b/TAO/tao/ORB.cpp @@ -40,11 +40,9 @@ # include "tao/ValueFactory_Map.h" #endif /* TAO_HAS_VALUETYPE */ -#if (TAO_HAS_CORBA_MESSAGING == 1) #include "tao/Messaging_Policy_i.h" #include "tao/Client_Priority_Policy.h" #include "tao/Buffering_Constraint_Policy.h" -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ #if defined (ACE_HAS_EXCEPTIONS) # if defined (ACE_MVS) @@ -436,29 +434,41 @@ CORBA_ORB::resolve_poa_current (CORBA::Environment &ACE_TRY_ENV) CORBA_Object_ptr CORBA_ORB::resolve_policy_manager (CORBA::Environment &ACE_TRY_ENV) { + #if (TAO_HAS_CORBA_MESSAGING == 1) + TAO_Policy_Manager *policy_manager = this->orb_core_->policy_manager (); if (policy_manager == 0) return CORBA_Object::_nil (); return policy_manager->_this (ACE_TRY_ENV); + #else + ACE_UNUSED_ARG (ACE_TRY_ENV); return CORBA_Object::_nil (); + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + } CORBA_Object_ptr CORBA_ORB::resolve_policy_current (CORBA::Environment &ACE_TRY_ENV) { + #if (TAO_HAS_CORBA_MESSAGING == 1) + TAO_Policy_Current &policy_current = this->orb_core_->policy_current (); return policy_current._this (ACE_TRY_ENV); + #else + ACE_UNUSED_ARG (ACE_TRY_ENV); return CORBA_Object::_nil (); + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + } CORBA_Object_ptr @@ -1709,26 +1719,43 @@ CORBA_ORB::create_policy (CORBA::PolicyType type, switch (type) { + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + case TAO_MESSAGING_RELATIVE_RT_TIMEOUT_POLICY_TYPE: return TAO_RelativeRoundtripTimeoutPolicy::create (root_poa.in (), val, ACE_TRY_ENV); +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + case TAO_CLIENT_PRIORITY_POLICY_TYPE: return TAO_Client_Priority_Policy::create (root_poa.in (), val, ACE_TRY_ENV); +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE: return TAO_Sync_Scope_Policy::create (root_poa.in (), val, ACE_TRY_ENV); +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + case TAO_BUFFERING_CONSTRAINT_POLICY_TYPE: return TAO_Buffering_Constraint_Policy::create (root_poa.in (), val, ACE_TRY_ENV); +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + case TAO_MESSAGING_REBIND_POLICY_TYPE: case TAO_MESSAGING_REQUEST_PRIORITY_POLICY_TYPE: case TAO_MESSAGING_REPLY_PRIORITY_POLICY_TYPE: diff --git a/TAO/tao/ORB.h b/TAO/tao/ORB.h index c20b945d815..53e08541bd4 100644 --- a/TAO/tao/ORB.h +++ b/TAO/tao/ORB.h @@ -620,10 +620,12 @@ public: // references available via the initial references mechanism. #if (TAO_HAS_CORBA_MESSAGING == 1) + CORBA::Policy_ptr create_policy (CORBA::PolicyType type, const CORBA::Any& val, CORBA_Environment &ACE_TRY_ENV = TAO_default_environment ()); + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ // ---------------------------------------------------------------- diff --git a/TAO/tao/ORB_Core.cpp b/TAO/tao/ORB_Core.cpp index 980eb6b9402..da3ef635be9 100644 --- a/TAO/tao/ORB_Core.cpp +++ b/TAO/tao/ORB_Core.cpp @@ -79,11 +79,15 @@ TAO_ORB_Core::TAO_ORB_Core (const char *orbid) opt_for_collocation_ (1), use_global_collocation_ (1), collocation_strategy_ (THRU_POA), + #if (TAO_HAS_CORBA_MESSAGING == 1) + policy_manager_ (0), default_policies_ (0), policy_current_ (0), + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + poa_current_ (0), object_adapter_ (0), tm_ (), @@ -105,10 +109,10 @@ TAO_ORB_Core::TAO_ORB_Core (const char *orbid) open_lock_ (), open_called_ (0), priority_mapping_ (0), -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) eager_buffering_sync_strategy_ (0), delayed_buffering_sync_strategy_ (0), -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ transport_sync_strategy_ (0), svc_config_argc_ (0), svc_config_argv_ (0) @@ -121,7 +125,7 @@ TAO_ORB_Core::TAO_ORB_Core (const char *orbid) ACE_NEW (this->to_iso8859_, ACE_IBM1047_ISO8859); #endif /* ACE_MVS */ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) ACE_NEW (this->eager_buffering_sync_strategy_, TAO_Eager_Buffering_Sync_Strategy); @@ -129,6 +133,10 @@ TAO_ORB_Core::TAO_ORB_Core (const char *orbid) ACE_NEW (this->delayed_buffering_sync_strategy_, TAO_Delayed_Buffering_Sync_Strategy); +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + +#if (TAO_HAS_CORBA_MESSAGING == 1) + ACE_NEW (this->policy_manager_, TAO_Policy_Manager); @@ -152,11 +160,15 @@ TAO_ORB_Core::~TAO_ORB_Core (void) delete this->from_iso8859_; delete this->to_iso8859_; -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) delete this->eager_buffering_sync_strategy_; delete this->delayed_buffering_sync_strategy_; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + +#if (TAO_HAS_CORBA_MESSAGING == 1) + delete this->policy_manager_; delete this->default_policies_; delete this->policy_current_; @@ -963,7 +975,7 @@ TAO_ORB_Core::init (int &argc, char *argv[], CORBA::Environment &ACE_TRY_ENV) { if (TAO_debug_level > 0) { - current_arg = arg_shifter.get_current (); + current_arg = arg_shifter.get_current (); ACE_DEBUG ((LM_ERROR, ASYS_TEXT ("ERROR: Unknown \"-ORB\" option ") ASYS_TEXT ("<%s>.\n"), @@ -2167,7 +2179,7 @@ TAO_ORB_Core::implrepo_service (void) return CORBA::Object::_duplicate (this->implrepo_service_); } -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) TAO_RelativeRoundtripTimeoutPolicy * TAO_ORB_Core::stubless_relative_roundtrip_timeout (void) @@ -2196,7 +2208,7 @@ TAO_ORB_Core::stubless_relative_roundtrip_timeout (void) return result; } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ // **************************************************************** @@ -2252,9 +2264,13 @@ TAO_ORB_Core_TSS_Resources::~TAO_ORB_Core_TSS_Resources (void) TAO_TSS_Resources::TAO_TSS_Resources (void) : poa_current_impl_ (0), default_environment_ (&this->tss_environment_) + #if (TAO_HAS_CORBA_MESSAGING == 1) + , policy_current_ (&this->initial_policy_current_) + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + { } diff --git a/TAO/tao/ORB_Core.h b/TAO/tao/ORB_Core.h index b332c2dab26..6dd5693a9a0 100644 --- a/TAO/tao/ORB_Core.h +++ b/TAO/tao/ORB_Core.h @@ -55,12 +55,12 @@ class TAO_Reactor_Registry; class TAO_Leader_Follower; class TAO_Priority_Mapping; -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) class TAO_Eager_Buffering_Sync_Strategy; class TAO_Delayed_Buffering_Sync_Strategy; -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ class TAO_Transport_Sync_Strategy; @@ -325,27 +325,43 @@ public: CORBA::Environment &ACE_TRY_ENV = TAO_default_environment ()); // Accesor to obtain the default policy for a particular policy - // type. - // If there is no default policy it returns CORBA::Policy::_nil () + // type. If there is no default policy it returns + // CORBA::Policy::_nil () + +#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) TAO_RelativeRoundtripTimeoutPolicy *default_relative_roundtrip_timeout (void) const; + TAO_RelativeRoundtripTimeoutPolicy *stubless_relative_roundtrip_timeout (void); + // Access to the RoundtripTimeoutPolicy policy set on the thread or + // on the ORB. In this method, we do not consider the stub since we + // do not have access to it. + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + TAO_Client_Priority_Policy *default_client_priority (void) const; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy *default_sync_scope (void) const; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Buffering_Constraint_Policy *default_buffering_constraint (void) const; // = This strategy will buffer messages. TAO_Eager_Buffering_Sync_Strategy &eager_buffering_sync_strategy (void); TAO_Delayed_Buffering_Sync_Strategy &delayed_buffering_sync_strategy (void); - TAO_RelativeRoundtripTimeoutPolicy *stubless_relative_roundtrip_timeout (void); - // Access to the RoundtripTimeoutPolicy policy set on the thread or - // on the ORB. In this method, we do not consider the stub since we - // do not have access to it. - -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ TAO_Transport_Sync_Strategy &transport_sync_strategy (void); // This strategy will sync with the transport. @@ -530,6 +546,7 @@ protected: // Default collocation policy. This should never be ORB_CONTROL. #if (TAO_HAS_CORBA_MESSAGING == 1) + TAO_Policy_Manager *policy_manager_; // The Policy_Manager for this ORB. @@ -538,6 +555,7 @@ protected: TAO_Policy_Current *policy_current_; // Policy current. + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ TAO_POA_Current *poa_current_; @@ -595,7 +613,7 @@ protected: TAO_Priority_Mapping *priority_mapping_; // The priority mapping. -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) TAO_Eager_Buffering_Sync_Strategy *eager_buffering_sync_strategy_; // This strategy will buffer messages. @@ -603,7 +621,7 @@ protected: TAO_Delayed_Buffering_Sync_Strategy *delayed_buffering_sync_strategy_; // This strategy will buffer messages. -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ TAO_Transport_Sync_Strategy *transport_sync_strategy_; // This strategy will sync with the transport. @@ -678,13 +696,16 @@ public: // still holds one. #if (TAO_HAS_CORBA_MESSAGING == 1) + TAO_Policy_Current_Impl initial_policy_current_; // The initial PolicyCurrent for this thread. Should be a TSS // resource. TAO_Policy_Current_Impl *policy_current_; // This pointer is reset by the POA on each upcall. + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + }; // @@ Must go away.... diff --git a/TAO/tao/ORB_Core.i b/TAO/tao/ORB_Core.i index b850edd8915..7ff83f4e5e9 100644 --- a/TAO/tao/ORB_Core.i +++ b/TAO/tao/ORB_Core.i @@ -116,6 +116,7 @@ TAO_ORB_Core::to_unicode (void) const } #if (TAO_HAS_CORBA_MESSAGING == 1) + ACE_INLINE TAO_Policy_Manager * TAO_ORB_Core::policy_manager (void) { @@ -130,31 +131,47 @@ TAO_ORB_Core::get_default_policy ( return this->default_policies_->get_policy (policy, ACE_TRY_ENV); } +#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + ACE_INLINE TAO_RelativeRoundtripTimeoutPolicy * TAO_ORB_Core::default_relative_roundtrip_timeout (void) const { return this->default_policies_->relative_roundtrip_timeout (); } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + ACE_INLINE TAO_Client_Priority_Policy * TAO_ORB_Core::default_client_priority (void) const { return this->default_policies_->client_priority (); } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE TAO_Sync_Scope_Policy * TAO_ORB_Core::default_sync_scope (void) const { return this->default_policies_->sync_scope (); } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + ACE_INLINE TAO_Buffering_Constraint_Policy * TAO_ORB_Core::default_buffering_constraint (void) const { return this->default_policies_->buffering_constraint (); } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ ACE_INLINE TAO_ORB_Core_TSS_Resources* TAO_ORB_Core::get_tss_resources (void) @@ -203,7 +220,7 @@ TAO_ORB_Core::implrepo_service (const CORBA::Object_ptr ir) // **************************************************************** -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) ACE_INLINE TAO_Eager_Buffering_Sync_Strategy & TAO_ORB_Core::eager_buffering_sync_strategy (void) @@ -217,7 +234,7 @@ TAO_ORB_Core::delayed_buffering_sync_strategy (void) return *this->delayed_buffering_sync_strategy_; } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ ACE_INLINE TAO_Transport_Sync_Strategy & TAO_ORB_Core::transport_sync_strategy (void) diff --git a/TAO/tao/Object.cpp b/TAO/tao/Object.cpp index dfb2fbfa7bb..542705025d3 100644 --- a/TAO/tao/Object.cpp +++ b/TAO/tao/Object.cpp @@ -498,7 +498,9 @@ CORBA_Object::_get_implementation (CORBA::Environment &) // @@ Does it make sense to support policy stuff for locality constrained // objects? Also, does it make sense to bind policies with stub object? // - nw. + #if (TAO_HAS_CORBA_MESSAGING == 1) + CORBA::Policy_ptr CORBA_Object::_get_policy ( CORBA::PolicyType type, @@ -565,8 +567,11 @@ CORBA_Object::_validate_connection (CORBA::PolicyList_out inconsistent_policies, inconsistent_policies = 0; #if defined (TAO_HAS_MINIMUM_CORBA) + ACE_UNUSED_ARG (ACE_TRY_ENV); + #else + // If the object is collocated then use non_existent to see whether // it's there. if (this->is_collocated_) @@ -575,7 +580,9 @@ CORBA_Object::_validate_connection (CORBA::PolicyList_out inconsistent_policies, if (this->protocol_proxy_) return this->protocol_proxy_->validate_connection (inconsistent_policies, ACE_TRY_ENV); + #endif /* TAO_HAS_MINIMUM_CORBA */ + return 0; } diff --git a/TAO/tao/Object.h b/TAO/tao/Object.h index 81a899545eb..938b6dc791f 100644 --- a/TAO/tao/Object.h +++ b/TAO/tao/Object.h @@ -133,6 +133,7 @@ public: #endif /* TAO_HAS_MINIMUM_CORBA */ #if (TAO_HAS_CORBA_MESSAGING == 1) + CORBA::Policy_ptr _get_policy ( CORBA::PolicyType type, CORBA::Environment &ACE_TRY_ENV = @@ -159,6 +160,7 @@ public: CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ virtual CORBA::ULong _hash (CORBA::ULong maximum, diff --git a/TAO/tao/Policy_Manager.cpp b/TAO/tao/Policy_Manager.cpp index 57abe6b64d9..7ffcd91a393 100644 --- a/TAO/tao/Policy_Manager.cpp +++ b/TAO/tao/Policy_Manager.cpp @@ -42,6 +42,8 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source, this->cleanup_i (ACE_TRY_ENV); ACE_CHECK; +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + if (source->relative_roundtrip_timeout_ != 0) { this->relative_roundtrip_timeout_ = @@ -50,6 +52,10 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source, this->count_++; } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + if (source->client_priority_ != 0) { this->client_priority_ = @@ -58,6 +64,10 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source, this->count_++; } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + if (source->sync_scope_ != 0) { this->sync_scope_ = @@ -66,6 +76,10 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source, this->count_++; } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + if (source->buffering_constraint_ != 0) { this->buffering_constraint_ = @@ -74,6 +88,8 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source, this->count_++; } +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + for (CORBA::ULong i = 0; i < source->other_policies_.length (); ++i) @@ -105,18 +121,34 @@ TAO_Policy_Manager_Impl::cleanup_i (CORBA::Environment &ACE_TRY_ENV) } this->other_policies_.length (0); +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + delete this->relative_roundtrip_timeout_; this->relative_roundtrip_timeout_ = 0; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + delete this->client_priority_; this->client_priority_ = 0; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + delete this->sync_scope_; this->sync_scope_ = 0; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + delete this->buffering_constraint_; this->buffering_constraint_ = 0; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + this->count_ = 0; } @@ -149,6 +181,9 @@ TAO_Policy_Manager_Impl::set_policy_overrides ( switch (slot) { + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + case TAO_MESSAGING_RELATIVE_RT_TIMEOUT_POLICY_TYPE: { TAO_ServantBase *servant = policy->_servant (); @@ -174,6 +209,10 @@ TAO_Policy_Manager_Impl::set_policy_overrides ( } break; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + case TAO_CLIENT_PRIORITY_POLICY_TYPE: { TAO_ServantBase *servant = policy->_servant (); @@ -199,6 +238,10 @@ TAO_Policy_Manager_Impl::set_policy_overrides ( } break; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE: { TAO_ServantBase *servant = policy->_servant (); @@ -224,6 +267,10 @@ TAO_Policy_Manager_Impl::set_policy_overrides ( } break; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + case TAO_BUFFERING_CONSTRAINT_POLICY_TYPE: { TAO_ServantBase *servant = policy->_servant (); @@ -249,6 +296,8 @@ TAO_Policy_Manager_Impl::set_policy_overrides ( } break; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + case TAO_MESSAGING_REBIND_POLICY_TYPE: case TAO_MESSAGING_REQUEST_PRIORITY_POLICY_TYPE: case TAO_MESSAGING_REPLY_PRIORITY_POLICY_TYPE: @@ -314,12 +363,15 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( ACE_CHECK_RETURN (0); CORBA::PolicyList_var policy_list (policy_list_ptr); - + policy_list->length (slots); CORBA::ULong n = 0; if (types_length == 0) { + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + if (this->relative_roundtrip_timeout_ != 0) { policy_list[n++] = @@ -327,6 +379,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( ACE_CHECK_RETURN (0); } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + if (this->client_priority_ != 0) { policy_list[n++] = @@ -334,6 +390,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( ACE_CHECK_RETURN (0); } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + if (this->sync_scope_ != 0) { policy_list[n++] = @@ -341,6 +401,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( ACE_CHECK_RETURN (0); } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + if (this->buffering_constraint_ != 0) { policy_list[n++] = @@ -348,6 +412,8 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( ACE_CHECK_RETURN (0); } +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + CORBA::ULong length = this->other_policies_.length (); for (CORBA::ULong i = 0; i != length; ++i) { @@ -365,6 +431,9 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( switch (slot) { + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + case TAO_MESSAGING_RELATIVE_RT_TIMEOUT_POLICY_TYPE: if (this->relative_roundtrip_timeout_ != 0) { @@ -374,6 +443,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( } break; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + case TAO_CLIENT_PRIORITY_POLICY_TYPE: if (this->client_priority_ != 0) { @@ -383,6 +456,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( } break; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE: if (this->sync_scope_ != 0) { @@ -392,6 +469,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( } break; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + case TAO_BUFFERING_CONSTRAINT_POLICY_TYPE: if (this->buffering_constraint_ != 0) { @@ -401,6 +482,8 @@ TAO_Policy_Manager_Impl::get_policy_overrides ( } break; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + case TAO_MESSAGING_REBIND_POLICY_TYPE: case TAO_MESSAGING_REQUEST_PRIORITY_POLICY_TYPE: case TAO_MESSAGING_REPLY_PRIORITY_POLICY_TYPE: @@ -445,6 +528,9 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type, { switch (type) { + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + case TAO_MESSAGING_RELATIVE_RT_TIMEOUT_POLICY_TYPE: if (this->relative_roundtrip_timeout_ != 0) { @@ -452,6 +538,10 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type, } return CORBA::Policy::_nil (); +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + case TAO_CLIENT_PRIORITY_POLICY_TYPE: if (this->client_priority_ != 0) { @@ -459,6 +549,10 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type, } return CORBA::Policy::_nil (); +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE: if (this->sync_scope_ != 0) { @@ -466,6 +560,10 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type, } return CORBA::Policy::_nil (); +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + case TAO_BUFFERING_CONSTRAINT_POLICY_TYPE: if (this->buffering_constraint_ != 0) { @@ -473,6 +571,8 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type, } return CORBA::Policy::_nil (); +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + case TAO_MESSAGING_REBIND_POLICY_TYPE: case TAO_MESSAGING_REQUEST_PRIORITY_POLICY_TYPE: case TAO_MESSAGING_REPLY_PRIORITY_POLICY_TYPE: diff --git a/TAO/tao/Policy_Manager.h b/TAO/tao/Policy_Manager.h index eb3d63d2c2d..ce464ac5253 100644 --- a/TAO/tao/Policy_Manager.h +++ b/TAO/tao/Policy_Manager.h @@ -88,14 +88,31 @@ public: // = Direct accesors to the policy implementations, for speedy // lookups. + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *relative_roundtrip_timeout (void) const; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + TAO_Client_Priority_Policy *client_priority (void) const; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy *sync_scope (void) const; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Buffering_Constraint_Policy *buffering_constraint (void) const; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + private: ACE_UNIMPLEMENTED_FUNC (TAO_Policy_Manager_Impl operator=(const TAO_Policy_Manager_Impl&)) ACE_UNIMPLEMENTED_FUNC (TAO_Policy_Manager_Impl(const TAO_Policy_Manager_Impl&)) @@ -108,14 +125,31 @@ private: // The known policies are kept as pointers to the implementation // objects, this allow us to query the supported policies really // fast, without memory allocations. + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *relative_roundtrip_timeout_; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + TAO_Client_Priority_Policy *client_priority_; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy *sync_scope_; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Buffering_Constraint_Policy *buffering_constraint_; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + CORBA::PolicyList other_policies_; // Other policies that are not optimized for fast querying @@ -151,14 +185,31 @@ public: CORBA::Environment &ACE_TRY_ENV = CORBA::Environment::default_environment () ); + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *relative_roundtrip_timeout (void) const; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + TAO_Client_Priority_Policy *client_priority (void) const; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy *sync_scope (void) const; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Buffering_Constraint_Policy *buffering_constraint (void) const; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + private: TAO_Policy_Manager_Impl impl_; // The implementation. @@ -189,14 +240,31 @@ public: CORBA::Environment &ACE_TRY_ENV = CORBA::Environment::default_environment () ); + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *relative_roundtrip_timeout (void) const; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + TAO_Client_Priority_Policy *client_priority (void) const; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy *sync_scope (void) const; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Buffering_Constraint_Policy *buffering_constraint (void) const; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + private: TAO_Policy_Manager_Impl manager_impl_; // The implementation. @@ -230,14 +298,31 @@ public: CORBA::Environment &ACE_TRY_ENV = CORBA::Environment::default_environment () ); + +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *relative_roundtrip_timeout (void) const; +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + TAO_Client_Priority_Policy *client_priority (void) const; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + TAO_Sync_Scope_Policy *sync_scope (void) const; +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Buffering_Constraint_Policy *buffering_constraint (void) const; +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + // = Set and get the implementation. TAO_Policy_Current_Impl &implementation (void) const; TAO_Policy_Current_Impl &implementation (TAO_Policy_Current_Impl &); diff --git a/TAO/tao/Policy_Manager.i b/TAO/tao/Policy_Manager.i index d43444083a2..29e48c7e34b 100644 --- a/TAO/tao/Policy_Manager.i +++ b/TAO/tao/Policy_Manager.i @@ -2,38 +2,73 @@ ACE_INLINE TAO_Policy_Manager_Impl::TAO_Policy_Manager_Impl (void) - : relative_roundtrip_timeout_ (0), - client_priority_ (0), - sync_scope_ (0), - buffering_constraint_ (0), - count_ (0) + : count_ (0) { +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + + this->relative_roundtrip_timeout_ = 0; + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + + this->client_priority_ = 0; + +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + + this->sync_scope_ = 0; + +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + + this->buffering_constraint_ = 0; + +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ } +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + ACE_INLINE TAO_RelativeRoundtripTimeoutPolicy * TAO_Policy_Manager_Impl::relative_roundtrip_timeout (void) const { return this->relative_roundtrip_timeout_; } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + ACE_INLINE TAO_Client_Priority_Policy * TAO_Policy_Manager_Impl::client_priority (void) const { return this->client_priority_; } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE TAO_Sync_Scope_Policy * TAO_Policy_Manager_Impl::sync_scope (void) const { return this->sync_scope_; } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + ACE_INLINE TAO_Buffering_Constraint_Policy * TAO_Policy_Manager_Impl::buffering_constraint (void) const { return this->buffering_constraint_; } +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + // **************************************************************** ACE_INLINE @@ -66,30 +101,46 @@ TAO_Policy_Manager::set_policy_overrides ( this->impl_.set_policy_overrides (policies, set_add, ACE_TRY_ENV); } +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + ACE_INLINE TAO_RelativeRoundtripTimeoutPolicy * TAO_Policy_Manager::relative_roundtrip_timeout (void) const { return this->impl_.relative_roundtrip_timeout (); } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + ACE_INLINE TAO_Client_Priority_Policy * TAO_Policy_Manager::client_priority (void) const { return this->impl_.client_priority (); } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE TAO_Sync_Scope_Policy * TAO_Policy_Manager::sync_scope (void) const { return this->impl_.sync_scope (); } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + ACE_INLINE TAO_Buffering_Constraint_Policy * TAO_Policy_Manager::buffering_constraint (void) const { return this->impl_.buffering_constraint (); } +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + // **************************************************************** ACE_INLINE @@ -122,30 +173,46 @@ TAO_Policy_Current_Impl::set_policy_overrides ( this->manager_impl_.set_policy_overrides (policies, set_add, ACE_TRY_ENV); } +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + ACE_INLINE TAO_RelativeRoundtripTimeoutPolicy * TAO_Policy_Current_Impl::relative_roundtrip_timeout (void) const { return this->manager_impl_.relative_roundtrip_timeout (); } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + ACE_INLINE TAO_Client_Priority_Policy * TAO_Policy_Current_Impl::client_priority (void) const { return this->manager_impl_.client_priority (); } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE TAO_Sync_Scope_Policy * TAO_Policy_Current_Impl::sync_scope (void) const { return this->manager_impl_.sync_scope (); } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + ACE_INLINE TAO_Buffering_Constraint_Policy * TAO_Policy_Current_Impl::buffering_constraint (void) const { return this->manager_impl_.buffering_constraint (); } +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + // **************************************************************** ACE_INLINE CORBA::Policy_ptr @@ -179,6 +246,8 @@ TAO_Policy_Current::set_policy_overrides ( impl.set_policy_overrides (policies, set_add, ACE_TRY_ENV); } +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + ACE_INLINE TAO_RelativeRoundtripTimeoutPolicy * TAO_Policy_Current::relative_roundtrip_timeout (void) const { @@ -187,6 +256,10 @@ TAO_Policy_Current::relative_roundtrip_timeout (void) const return impl.relative_roundtrip_timeout (); } +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + ACE_INLINE TAO_Client_Priority_Policy * TAO_Policy_Current::client_priority (void) const { @@ -195,6 +268,10 @@ TAO_Policy_Current::client_priority (void) const return impl.client_priority (); } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + ACE_INLINE TAO_Sync_Scope_Policy * TAO_Policy_Current::sync_scope (void) const { @@ -203,6 +280,10 @@ TAO_Policy_Current::sync_scope (void) const return impl.sync_scope (); } +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + ACE_INLINE TAO_Buffering_Constraint_Policy * TAO_Policy_Current::buffering_constraint (void) const { @@ -210,3 +291,5 @@ TAO_Policy_Current::buffering_constraint (void) const return impl.buffering_constraint (); } + +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ diff --git a/TAO/tao/PollableC.cpp b/TAO/tao/PollableC.cpp index 83d732f8a00..8d6d93c7ad8 100644 --- a/TAO/tao/PollableC.cpp +++ b/TAO/tao/PollableC.cpp @@ -19,7 +19,7 @@ #include "tao/PollableC.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) && (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_POLLER == 1) #include "tao/POA_CORBA.h" #include "tao/Stub.h" @@ -1395,4 +1395,4 @@ operator>> ( return 0; } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 && TAO_HAS_AMI_POLLER == 1 */ +#endif /* TAO_HAS_AMI_POLLER == 1 */ diff --git a/TAO/tao/PollableC.h b/TAO/tao/PollableC.h index 9596a23e548..a5a543c5465 100644 --- a/TAO/tao/PollableC.h +++ b/TAO/tao/PollableC.h @@ -23,7 +23,7 @@ #include "tao/corbafwd.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) && (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_POLLER == 1) #include "tao/Object.h" #include "tao/Exception.h" @@ -474,7 +474,7 @@ TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, CORBA_PollableSet::Unknown #pragma warning(pop) #endif /* _MSC_VER */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 && TAO_HAS_AMI_POLLER == 1 */ +#endif /* TAO_HAS_AMI_POLLER == 1 */ #include "ace/post.h" #endif /* TAO_IDL_POLLABLEC_H */ diff --git a/TAO/tao/PollableS.cpp b/TAO/tao/PollableS.cpp index 022540596c5..343080659e5 100644 --- a/TAO/tao/PollableS.cpp +++ b/TAO/tao/PollableS.cpp @@ -19,7 +19,7 @@ #include "tao/PollableS.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) && (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_POLLER == 1) #include "tao/Operation_Table.h" #include "tao/Server_Request.h" @@ -932,4 +932,4 @@ POA_CORBA::PollableSet::_this (CORBA_Environment &ACE_TRY_ENV) return retval; } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 && TAO_HAS_AMI_POLLER == 1 */ +#endif /* TAO_HAS_AMI_POLLER == 1 */ diff --git a/TAO/tao/PollableS.h b/TAO/tao/PollableS.h index eb29e548f84..48df3c4066d 100644 --- a/TAO/tao/PollableS.h +++ b/TAO/tao/PollableS.h @@ -23,7 +23,7 @@ #include "tao/PollableC.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) && (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_POLLER == 1) #include "tao/POA_CORBA.h" @@ -237,7 +237,7 @@ TAO_NAMESPACE_CLOSE #pragma warning(pop) #endif /* _MSC_VER */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 && TAO_HAS_AMI_POLLER == 1 */ +#endif /* TAO_HAS_AMI_POLLER == 1 */ #include "ace/post.h" #endif /* ifndef */ diff --git a/TAO/tao/Reply_Dispatcher.cpp b/TAO/tao/Reply_Dispatcher.cpp index d58b09c496a..5bf76ca2c7e 100644 --- a/TAO/tao/Reply_Dispatcher.cpp +++ b/TAO/tao/Reply_Dispatcher.cpp @@ -136,8 +136,6 @@ TAO_Synch_Reply_Dispatcher::leader_follower_condition_variable (TAO_Transport *t // ********************************************************************* -#if (TAO_HAS_CORBA_MESSAGING == 1) - #if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) // Constructor. @@ -235,8 +233,6 @@ TAO_Asynch_Reply_Dispatcher::message_state (void) #endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ - // ********************************************************************* #if !defined (TAO_HAS_MINIMUM_CORBA) diff --git a/TAO/tao/Reply_Dispatcher.h b/TAO/tao/Reply_Dispatcher.h index c65a90df704..d49513ead14 100644 --- a/TAO/tao/Reply_Dispatcher.h +++ b/TAO/tao/Reply_Dispatcher.h @@ -149,9 +149,7 @@ private: // ********************************************************************* -#if (TAO_HAS_CORBA_MESSAGING == 1) - -# if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) class TAO_Export TAO_Asynch_Reply_Dispatcher : public TAO_Reply_Dispatcher { @@ -221,9 +219,7 @@ private: // This invocation is using this transport, may change... }; -# endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ - -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ // ********************************************************************* diff --git a/TAO/tao/Reply_Dispatcher.i b/TAO/tao/Reply_Dispatcher.i index 7f4dd63d0d8..e836d86db34 100644 --- a/TAO/tao/Reply_Dispatcher.i +++ b/TAO/tao/Reply_Dispatcher.i @@ -13,11 +13,9 @@ TAO_Synch_Reply_Dispatcher::version (void) const { return this->version_; } -#endif /*if 0*/ - -#if (TAO_HAS_CORBA_MESSAGING == 1) +#endif /* if 0 */ -# if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) +#if (TAO_HAS_AMI_CALLBACK == 1) || (TAO_HAS_AMI_POLLER == 1) ACE_INLINE CORBA::ULong TAO_Asynch_Reply_Dispatcher::reply_status (void) const @@ -38,9 +36,7 @@ TAO_Asynch_Reply_Dispatcher::transport (TAO_Transport *t) this->transport_ = t; } -# endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ - -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_AMI_CALLBACK == 1 || TAO_HAS_AMI_POLLER == 1 */ //********************************************************************* diff --git a/TAO/tao/Stub.cpp b/TAO/tao/Stub.cpp index b4159603327..02b162d3b42 100644 --- a/TAO/tao/Stub.cpp +++ b/TAO/tao/Stub.cpp @@ -48,9 +48,13 @@ TAO_Stub::TAO_Stub (char *repository_id, orb_core_ (orb_core), orb_ (), servant_orb_ () + #if (TAO_HAS_CORBA_MESSAGING == 1) + , policies_ (0) + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + { if (this->orb_core_ == 0) { @@ -100,8 +104,11 @@ TAO_Stub::~TAO_Stub (void) delete this->profile_lock_ptr_; #if (TAO_HAS_CORBA_MESSAGING == 1) + delete this->policies_; + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + } void @@ -557,146 +564,6 @@ TAO_Stub::get_client_policy (CORBA::PolicyType type, return result._retn (); } -TAO_RelativeRoundtripTimeoutPolicy * -TAO_Stub::relative_roundtrip_timeout (void) -{ - TAO_RelativeRoundtripTimeoutPolicy *result = 0; - - // No need to lock, the stub only changes its policies at - // construction time... - if (this->policies_ != 0) - result = this->policies_->relative_roundtrip_timeout (); - - // No need to lock, the object is in TSS storage.... - if (result == 0) - { - TAO_Policy_Current &policy_current = - this->orb_core_->policy_current (); - result = policy_current.relative_roundtrip_timeout (); - } - - // @@ Must lock, but is is harder to implement than just modifying - // this call: the ORB does take a lock to modify the policy - // manager - if (result == 0) - { - TAO_Policy_Manager *policy_manager = - this->orb_core_->policy_manager (); - if (policy_manager != 0) - result = policy_manager->relative_roundtrip_timeout (); - } - - if (result == 0) - result = this->orb_core_->default_relative_roundtrip_timeout (); - - return result; -} - -TAO_Client_Priority_Policy * -TAO_Stub::client_priority (void) -{ - TAO_Client_Priority_Policy *result = 0; - - // No need to lock, the stub only changes its policies at - // construction time... - if (this->policies_ != 0) - result = this->policies_->client_priority (); - - // No need to lock, the object is in TSS storage.... - if (result == 0) - { - TAO_Policy_Current &policy_current = - this->orb_core_->policy_current (); - result = policy_current.client_priority (); - } - - // @@ Must lock, but is is harder to implement than just modifying - // this call: the ORB does take a lock to modify the policy - // manager - if (result == 0) - { - TAO_Policy_Manager *policy_manager = - this->orb_core_->policy_manager (); - if (policy_manager != 0) - result = policy_manager->client_priority (); - } - - if (result == 0) - result = this->orb_core_->default_client_priority (); - - return result; -} - -TAO_Sync_Scope_Policy * -TAO_Stub::sync_scope (void) -{ - TAO_Sync_Scope_Policy *result = 0; - - // No need to lock, the stub only changes its policies at - // construction time... - if (this->policies_ != 0) - result = this->policies_->sync_scope (); - - // No need to lock, the object is in TSS storage.... - if (result == 0) - { - TAO_Policy_Current &policy_current = - this->orb_core_->policy_current (); - result = policy_current.sync_scope (); - } - - // @@ Must lock, but is is harder to implement than just modifying - // this call: the ORB does take a lock to modify the policy - // manager - if (result == 0) - { - TAO_Policy_Manager *policy_manager = - this->orb_core_->policy_manager (); - if (policy_manager != 0) - result = policy_manager->sync_scope (); - } - - if (result == 0) - result = this->orb_core_->default_sync_scope (); - - return result; -} - -TAO_Buffering_Constraint_Policy * -TAO_Stub::buffering_constraint (void) -{ - TAO_Buffering_Constraint_Policy *result = 0; - - // No need to lock, the stub only changes its policies at - // construction time... - if (this->policies_ != 0) - result = this->policies_->buffering_constraint (); - - // No need to lock, the object is in TSS storage.... - if (result == 0) - { - TAO_Policy_Current &policy_current = - this->orb_core_->policy_current (); - result = policy_current.buffering_constraint (); - } - - // @@ Must lock, but is is harder to implement than just modifying - // this call: the ORB does take a lock to modify the policy - // manager - if (result == 0) - { - TAO_Policy_Manager *policy_manager = - this->orb_core_->policy_manager (); - if (policy_manager != 0) - result = policy_manager->buffering_constraint (); - } - - if (result == 0) - result = this->orb_core_->default_buffering_constraint (); - - return result; -} - TAO_Stub * TAO_Stub::set_policy_overrides ( const CORBA::PolicyList & policies, @@ -760,6 +627,9 @@ TAO_Stub::validate_connection (CORBA::PolicyList_out inconsistent_policies, CORBA::Environment &ACE_TRY_ENV) { inconsistent_policies = 0; + ACE_UNUSED_ARG (ACE_TRY_ENV); + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) // Check if we care about Client Priority policy, and store the // result in the variable called <set>. @@ -820,6 +690,9 @@ TAO_Stub::validate_connection (CORBA::PolicyList_out inconsistent_policies, } break; } + +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + return 1; } @@ -829,7 +702,8 @@ TAO_Sync_Strategy & TAO_Stub::sync_strategy (void) { -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 && \ + TAO_HAS_SYNC_SCOPE_POLICY == 1) POA_Messaging::SyncScopePolicy *policy = this->sync_scope (); @@ -851,23 +725,184 @@ TAO_Stub::sync_strategy (void) return this->orb_core_->delayed_buffering_sync_strategy (); } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 && + TAO_HAS_SYNC_SCOPE_POLICY == 1 */ return this->orb_core_->transport_sync_strategy (); } +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + +TAO_RelativeRoundtripTimeoutPolicy * +TAO_Stub::relative_roundtrip_timeout (void) +{ + TAO_RelativeRoundtripTimeoutPolicy *result = 0; + + // No need to lock, the stub only changes its policies at + // construction time... + if (this->policies_ != 0) + result = this->policies_->relative_roundtrip_timeout (); + + // No need to lock, the object is in TSS storage.... + if (result == 0) + { + TAO_Policy_Current &policy_current = + this->orb_core_->policy_current (); + result = policy_current.relative_roundtrip_timeout (); + } + + // @@ Must lock, but is is harder to implement than just modifying + // this call: the ORB does take a lock to modify the policy + // manager + if (result == 0) + { + TAO_Policy_Manager *policy_manager = + this->orb_core_->policy_manager (); + if (policy_manager != 0) + result = policy_manager->relative_roundtrip_timeout (); + } + + if (result == 0) + result = this->orb_core_->default_relative_roundtrip_timeout (); + + return result; +} + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + +TAO_Client_Priority_Policy * +TAO_Stub::client_priority (void) +{ + TAO_Client_Priority_Policy *result = 0; + + // No need to lock, the stub only changes its policies at + // construction time... + if (this->policies_ != 0) + result = this->policies_->client_priority (); + + // No need to lock, the object is in TSS storage.... + if (result == 0) + { + TAO_Policy_Current &policy_current = + this->orb_core_->policy_current (); + result = policy_current.client_priority (); + } + + // @@ Must lock, but is is harder to implement than just modifying + // this call: the ORB does take a lock to modify the policy + // manager + if (result == 0) + { + TAO_Policy_Manager *policy_manager = + this->orb_core_->policy_manager (); + if (policy_manager != 0) + result = policy_manager->client_priority (); + } + + if (result == 0) + result = this->orb_core_->default_client_priority (); + + return result; +} + +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + +TAO_Sync_Scope_Policy * +TAO_Stub::sync_scope (void) +{ + TAO_Sync_Scope_Policy *result = 0; + + // No need to lock, the stub only changes its policies at + // construction time... + if (this->policies_ != 0) + result = this->policies_->sync_scope (); + + // No need to lock, the object is in TSS storage.... + if (result == 0) + { + TAO_Policy_Current &policy_current = + this->orb_core_->policy_current (); + result = policy_current.sync_scope (); + } + + // @@ Must lock, but is is harder to implement than just modifying + // this call: the ORB does take a lock to modify the policy + // manager + if (result == 0) + { + TAO_Policy_Manager *policy_manager = + this->orb_core_->policy_manager (); + if (policy_manager != 0) + result = policy_manager->sync_scope (); + } + + if (result == 0) + result = this->orb_core_->default_sync_scope (); + + return result; +} + +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + +TAO_Buffering_Constraint_Policy * +TAO_Stub::buffering_constraint (void) +{ + TAO_Buffering_Constraint_Policy *result = 0; + + // No need to lock, the stub only changes its policies at + // construction time... + if (this->policies_ != 0) + result = this->policies_->buffering_constraint (); + + // No need to lock, the object is in TSS storage.... + if (result == 0) + { + TAO_Policy_Current &policy_current = + this->orb_core_->policy_current (); + result = policy_current.buffering_constraint (); + } + + // @@ Must lock, but is is harder to implement than just modifying + // this call: the ORB does take a lock to modify the policy + // manager + if (result == 0) + { + TAO_Policy_Manager *policy_manager = + this->orb_core_->policy_manager (); + if (policy_manager != 0) + result = policy_manager->buffering_constraint (); + } + + if (result == 0) + result = this->orb_core_->default_buffering_constraint (); + + return result; +} + +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) #if (TAO_HAS_CORBA_MESSAGING == 1) + template class auto_ptr<TAO_Policy_Manager_Impl>; template class ACE_Auto_Basic_Ptr<TAO_Policy_Manager_Impl>; + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) #if (TAO_HAS_CORBA_MESSAGING == 1) + #pragma instantiate auto_ptr<TAO_Policy_Manager_Impl> #pragma instantiate ACE_Auto_Basic_Ptr<TAO_Policy_Manager_Impl> + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ diff --git a/TAO/tao/Stub.h b/TAO/tao/Stub.h index 5c6ecc73758..22beab107f6 100644 --- a/TAO/tao/Stub.h +++ b/TAO/tao/Stub.h @@ -41,13 +41,12 @@ #include "tao/MProfile.h" #include "tao/ORB.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) // Forward declarations. + class TAO_RelativeRoundtripTimeoutPolicy; class TAO_Client_Priority_Policy; class TAO_Sync_Scope_Policy; class TAO_Buffering_Constraint_Policy; -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ class TAO_Sync_Strategy; class TAO_GIOP_Invocation; @@ -151,20 +150,13 @@ public: #endif /* TAO_HAS_MINIMUM_CORBA */ #if (TAO_HAS_CORBA_MESSAGING == 1) + CORBA::Policy_ptr get_policy ( CORBA::PolicyType type, CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); - TAO_RelativeRoundtripTimeoutPolicy *relative_roundtrip_timeout (void); - - TAO_Client_Priority_Policy *client_priority (void); - - TAO_Sync_Scope_Policy *sync_scope (void); - - TAO_Buffering_Constraint_Policy *buffering_constraint (void); - CORBA::Policy_ptr get_client_policy ( CORBA::PolicyType type, CORBA::Environment &ACE_TRY_ENV = @@ -186,8 +178,33 @@ public: CORBA::Environment &ACE_TRY_ENV = TAO_default_environment () ); + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + + TAO_RelativeRoundtripTimeoutPolicy *relative_roundtrip_timeout (void); + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ + +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) + + TAO_Client_Priority_Policy *client_priority (void); + +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_SYNC_SCOPE_POLICY == 1) + + TAO_Sync_Scope_Policy *sync_scope (void); + +#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + + TAO_Buffering_Constraint_Policy *buffering_constraint (void); + +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + TAO_Sync_Strategy &sync_strategy (void); // Return the sync strategy to be used in by the transport. // Selection will be based on the SyncScope policies. @@ -378,9 +395,11 @@ private: // the ORB's RootPOA. #if (TAO_HAS_CORBA_MESSAGING == 1) + TAO_Policy_Manager_Impl *policies_; // The policy overrides in this object, if nil then use the default // policies. + #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ // = Disallow copy constructor and assignment operator diff --git a/TAO/tao/Sync_Strategies.cpp b/TAO/tao/Sync_Strategies.cpp index 3da8c527491..8723fd742ea 100644 --- a/TAO/tao/Sync_Strategies.cpp +++ b/TAO/tao/Sync_Strategies.cpp @@ -2,7 +2,6 @@ // $Id$ #include "tao/Sync_Strategies.h" - #include "tao/Buffering_Constraint_Policy.h" #include "tao/Stub.h" #include "tao/ORB_Core.h" @@ -26,7 +25,7 @@ TAO_Transport_Sync_Strategy::send (TAO_Transport &transport, max_wait_time); } -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) ssize_t TAO_Delayed_Buffering_Sync_Strategy::send (TAO_Transport &transport, @@ -239,4 +238,4 @@ TAO_Eager_Buffering_Sync_Strategy::time_conversion (const TimeBase::TimeT &time) ACE_U64_TO_U32 (microseconds)); } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ diff --git a/TAO/tao/Sync_Strategies.h b/TAO/tao/Sync_Strategies.h index d752bfe77b0..650aa24ecc4 100644 --- a/TAO/tao/Sync_Strategies.h +++ b/TAO/tao/Sync_Strategies.h @@ -50,7 +50,7 @@ public: const ACE_Time_Value *max_wait_time); }; -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) class TAO_Export TAO_Eager_Buffering_Sync_Strategy : public TAO_Sync_Strategy { @@ -79,7 +79,7 @@ public: const ACE_Time_Value *max_wait_time); }; -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ #if defined (__ACE_INLINE__) # include "tao/Sync_Strategies.i" diff --git a/TAO/tao/TAOC.cpp b/TAO/tao/TAOC.cpp index 70d3f875b52..a78c3bfe458 100644 --- a/TAO/tao/TAOC.cpp +++ b/TAO/tao/TAOC.cpp @@ -15,7 +15,7 @@ #include "tao/TAOC.i" #endif /* !defined INLINE */ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) static const CORBA::Long _oc_TAO_PrioritySelectionMode[] = { @@ -346,6 +346,11 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, TAO::ClientPriorityPolic # pragma instantiate TAO_Object_Field_T<TAO::ClientPriorityPolicy,TAO::ClientPriorityPolicy_var> # pragma instantiate TAO_Object_Manager<TAO::ClientPriorityPolicy,TAO::ClientPriorityPolicy_var> #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ + +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + static const CORBA::Long _oc_TAO_BufferingConstraintMode[] = { TAO_ENCAP_BYTE_ORDER, // byte order @@ -689,7 +694,7 @@ CORBA::Boolean operator>>= (const CORBA::Any &_tao_any, TAO::BufferingConstraint # pragma instantiate TAO_Object_Manager<TAO::BufferingConstraintPolicy,TAO::BufferingConstraintPolicy_var> #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ TAO_NAMESPACE_TYPE (const CORBA::Short) TAO_NAMESPACE_BEGIN (TAO) diff --git a/TAO/tao/TAOC.h b/TAO/tao/TAOC.h index a14b0a96abc..3f34dfe6460 100644 --- a/TAO/tao/TAOC.h +++ b/TAO/tao/TAOC.h @@ -18,12 +18,14 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1 || \ + TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) #include "tao/PolicyC.h" #include "tao/TimeBaseC.h" -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 || + TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ #if defined (TAO_EXPORT_MACRO) #undef TAO_EXPORT_MACRO @@ -45,7 +47,7 @@ TAO_NAMESPACE TAO { -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) typedef CORBA::Short PrioritySelectionMode; typedef CORBA::Short_out PrioritySelectionMode_out; @@ -223,6 +225,10 @@ class TAO_Export ClientPriorityPolicy: public virtual CORBA::Policy TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_ClientPriorityPolicy; +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + typedef CORBA::UShort BufferingConstraintMode; typedef CORBA::UShort_out BufferingConstraintMode_out; TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_BufferingConstraintMode; @@ -402,8 +408,7 @@ class TAO_Export BufferingConstraintPolicy: public virtual CORBA::Policy TAO_NAMESPACE_STORAGE_CLASS CORBA::TypeCode_ptr _tc_BufferingConstraintPolicy; - -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ // It seems easier to have copies of these here than to use // #if (TAO_HAS_CORBA_MESSAGING == 1) everywhere or to @@ -426,7 +431,7 @@ class TAO_Export BufferingConstraintPolicy: public virtual CORBA::Policy } TAO_NAMESPACE_CLOSE // module TAO -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) TAO_Export void operator<<= (CORBA::Any &, const TAO::PrioritySpecification &); // copying version @@ -442,6 +447,11 @@ TAO_Export void operator<<= (CORBA::Any &, TAO::ClientPriorityPolicy_ptr); TAO_Export CORBA::Boolean operator>>= (const CORBA::Any &, TAO::ClientPriorityPolicy *&); + +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Export void operator<<= (CORBA::Any &, const TAO::BufferingConstraint &); // copying version TAO_Export void operator<<= (CORBA::Any &, @@ -457,18 +467,23 @@ TAO_Export void operator<<= (CORBA::Any &, CORBA::Boolean operator>>= (const CORBA::Any &, TAO::BufferingConstraintPolicy *&); -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ #ifndef __ACE_INLINE__ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const TAO::PrioritySpecification &); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, TAO::PrioritySpecification &); + +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + TAO_Export CORBA::Boolean operator<< (TAO_OutputCDR &, const TAO::BufferingConstraint &); TAO_Export CORBA::Boolean operator>> (TAO_InputCDR &, TAO::BufferingConstraint &); -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ #endif /* __ACE_INLINE__ */ diff --git a/TAO/tao/TAOC.i b/TAO/tao/TAOC.i index cc0e7b01748..558c634ce81 100644 --- a/TAO/tao/TAOC.i +++ b/TAO/tao/TAOC.i @@ -11,7 +11,7 @@ // Inline operations for class TAO::PrioritySpecification_var // ************************************************************* -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) ACE_INLINE TAO::PrioritySpecification_var::PrioritySpecification_var (void) // default constructor @@ -331,6 +331,10 @@ ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, TAO::PrioritySpecifica } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + // ************************************************************* // Inline operations for class TAO::BufferingConstraint_var // ************************************************************* @@ -655,4 +659,4 @@ ACE_INLINE CORBA::Boolean operator>> (TAO_InputCDR &strm, TAO::BufferingConstrai } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ diff --git a/TAO/tao/TAOS.cpp b/TAO/tao/TAOS.cpp index e04923885cd..8e329889a58 100644 --- a/TAO/tao/TAOS.cpp +++ b/TAO/tao/TAOS.cpp @@ -13,7 +13,7 @@ #include "tao/TAOS.i" #endif /* !defined INLINE */ -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) // skeleton constructor POA_TAO::ClientPriorityPolicy::ClientPriorityPolicy (void) @@ -117,6 +117,10 @@ TAO::PrioritySpecification POA_TAO::_tao_direct_collocated_ClientPriorityPolicy: } +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + // skeleton constructor POA_TAO::BufferingConstraintPolicy::BufferingConstraintPolicy (void) { @@ -225,4 +229,4 @@ TAO::BufferingConstraint POA_TAO::_tao_direct_collocated_BufferingConstraintPoli } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ diff --git a/TAO/tao/TAOS.h b/TAO/tao/TAOS.h index e90355df6ec..e7da3e3b3e5 100644 --- a/TAO/tao/TAOS.h +++ b/TAO/tao/TAOS.h @@ -13,11 +13,13 @@ #include "tao/TAOC.h" -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1 || \ + TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) #include "tao/POA_CORBA.h" -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 || + TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -33,7 +35,7 @@ TAO_NAMESPACE POA_TAO { -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1) class ClientPriorityPolicy; typedef ClientPriorityPolicy *ClientPriorityPolicy_ptr; @@ -107,6 +109,9 @@ TAO_NAMESPACE POA_TAO #endif /* end #if !defined */ +#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */ + +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) class BufferingConstraintPolicy; typedef BufferingConstraintPolicy *BufferingConstraintPolicy_ptr; @@ -179,7 +184,7 @@ TAO_NAMESPACE POA_TAO #endif /* end #if !defined */ -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ } TAO_NAMESPACE_CLOSE diff --git a/TAO/tao/UIOP_Connect.cpp b/TAO/tao/UIOP_Connect.cpp index 8e0abdf4224..b03dc7899fb 100644 --- a/TAO/tao/UIOP_Connect.cpp +++ b/TAO/tao/UIOP_Connect.cpp @@ -429,7 +429,8 @@ TAO_UIOP_Client_Connection_Handler::handle_timeout (const ACE_Time_Value &, ACE_Time_Value *max_wait_time = 0; -#if (TAO_HAS_CORBA_MESSAGING == 1) +#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1) + TAO_RelativeRoundtripTimeoutPolicy *timeout_policy = this->orb_core_->stubless_relative_roundtrip_timeout (); @@ -443,7 +444,8 @@ TAO_UIOP_Client_Connection_Handler::handle_timeout (const ACE_Time_Value &, timeout_policy->set_time_value (max_wait_time_value); max_wait_time = &max_wait_time_value; } -#endif /* TAO_HAS_CORBA_MESSAGING == 1 */ + +#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */ // Cannot deal with errors, and therefore they are ignored. this->transport ()->send_buffered_messages (max_wait_time); diff --git a/TAO/tao/orbconf.h b/TAO/tao/orbconf.h index 8d05f055d2a..26ca2cb49f7 100644 --- a/TAO/tao/orbconf.h +++ b/TAO/tao/orbconf.h @@ -452,6 +452,211 @@ enum MCAST_SERVICEID # endif /* TAO_HAS_MINIMUM_CORBA */ #endif /* !TAO_HAS_CORBA_MESSAGING */ +// For all the policies, support is enabled by default if TAO is +// configured for CORBA Messaging. If TAO is not configured for CORBA +// Messaging, then policies cannot be enabled. Default support can be +// turned off by setting TAO_DISABLE_CORBA_MESSAGING_POLICIES to 1. + +#if !defined (TAO_DISABLE_CORBA_MESSAGING_POLICIES) +# define TAO_DISABLE_CORBA_MESSAGING_POLICIES 0 +#endif /* !TAO_DISABLE_CORBA_MESSAGING_POLICIES */ + +// To explicitly disable REBIND_POLICY support uncomment the following +// #define TAO_HAS_REBIND_POLICY 0 + +// Default REBIND_POLICY settings +#if !defined (TAO_HAS_REBIND_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_REBIND_POLICY 1 +# else +# define TAO_HAS_REBIND_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_REBIND_POLICY */ + +// To explicitly disable SYNC_SCOPE_POLICY support uncomment the following +// #define TAO_HAS_SYNC_SCOPE_POLICY 0 + +// Default SYNC_SCOPE_POLICY settings +#if !defined (TAO_HAS_SYNC_SCOPE_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_SYNC_SCOPE_POLICY 1 +# else +# define TAO_HAS_SYNC_SCOPE_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_SYNC_SCOPE_POLICY */ + +// To explicitly disable PRIORITY_POLICIES support uncomment the following +// #define TAO_HAS_PRIORITY_POLICIES 0 + +// Default PRIORITY_POLICIES settings +#if !defined (TAO_HAS_PRIORITY_POLICIES) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_PRIORITY_POLICIES 1 +# else +# define TAO_HAS_PRIORITY_POLICIES 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_PRIORITY_POLICIES */ + +// To explicitly disable REQUEST_START_TIME_POLICY support uncomment the following +// #define TAO_HAS_REQUEST_START_TIME_POLICY 0 + +// Default REQUEST_START_TIME_POLICY settings +#if !defined (TAO_HAS_REQUEST_START_TIME_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_REQUEST_START_TIME_POLICY 1 +# else +# define TAO_HAS_REQUEST_START_TIME_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_REQUEST_START_TIME_POLICY */ + +// To explicitly disable REQUEST_END_TIME_POLICY support uncomment the following +// #define TAO_HAS_REQUEST_END_TIME_POLICY 0 + +// Default REQUEST_END_TIME_POLICY settings +#if !defined (TAO_HAS_REQUEST_END_TIME_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_REQUEST_END_TIME_POLICY 1 +# else +# define TAO_HAS_REQUEST_END_TIME_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_REQUEST_END_TIME_POLICY */ + +// To explicitly disable REPLY_START_TIME_POLICY support uncomment the following +// #define TAO_HAS_REPLY_START_TIME_POLICY 0 + +// Default REPLY_START_TIME_POLICY settings +#if !defined (TAO_HAS_REPLY_START_TIME_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_REPLY_START_TIME_POLICY 1 +# else +# define TAO_HAS_REPLY_START_TIME_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_REPLY_START_TIME_POLICY */ + +// To explicitly disable REPLY_END_TIME_POLICY support uncomment the following +// #define TAO_HAS_REPLY_END_TIME_POLICY 0 + +// Default REPLY_END_TIME_POLICY settings +#if !defined (TAO_HAS_REPLY_END_TIME_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_REPLY_END_TIME_POLICY 1 +# else +# define TAO_HAS_REPLY_END_TIME_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_REPLY_END_TIME_POLICY */ + +// To explicitly disable RELATIVE_REQUEST_TIMEOUT_POLICY support uncomment the following +// #define TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY 0 + +// Default RELATIVE_REQUEST_TIMEOUT_POLICY settings +#if !defined (TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY 1 +# else +# define TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_RELATIVE_REQUEST_TIMEOUT_POLICY */ + +// To explicitly disable RELATIVE_ROUNDTRIP_TIMEOUT_POLICY support uncomment the following +// #define TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY 0 + +// Default RELATIVE_ROUNDTRIP_TIMEOUT_POLICY settings +#if !defined (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY 1 +# else +# define TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY */ + +// To explicitly disable ROUTING_POLICY support uncomment the following +// #define TAO_HAS_ROUTING_POLICY 0 + +// Default ROUTING_POLICY settings +#if !defined (TAO_HAS_ROUTING_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_ROUTING_POLICY 1 +# else +# define TAO_HAS_ROUTING_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_ROUTING_POLICY */ + +// To explicitly disable MAX_HOPS_POLICY support uncomment the following +// #define TAO_HAS_MAX_HOPS_POLICY 0 + +// Default MAX_HOPS_POLICY settings +#if !defined (TAO_HAS_MAX_HOPS_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_MAX_HOPS_POLICY 1 +# else +# define TAO_HAS_MAX_HOPS_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_MAX_HOPS_POLICY */ + +// To explicitly disable QUEUE_ORDER_POLICY support uncomment the following +// #define TAO_HAS_QUEUE_ORDER_POLICY 0 + +// Default QUEUE_ORDER_POLICY settings +#if !defined (TAO_HAS_QUEUE_ORDER_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_QUEUE_ORDER_POLICY 1 +# else +# define TAO_HAS_QUEUE_ORDER_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_QUEUE_ORDER_POLICY */ + +// To explicitly disable CLIENT_PRIORITY_POLICY support uncomment the following +// #define TAO_HAS_CLIENT_PRIORITY_POLICY 0 + +// Default CLIENT_PRIORITY_POLICY settings +#if !defined (TAO_HAS_CLIENT_PRIORITY_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_CLIENT_PRIORITY_POLICY 1 +# else +# define TAO_HAS_CLIENT_PRIORITY_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_CLIENT_PRIORITY_POLICY */ + +// To explicitly disable BUFFERING_CONSTRAINT_POLICY support uncomment the following +// #define TAO_HAS_BUFFERING_CONSTRAINT_POLICY 0 + +// Default BUFFERING_CONSTRAINT_POLICY settings +#if !defined (TAO_HAS_BUFFERING_CONSTRAINT_POLICY) +# if (TAO_HAS_CORBA_MESSAGING == 1) && \ + (TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0) +# define TAO_HAS_BUFFERING_CONSTRAINT_POLICY 1 +# else +# define TAO_HAS_BUFFERING_CONSTRAINT_POLICY 0 +# endif /* TAO_HAS_CORBA_MESSAGING == 1 && + TAO_DISABLE_CORBA_MESSAGING_POLICIES == 0 */ +#endif /* !TAO_HAS_BUFFERING_CONSTRAINT_POLICY */ + // AMI support is disabled by default, irrespective of whether TAO is // configured for minimum CORBA. // To explicitly enable AMI support uncomment the following |