diff options
Diffstat (limited to 'TAO/tao')
31 files changed, 191 insertions, 149 deletions
diff --git a/TAO/tao/CORBALOC_Parser.cpp b/TAO/tao/CORBALOC_Parser.cpp index 15903283ccb..9756039cdc2 100644 --- a/TAO/tao/CORBALOC_Parser.cpp +++ b/TAO/tao/CORBALOC_Parser.cpp @@ -1,4 +1,7 @@ #include "tao/CORBALOC_Parser.h" + +#if (TAO_HAS_CORBALOC_PARSER == 1) + #include "tao/ORB_Core.h" #include "tao/Stub.h" #include "tao/MProfile.h" @@ -358,3 +361,4 @@ ACE_STATIC_SVC_DEFINE (TAO_CORBALOC_Parser, ACE_FACTORY_DEFINE (TAO, TAO_CORBALOC_Parser) +#endif /* TAO_HAS_CORBALOC_PARSER == 1 */ diff --git a/TAO/tao/CORBALOC_Parser.h b/TAO/tao/CORBALOC_Parser.h index f65cc3fc8fb..3491fc389ef 100644 --- a/TAO/tao/CORBALOC_Parser.h +++ b/TAO/tao/CORBALOC_Parser.h @@ -22,6 +22,8 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#if (TAO_HAS_CORBALOC_PARSER == 1) + #include "ace/Service_Config.h" #include "ace/Array.h" #include "tao/Profile.h" @@ -98,5 +100,7 @@ TAO_END_VERSIONED_NAMESPACE_DECL ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_CORBALOC_Parser) ACE_FACTORY_DECLARE (TAO, TAO_CORBALOC_Parser) +#endif /* TAO_HAS_CORBALOC_PARSER == 1 */ + #include /**/ "ace/post.h" #endif /* TAO_CORBALOC_PARSER_H */ diff --git a/TAO/tao/CORBALOC_Parser.inl b/TAO/tao/CORBALOC_Parser.inl index 53f39cf5a05..5515a3c28be 100644 --- a/TAO/tao/CORBALOC_Parser.inl +++ b/TAO/tao/CORBALOC_Parser.inl @@ -2,6 +2,8 @@ // // $Id$ +#if (TAO_HAS_CORBALOC_PARSER == 1) + TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE @@ -23,3 +25,5 @@ TAO_CORBALOC_Parser::parsed_endpoint::~parsed_endpoint (void) } TAO_END_VERSIONED_NAMESPACE_DECL + +#endif /* TAO_HAS_CORBALOC_PARSER == 1 */ diff --git a/TAO/tao/CORBANAME_Parser.cpp b/TAO/tao/CORBANAME_Parser.cpp index 29df2496358..4de2bf7ae90 100644 --- a/TAO/tao/CORBANAME_Parser.cpp +++ b/TAO/tao/CORBANAME_Parser.cpp @@ -1,6 +1,9 @@ // $Id$ #include "tao/CORBANAME_Parser.h" + +#if (TAO_HAS_CORBANAME_PARSER == 1) + #include "tao/ORB.h" #include "tao/Object.h" #include "tao/SystemException.h" @@ -154,3 +157,5 @@ ACE_STATIC_SVC_DEFINE (TAO_CORBANAME_Parser, ACE_FACTORY_DEFINE (TAO, TAO_CORBANAME_Parser) +#endif /* TAO_HAS_CORBANAME_PARSER == 1 */ + diff --git a/TAO/tao/CORBANAME_Parser.h b/TAO/tao/CORBANAME_Parser.h index 696239a07b3..c656296661f 100644 --- a/TAO/tao/CORBANAME_Parser.h +++ b/TAO/tao/CORBANAME_Parser.h @@ -18,6 +18,8 @@ #include "tao/IOR_Parser.h" +#if (TAO_HAS_CORBANAME_PARSER == 1) + #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ @@ -61,5 +63,7 @@ TAO_END_VERSIONED_NAMESPACE_DECL ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_CORBANAME_Parser) ACE_FACTORY_DECLARE (TAO, TAO_CORBANAME_Parser) +#endif /* TAO_HAS_CORBANAME_PARSER == 1 */ + #include /**/ "ace/post.h" #endif /* TAO_CORBANAME_PARSER_H */ diff --git a/TAO/tao/DLL_Parser.cpp b/TAO/tao/DLL_Parser.cpp index f24fecdb592..8ce27e23b0b 100644 --- a/TAO/tao/DLL_Parser.cpp +++ b/TAO/tao/DLL_Parser.cpp @@ -1,6 +1,9 @@ // $Id$ #include "tao/DLL_Parser.h" + +# if (TAO_HAS_DDL_PARSER == 1) + #include "tao/Object_Loader.h" #include "tao/Object.h" #include "tao/ORB_Constants.h" @@ -73,3 +76,4 @@ ACE_STATIC_SVC_DEFINE (TAO_DLL_Parser, ACE_FACTORY_DEFINE (TAO, TAO_DLL_Parser) +#endif /* TAO_HAS_DDL_PARSER == 1 */ diff --git a/TAO/tao/DLL_Parser.h b/TAO/tao/DLL_Parser.h index fef6541c7e5..c66e5e32967 100644 --- a/TAO/tao/DLL_Parser.h +++ b/TAO/tao/DLL_Parser.h @@ -22,6 +22,8 @@ #include "tao/IOR_Parser.h" +#if (TAO_HAS_DDL_PARSER == 1) + TAO_BEGIN_VERSIONED_NAMESPACE_DECL /** @@ -94,5 +96,7 @@ TAO_END_VERSIONED_NAMESPACE_DECL ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_DLL_Parser) ACE_FACTORY_DECLARE (TAO, TAO_DLL_Parser) +#endif /* TAO_HAS_DDL_PARSER == 1 */ + #include /**/ "ace/post.h" #endif /* TAO_DLL_PARSER_H */ diff --git a/TAO/tao/FILE_Parser.cpp b/TAO/tao/FILE_Parser.cpp index efaff505eb1..ac6bc32c4a3 100644 --- a/TAO/tao/FILE_Parser.cpp +++ b/TAO/tao/FILE_Parser.cpp @@ -1,22 +1,22 @@ // $Id$ #include "tao/FILE_Parser.h" + +#if (TAO_HAS_FILE_PARSER == 1) + #include "tao/ORB.h" #include "tao/Object.h" #include "ace/Read_Buffer.h" - #include "ace/Malloc_Base.h" #include "ace/Log_Msg.h" #include "ace/OS_NS_stdio.h" #include "ace/OS_NS_string.h" - ACE_RCSID (tao, FILE_Parser, "$Id$") - static const char file_prefix[] = "file:"; TAO_BEGIN_VERSIONED_NAMESPACE_DECL @@ -83,3 +83,5 @@ ACE_STATIC_SVC_DEFINE (TAO_FILE_Parser, ACE_FACTORY_DEFINE (TAO, TAO_FILE_Parser) +#endif /* TAO_HAS_FILE_PARSER == 1 */ + diff --git a/TAO/tao/FILE_Parser.h b/TAO/tao/FILE_Parser.h index 0c8afd7be9a..fb933d788b8 100644 --- a/TAO/tao/FILE_Parser.h +++ b/TAO/tao/FILE_Parser.h @@ -23,6 +23,8 @@ #include "tao/IOR_Parser.h" +#if (TAO_HAS_FILE_PARSER == 1) + TAO_BEGIN_VERSIONED_NAMESPACE_DECL /** @@ -53,5 +55,7 @@ TAO_END_VERSIONED_NAMESPACE_DECL ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_FILE_Parser) ACE_FACTORY_DECLARE (TAO, TAO_FILE_Parser) +#endif /* TAO_HAS_FILE_PARSER == 1 */ + #include /**/ "ace/post.h" #endif /* TAO_FILE_PARSER_H */ diff --git a/TAO/tao/GIOP_Message_Generator_Parser_12.cpp b/TAO/tao/GIOP_Message_Generator_Parser_12.cpp index 297bf0006d9..e58e4e6b048 100644 --- a/TAO/tao/GIOP_Message_Generator_Parser_12.cpp +++ b/TAO/tao/GIOP_Message_Generator_Parser_12.cpp @@ -49,7 +49,6 @@ TAO_GIOP_Message_Generator_Parser_12::write_request_header ( // Sync scope - ignored by server if request is not oneway. else if (response_flags == CORBA::Octet (Messaging::SYNC_NONE) || response_flags == CORBA::Octet (Messaging::SYNC_WITH_TRANSPORT) - || response_flags == CORBA::Octet (TAO::SYNC_EAGER_BUFFERING) || response_flags == CORBA::Octet (TAO::SYNC_DELAYED_BUFFERING)) // No response required. msg << ACE_OutputCDR::from_octet (0); diff --git a/TAO/tao/HTTP_Client.cpp b/TAO/tao/HTTP_Client.cpp index a1091b80858..5943c8269b8 100644 --- a/TAO/tao/HTTP_Client.cpp +++ b/TAO/tao/HTTP_Client.cpp @@ -1,6 +1,9 @@ // $Id$ #include "tao/HTTP_Client.h" + +#if (TAO_HAS_HTTP_PARSER == 1) + #include "tao/HTTP_Handler.h" #include "ace/OS_NS_string.h" @@ -55,3 +58,4 @@ TAO_HTTP_Client::close (void) TAO_END_VERSIONED_NAMESPACE_DECL +#endif /* TAO_HAS_HTTP_PARSER == 1 */ diff --git a/TAO/tao/HTTP_Client.h b/TAO/tao/HTTP_Client.h index f7882226693..b3f2df4dd5f 100644 --- a/TAO/tao/HTTP_Client.h +++ b/TAO/tao/HTTP_Client.h @@ -24,6 +24,10 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include "tao/orbconf.h" + +#if (TAO_HAS_HTTP_PARSER == 1) + #include "ace/INET_Addr.h" #include "ace/Svc_Handler.h" #include "ace/SOCK_Connector.h" @@ -78,4 +82,6 @@ private: TAO_END_VERSIONED_NAMESPACE_DECL +#endif /* TAO_HAS_HTTP_PARSER == 1 */ + #endif /* TAO_HTTP_CLIENT_H */ diff --git a/TAO/tao/HTTP_Handler.cpp b/TAO/tao/HTTP_Handler.cpp index 16e3c2c70c0..aff5a35d7a1 100644 --- a/TAO/tao/HTTP_Handler.cpp +++ b/TAO/tao/HTTP_Handler.cpp @@ -1,6 +1,9 @@ // $Id$ #include "tao/HTTP_Handler.h" + +#if (TAO_HAS_HTTP_PARSER == 1) + #include "ace/OS_NS_stdio.h" #include "ace/OS_NS_string.h" #include "ace/OS_NS_strings.h" @@ -195,3 +198,5 @@ TAO_HTTP_Reader::receive_reply (void) TAO_END_VERSIONED_NAMESPACE_DECL +#endif /* TAO_HAS_HTTP_PARSER == 1*/ + diff --git a/TAO/tao/HTTP_Handler.h b/TAO/tao/HTTP_Handler.h index f789f07915d..8a8b83f6fac 100644 --- a/TAO/tao/HTTP_Handler.h +++ b/TAO/tao/HTTP_Handler.h @@ -23,6 +23,10 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include "tao/orbconf.h" + +#if (TAO_HAS_HTTP_PARSER == 1) + #include "ace/SOCK_Stream.h" #include "ace/Svc_Handler.h" #include "ace/Message_Block.h" @@ -91,4 +95,6 @@ private: TAO_END_VERSIONED_NAMESPACE_DECL +#endif /* TAO_HAS_HTTP_PARSER == 1 */ + #endif /* TAO_HTTP_HANDLER_H */ diff --git a/TAO/tao/HTTP_Parser.cpp b/TAO/tao/HTTP_Parser.cpp index 5d67aed6668..741e8af3b24 100644 --- a/TAO/tao/HTTP_Parser.cpp +++ b/TAO/tao/HTTP_Parser.cpp @@ -1,6 +1,9 @@ // $Id$ #include "tao/HTTP_Parser.h" + +#if (TAO_HAS_HTTP_PARSER == 1) + #include "tao/HTTP_Client.h" #include "tao/ORB.h" #include "tao/Object.h" @@ -135,4 +138,4 @@ ACE_STATIC_SVC_DEFINE (TAO_HTTP_Parser, ACE_FACTORY_DEFINE (TAO, TAO_HTTP_Parser) - +#endif /* TAO_HAS_HTTP_PARSER == 1 */ diff --git a/TAO/tao/HTTP_Parser.h b/TAO/tao/HTTP_Parser.h index 88b269f640e..1504f7caf39 100644 --- a/TAO/tao/HTTP_Parser.h +++ b/TAO/tao/HTTP_Parser.h @@ -24,6 +24,8 @@ #include "tao/IOR_Parser.h" +#if (TAO_HAS_HTTP_PARSER == 1) + TAO_BEGIN_VERSIONED_NAMESPACE_DECL /** @@ -54,6 +56,8 @@ TAO_END_VERSIONED_NAMESPACE_DECL ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_HTTP_Parser) ACE_FACTORY_DECLARE (TAO, TAO_HTTP_Parser) +#endif /* TAO_HAS_HTTP_PARSER == 1 */ + #include /**/ "ace/post.h" #endif /* TAO_HTTP_PARSER_H */ diff --git a/TAO/tao/Invocation_Adapter.cpp b/TAO/tao/Invocation_Adapter.cpp index c8f2e4942b8..daf7505c027 100644 --- a/TAO/tao/Invocation_Adapter.cpp +++ b/TAO/tao/Invocation_Adapter.cpp @@ -235,7 +235,6 @@ namespace TAO CORBA::Octet rflags = details.response_flags (); bool block_connect = rflags != static_cast<CORBA::Octet> (Messaging::SYNC_NONE) - && rflags != static_cast<CORBA::Octet> (TAO::SYNC_EAGER_BUFFERING) && rflags != static_cast<CORBA::Octet> (TAO::SYNC_DELAYED_BUFFERING); // Create the resolver which will pick (or create) for us a diff --git a/TAO/tao/MCAST_Parser.cpp b/TAO/tao/MCAST_Parser.cpp index 8b7b779a59a..cf5c1750874 100644 --- a/TAO/tao/MCAST_Parser.cpp +++ b/TAO/tao/MCAST_Parser.cpp @@ -1,6 +1,6 @@ #include "tao/MCAST_Parser.h" -#if defined ACE_HAS_IP_MULTICAST +#if (TAO_HAS_MCAST_PARSER == 1) #include "tao/default_ports.h" #include "tao/ORB_Core.h" @@ -501,4 +501,4 @@ ACE_STATIC_SVC_DEFINE (TAO_MCAST_Parser, ACE_FACTORY_DEFINE (TAO, TAO_MCAST_Parser) -#endif /* ACE_HAS_IP_MULTICAST */ +#endif /* TAO_HAS_MCAST_PARSER == 1 */ diff --git a/TAO/tao/MCAST_Parser.h b/TAO/tao/MCAST_Parser.h index a2ea8c9884f..83b9a5b3cda 100644 --- a/TAO/tao/MCAST_Parser.h +++ b/TAO/tao/MCAST_Parser.h @@ -24,7 +24,7 @@ #include "tao/CORBA_String.h" #include "tao/IOR_Parser.h" -#if defined ACE_HAS_IP_MULTICAST +#if (TAO_HAS_MCAST_PARSER == 1) TAO_BEGIN_VERSIONED_NAMESPACE_DECL @@ -105,7 +105,7 @@ TAO_END_VERSIONED_NAMESPACE_DECL ACE_STATIC_SVC_DECLARE_EXPORT (TAO, TAO_MCAST_Parser) ACE_FACTORY_DECLARE (TAO, TAO_MCAST_Parser) -#endif /* ACE_HAS_IP_MULTICAST */ +#endif /* TAO_HAS_MCAST_PARSER == 1 */ #include /**/ "ace/post.h" #endif /* TAO_MCAST_PARSER_H */ diff --git a/TAO/tao/MCAST_Parser.inl b/TAO/tao/MCAST_Parser.inl index 4eddeb7b5fc..297e8756400 100644 --- a/TAO/tao/MCAST_Parser.inl +++ b/TAO/tao/MCAST_Parser.inl @@ -2,7 +2,7 @@ // // $Id$ -#if defined ACE_HAS_IP_MULTICAST +#if (TAO_HAS_MCAST_PARSER == 1) #include "tao/default_ports.h" @@ -20,4 +20,4 @@ TAO_MCAST_Parser::TAO_MCAST_Parser (void) TAO_END_VERSIONED_NAMESPACE_DECL -#endif /* ACE_HAS_IP_MULTICAST */ +#endif /* TAO_HAS_MCAST_PARSER == 1 */ diff --git a/TAO/tao/ORB_Core.cpp b/TAO/tao/ORB_Core.cpp index 1886e381305..afe84a58311 100644 --- a/TAO/tao/ORB_Core.cpp +++ b/TAO/tao/ORB_Core.cpp @@ -243,7 +243,6 @@ TAO_ORB_Core::TAO_ORB_Core (const char *orbid) delayed_transport_queueing_strategy_ (0), flush_transport_queueing_strategy_ (0), #endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ - default_transport_queueing_strategy_ (0), refcount_ (1), policy_factory_registry_ (0), orbinitializer_registry_ (0), @@ -282,9 +281,6 @@ TAO_ORB_Core::TAO_ORB_Core (const char *orbid) #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ - ACE_NEW (this->default_transport_queueing_strategy_, - TAO::Default_Transport_Queueing_Strategy); - // Initialize the default request dispatcher. ACE_NEW (this->request_dispatcher_, TAO_Request_Dispatcher); @@ -328,8 +324,6 @@ TAO_ORB_Core::~TAO_ORB_Core (void) #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ - delete this->default_transport_queueing_strategy_; - delete this->request_dispatcher_; delete this->policy_factory_registry_; @@ -2893,26 +2887,30 @@ TAO::Transport_Queueing_Strategy * TAO_ORB_Core::get_transport_queueing_strategy (TAO_Stub *, Messaging::SyncScope &scope) { - - if (scope == Messaging::SYNC_WITH_TRANSPORT - || scope == Messaging::SYNC_WITH_SERVER - || scope == Messaging::SYNC_WITH_TARGET) + switch (scope) + { + case Messaging::SYNC_WITH_TRANSPORT: + case Messaging::SYNC_WITH_SERVER: + case Messaging::SYNC_WITH_TARGET: { - return this->flush_transport_queueing_strategy (); + return this->flush_transport_queueing_strategy_; } - - if (scope == Messaging::SYNC_NONE - || scope == TAO::SYNC_EAGER_BUFFERING) + break; + case Messaging::SYNC_NONE: { - return this->eager_transport_queueing_strategy (); + return this->eager_transport_queueing_strategy_; } - - if (scope == TAO::SYNC_DELAYED_BUFFERING) + break; + case TAO::SYNC_DELAYED_BUFFERING: { - return this->delayed_transport_queueing_strategy (); + return this->delayed_transport_queueing_strategy_; } - - return this->default_transport_queueing_strategy (); + break; + default: + { + return 0; + } + } } #endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ diff --git a/TAO/tao/ORB_Core.h b/TAO/tao/ORB_Core.h index 7c0b23b2ad8..3ae94db66a0 100644 --- a/TAO/tao/ORB_Core.h +++ b/TAO/tao/ORB_Core.h @@ -977,17 +977,6 @@ private: CORBA::Boolean is_collocation_enabled (TAO_ORB_Core *other_orb, const TAO_MProfile &mp); -#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) - - /// This strategy will buffer messages. - //@{ - TAO::Transport_Queueing_Strategy *eager_transport_queueing_strategy (void); - TAO::Transport_Queueing_Strategy *delayed_transport_queueing_strategy (void); - TAO::Transport_Queueing_Strategy *flush_transport_queueing_strategy (void); - //@} - -#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ - bool use_local_memory_pool_; protected: diff --git a/TAO/tao/ORB_Core.inl b/TAO/tao/ORB_Core.inl index 0a97af059b6..bfe0cb93eaf 100644 --- a/TAO/tao/ORB_Core.inl +++ b/TAO/tao/ORB_Core.inl @@ -492,34 +492,6 @@ TAO_ORB_Core::resolve_ior_table (void) // **************************************************************** -#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) - -ACE_INLINE TAO::Transport_Queueing_Strategy * -TAO_ORB_Core::eager_transport_queueing_strategy (void) -{ - return this->eager_transport_queueing_strategy_; -} - -ACE_INLINE TAO::Transport_Queueing_Strategy * -TAO_ORB_Core::delayed_transport_queueing_strategy (void) -{ - return this->delayed_transport_queueing_strategy_; -} - -ACE_INLINE TAO::Transport_Queueing_Strategy * -TAO_ORB_Core::flush_transport_queueing_strategy (void) -{ - return this->flush_transport_queueing_strategy_; -} - -#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ - -ACE_INLINE TAO::Transport_Queueing_Strategy * -TAO_ORB_Core::default_transport_queueing_strategy (void) -{ - return this->default_transport_queueing_strategy_; -} - #if (TAO_HAS_CORBA_MESSAGING == 1) ACE_INLINE TAO_Policy_Current & diff --git a/TAO/tao/Stub.cpp b/TAO/tao/Stub.cpp index 6f44a907414..ad19bfd6e4b 100644 --- a/TAO/tao/Stub.cpp +++ b/TAO/tao/Stub.cpp @@ -323,19 +323,6 @@ TAO_Stub::is_equivalent (CORBA::Object_ptr other_obj) // Memory managment -void -TAO_Stub::_incr_refcnt (void) -{ - ++this->refcount_; -} - -void -TAO_Stub::_decr_refcnt (void) -{ - if (--this->refcount_ == 0) - delete this; -} - TAO_Profile * TAO_Stub::set_profile_in_use_i (TAO_Profile *pfile) { @@ -503,24 +490,6 @@ TAO_Stub::get_policy_overrides (const CORBA::PolicyTypeSeq &types) #endif /* TAO_HAS_CORBA_MESSAGING == 1 */ -TAO::Transport_Queueing_Strategy * -TAO_Stub::transport_queueing_strategy (void) -{ -#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) - - bool has_synchronization; - Messaging::SyncScope scope; - - this->orb_core_->call_sync_scope_hook (this, has_synchronization, scope); - - if (has_synchronization == true) - return this->orb_core_->get_transport_queueing_strategy (this, scope); - -#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ - - return this->orb_core_->default_transport_queueing_strategy (); -} - CORBA::Boolean TAO_Stub::marshal (TAO_OutputCDR &cdr) { diff --git a/TAO/tao/Stub.inl b/TAO/tao/Stub.inl index cb0dd3a0a37..7aeed0a7d7d 100644 --- a/TAO/tao/Stub.inl +++ b/TAO/tao/Stub.inl @@ -301,6 +301,37 @@ TAO_Stub::optimize_collocation_objects (void) const return this->collocation_opt_; } +ACE_INLINE TAO::Transport_Queueing_Strategy * +TAO_Stub::transport_queueing_strategy (void) +{ +#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1) + + bool has_synchronization; + Messaging::SyncScope scope; + + this->orb_core_->call_sync_scope_hook (this, has_synchronization, scope); + + if (has_synchronization == true) + return this->orb_core_->get_transport_queueing_strategy (this, scope); +#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */ + + // No queueing strategy, let the transport use its default + return 0; +} + +ACE_INLINE void +TAO_Stub::_incr_refcnt (void) +{ + ++this->refcount_; +} + +ACE_INLINE void +TAO_Stub::_decr_refcnt (void) +{ + if (--this->refcount_ == 0) + delete this; +} + // --------------------------------------------------------------- // Creator methods for TAO_Stub_Auto_Ptr (TAO_Stub Auto Pointer) diff --git a/TAO/tao/TAO.pidl b/TAO/tao/TAO.pidl index 6c933bec090..62a1c134385 100644 --- a/TAO/tao/TAO.pidl +++ b/TAO/tao/TAO.pidl @@ -37,7 +37,6 @@ module TAO { // = TAO specific. - const Messaging::SyncScope SYNC_EAGER_BUFFERING = Messaging::SYNC_NONE; const Messaging::SyncScope SYNC_DELAYED_BUFFERING = -2; }; diff --git a/TAO/tao/TAO_Internal.cpp b/TAO/tao/TAO_Internal.cpp index e63f6889957..4497284897a 100644 --- a/TAO/tao/TAO_Internal.cpp +++ b/TAO/tao/TAO_Internal.cpp @@ -530,14 +530,24 @@ namespace #endif /* TAO_HAS_IIOP && TAO_HAS_IIOP != 0 */ // add descriptor to list of static objects. -#if defined (ACE_HAS_IP_MULTICAST) +#if (TAO_HAS_MCAST_PARSER == 1) pcfg->process_directive (ace_svc_desc_TAO_MCAST_Parser); -#endif /* ACE_HAS_IP_MULTICAST */ +#endif /* TAO_HAS_MCAST_PARSER == 1 */ +#if (TAO_HAS_CORBANAME_PARSER == 1) pcfg->process_directive (ace_svc_desc_TAO_CORBANAME_Parser); +#endif /* TAO_HAS_CORBANAME_PARSER == 1 */ +#if (TAO_HAS_CORBALOC_PARSER == 1) pcfg->process_directive (ace_svc_desc_TAO_CORBALOC_Parser); +#endif /* TAO_HAS_CORBALOC_PARSER == 1 */ +#if (TAO_HAS_FILE_PARSER == 1) pcfg->process_directive (ace_svc_desc_TAO_FILE_Parser); +#endif /* TAO_HAS_FILE_PARSER == 1 */ +#if (TAO_HAS_DDL_PARSER == 1) pcfg->process_directive (ace_svc_desc_TAO_DLL_Parser); +#endif /* TAO_HAS_DDL_PARSER == 1 */ +#if (TAO_HAS_HTTP_PARSER == 1) pcfg->process_directive (ace_svc_desc_TAO_HTTP_Parser); +#endif /* TAO_HAS_HTTP_PARSER */ pcfg->process_directive (ace_svc_desc_TAO_Default_Stub_Factory); pcfg->process_directive ( ace_svc_desc_TAO_Default_Endpoint_Selector_Factory); diff --git a/TAO/tao/Transport_Queueing_Strategies.cpp b/TAO/tao/Transport_Queueing_Strategies.cpp index 6368f19f5c7..8ff8ab416b6 100644 --- a/TAO/tao/Transport_Queueing_Strategies.cpp +++ b/TAO/tao/Transport_Queueing_Strategies.cpp @@ -23,29 +23,6 @@ namespace TAO // **************************************************************** bool - Default_Transport_Queueing_Strategy::must_queue (bool) const - { - return false; - } - - bool - Default_Transport_Queueing_Strategy::buffering_constraints_reached ( - TAO_Stub *, - size_t , - size_t , - bool &must_flush, - const ACE_Time_Value &, - bool &set_timer, - ACE_Time_Value &) const - { - set_timer = false; - must_flush = false; - return true; - } - -// **************************************************************** - - bool Flush_Transport_Queueing_Strategy::must_queue (bool) const { return false; diff --git a/TAO/tao/Transport_Queueing_Strategies.h b/TAO/tao/Transport_Queueing_Strategies.h index 4f25faeda01..4e5b19f32c3 100644 --- a/TAO/tao/Transport_Queueing_Strategies.h +++ b/TAO/tao/Transport_Queueing_Strategies.h @@ -78,21 +78,6 @@ namespace TAO ACE_Time_Value &interval) const = 0; }; - class Default_Transport_Queueing_Strategy : public Transport_Queueing_Strategy - { - public: - virtual bool must_queue (bool queue_empty) const; - - virtual bool buffering_constraints_reached ( - TAO_Stub *stub, - size_t msg_count, - size_t total_bytes, - bool &must_flush, - const ACE_Time_Value ¤t_deadline, - bool &set_timer, - ACE_Time_Value &interval) const; - }; - /** * This strategy doesn't not queue by default, but when a message is queued * we always flush it to the transport. This is used for oneways with diff --git a/TAO/tao/default_resource.cpp b/TAO/tao/default_resource.cpp index 06962279627..a4ff9a37f97 100644 --- a/TAO/tao/default_resource.cpp +++ b/TAO/tao/default_resource.cpp @@ -600,11 +600,24 @@ TAO_Default_Resource_Factory::get_parser_names (char **&names, return 0; } - // OK fallback on the hardcoded ones.... -#if defined ACE_HAS_IP_MULTICAST - this->parser_names_count_ = 6; // HOW MANY DO WE HAVE? -#else - this->parser_names_count_ = 5; + this->parser_names_count_ = 0; +#if (TAO_HAS_DDL_PARSER == 1) + ++this->parser_names_count_; +#endif +#if (TAO_HAS_FILE_PARSER == 1) + ++this->parser_names_count_; +#endif +#if (TAO_HAS_CORBALOC_PARSER == 1) + ++this->parser_names_count_; +#endif +#if (TAO_HAS_CORBANAME_PARSER == 1) + ++this->parser_names_count_; +#endif +#if (TAO_HAS_HTTP_PARSER == 1) + ++this->parser_names_count_; +#endif +#if (TAO_HAS_MCAST_PARSER == 1) + ++this->parser_names_count_; #endif ACE_NEW_RETURN (this->parser_names_, char *[this->parser_names_count_], @@ -612,25 +625,35 @@ TAO_Default_Resource_Factory::get_parser_names (char **&names, CORBA::ULong index = 0; +#if (TAO_HAS_DDL_PARSER == 1) this->parser_names_[index] = CORBA::string_dup ("DLL_Parser"); ++index; +#endif +#if (TAO_HAS_FILE_PARSER == 1) this->parser_names_[index] = CORBA::string_dup ("FILE_Parser"); ++index; +#endif +#if (TAO_HAS_CORBALOC_PARSER == 1) this->parser_names_[index] = CORBA::string_dup ("CORBALOC_Parser"); ++index; +#endif +#if (TAO_HAS_CORBANAME_PARSER == 1) this->parser_names_[index] = CORBA::string_dup ("CORBANAME_Parser"); ++index; +#endif -#if defined ACE_HAS_IP_MULTICAST +#if (TAO_HAS_MCAST_PARSER == 1) this->parser_names_[index] = CORBA::string_dup ("MCAST_Parser"); ++index; #endif +#if (TAO_HAS_HTTP_PARSER == 1) this->parser_names_[index] = CORBA::string_dup ("HTTP_Parser"); ++index; +#endif names = this->parser_names_; diff --git a/TAO/tao/orbconf.h b/TAO/tao/orbconf.h index 4de3c41df8d..9fdcdee11e7 100644 --- a/TAO/tao/orbconf.h +++ b/TAO/tao/orbconf.h @@ -848,6 +848,34 @@ enum TAO_Policy_Scope # define TAO_HAS_TRANSPORT_CURRENT 1 #endif /* ! TAO_HAS_TRANSPORT_CURRENT */ +#if !defined (TAO_HAS_DDL_PARSER) +# define TAO_HAS_DDL_PARSER 1 +#endif + +#if !defined (TAO_HAS_FILE_PARSER) +# define TAO_HAS_FILE_PARSER 1 +#endif + +#if !defined (TAO_HAS_CORBALOC_PARSER) +# define TAO_HAS_CORBALOC_PARSER 1 +#endif + +#if !defined (TAO_HAS_CORBANAME_PARSER) +# define TAO_HAS_CORBANAME_PARSER 1 +#endif + +#if !defined (TAO_HAS_HTTP_PARSER) +# define TAO_HAS_HTTP_PARSER 1 +#endif + +#if !defined (TAO_HAS_MCAST_PARSER) +# if defined ACE_HAS_IP_MULTICAST +# define TAO_HAS_MCAST_PARSER 1 +# else +# define TAO_HAS_MCAST_PARSER 0 +# endif +#endif + TAO_END_VERSIONED_NAMESPACE_DECL #include /**/ "ace/post.h" |