diff options
author | Ossama Othman <ossama-othman@users.noreply.github.com> | 2002-04-15 18:33:43 +0000 |
---|---|---|
committer | Ossama Othman <ossama-othman@users.noreply.github.com> | 2002-04-15 18:33:43 +0000 |
commit | 288352386a822504386d01882966a8307b67feea (patch) | |
tree | b66d368c5530a8fc76848489dba1aa09affbb3ad | |
parent | 8f142a3bb37a19711dad9f2aae813ee5c6e6d9b6 (diff) | |
download | ATCD-288352386a822504386d01882966a8307b67feea.tar.gz |
ChangeLogTag:Mon Apr 15 11:30:50 2002 Ossama Othman <ossama@uci.edu>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 21 | ||||
-rw-r--r-- | TAO/tao/IIOP_Connector.cpp | 11 | ||||
-rw-r--r-- | TAO/tao/ORBInitializer_Registry.h | 15 | ||||
-rw-r--r-- | TAO/tao/ORB_Table.h | 14 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connector.cpp | 3 | ||||
-rw-r--r-- | TAO/tao/Strategies/UIOP_Connector.cpp | 11 |
6 files changed, 53 insertions, 22 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index 57679a9b62b..c6e914547f4 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,3 +1,24 @@ +Mon Apr 15 11:30:50 2002 Ossama Othman <ossama@uci.edu> + + * tao/ORB_Table.h: + * tao/ORBInitializer_Registry.h: + + Declare the singletons in these headers with the + TAO_SINGLETON_DECLARE macro to force a single instance to be + instantiated and exported in/from a Win32 TAO DLL. This should + correct a problem where multiple instances of TAO's ORB table + and ORBInitializer registry would end up being created despite + the fact they are supposed to be singletons. Kudos to Nanbor + for his help on these fixes. + + * tao/IIOP_Connector.cpp: + * tao/Strategies/SHMIOP_Connector.cpp: + * tao/Strategies/UIOP_Connector.cpp: + + Removed unused auto_ptr related explicit template + instantiations. They were only used by the preconnect code (see + below). + Mon Apr 15 08:05:14 2002 Balachandran Natarajan <bala@cs.wustl.edu> * orbsvcs/orbsvcs/Security/Security_Current_Impl.h: Included diff --git a/TAO/tao/IIOP_Connector.cpp b/TAO/tao/IIOP_Connector.cpp index 101660999e8..7f8ca4e55ce 100644 --- a/TAO/tao/IIOP_Connector.cpp +++ b/TAO/tao/IIOP_Connector.cpp @@ -1,13 +1,9 @@ -// This may look like C, but it's really -*- C++ -*- -// $Id$ - #include "tao/IIOP_Connector.h" #include "tao/IIOP_Profile.h" #include "tao/debug.h" #include "tao/ORB_Core.h" #include "tao/Client_Strategy_Factory.h" #include "tao/Environment.h" -#include "ace/Auto_Ptr.h" #include "tao/Base_Transport_Property.h" #include "tao/Protocols_Hooks.h" #include "tao/Transport_Cache_Manager.h" @@ -47,8 +43,6 @@ template class ACE_Map_Reverse_Iterator<ACE_HANDLE,ACE_Svc_Tuple<TAO_IIOP_Connec #pragma instantiate ACE_Map_Entry<ACE_HANDLE,ACE_Svc_Tuple<TAO_IIOP_Connection_Handler>*> #pragma instantiate ACE_Map_Iterator<ACE_HANDLE,ACE_Svc_Tuple<TAO_IIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX> #pragma instantiate ACE_Map_Reverse_Iterator<ACE_HANDLE,ACE_Svc_Tuple<TAO_IIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX> -#pragma instantiate ACE_Auto_Basic_Array_Ptr<TAO_IIOP_Connection_Handler*> - #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ @@ -359,9 +353,8 @@ TAO_IIOP_Connector::init_tcp_properties (void) #if 0 -/* - * TODO: Needs to be removed - * +/** + * @todo Needs to be removed */ int TAO_IIOP_Connector::preconnect (const char *preconnects) diff --git a/TAO/tao/ORBInitializer_Registry.h b/TAO/tao/ORBInitializer_Registry.h index 8badb87e55e..82ec0bb2384 100644 --- a/TAO/tao/ORBInitializer_Registry.h +++ b/TAO/tao/ORBInitializer_Registry.h @@ -88,6 +88,21 @@ private: # include "tao/ORBInitializer_Registry.inl" #endif /* __ACE_INLINE__ */ +#if defined (_MSC_VER) +// Disable "nonstandard extension used : 'extern' before template +// explicit instantiation" warning. +#pragma warning(disable:4231) +#endif /* _MSC_VER */ + +TAO_SINGLETON_DECLARE (TAO_Singleton, + TAO_ORBInitializer_Registry, + TAO_SYNCH_MUTEX) + +#if defined (_MSC_VER) +// Re-enable the warning. +#pragma warning(default:4231) +#endif /* _MSC_VER */ + #include "ace/post.h" #endif /* TAO_ORB_INITIALIZER_REGISTRY_H */ diff --git a/TAO/tao/ORB_Table.h b/TAO/tao/ORB_Table.h index db8f7465958..9adda3bb185 100644 --- a/TAO/tao/ORB_Table.h +++ b/TAO/tao/ORB_Table.h @@ -92,11 +92,23 @@ private: }; - #if defined (__ACE_INLINE__) # include "tao/ORB_Table.inl" #endif /* __ACE_INLINE__ */ +#if defined (_MSC_VER) +// Disable "nonstandard extension used : 'extern' before template +// explicit instantiation" warning. +#pragma warning(disable:4231) +#endif /* _MSC_VER */ + +TAO_SINGLETON_DECLARE (TAO_Singleton, TAO_ORB_Table, TAO_SYNCH_MUTEX) + +#if defined (_MSC_VER) +// Re-enable the warning. +#pragma warning(default:4231) +#endif /* _MSC_VER */ + #include "ace/post.h" #endif /* TAO_ORB_TABLE_H */ diff --git a/TAO/tao/Strategies/SHMIOP_Connector.cpp b/TAO/tao/Strategies/SHMIOP_Connector.cpp index 440522991d1..0b7dd818d6a 100644 --- a/TAO/tao/Strategies/SHMIOP_Connector.cpp +++ b/TAO/tao/Strategies/SHMIOP_Connector.cpp @@ -11,7 +11,6 @@ #include "tao/ORB_Core.h" #include "tao/Client_Strategy_Factory.h" #include "tao/Environment.h" -#include "ace/Auto_Ptr.h" #include "tao/Transport_Cache_Manager.h" #include "tao/Invocation.h" #include "tao/Thread_Lane_Resources.h" @@ -34,7 +33,6 @@ template class ACE_Map_Iterator_Base<ACE_HANDLE, ACE_Svc_Tuple<TAO_SHMIOP_Connec template class ACE_Map_Entry<ACE_HANDLE,ACE_Svc_Tuple<TAO_SHMIOP_Connection_Handler>*>; template class ACE_Map_Iterator<ACE_HANDLE,ACE_Svc_Tuple<TAO_SHMIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX>; template class ACE_Map_Reverse_Iterator<ACE_HANDLE,ACE_Svc_Tuple<TAO_SHMIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX>; -template class ACE_Auto_Basic_Array_Ptr<TAO_SHMIOP_Connection_Handler*>; #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) @@ -50,7 +48,6 @@ template class ACE_Auto_Basic_Array_Ptr<TAO_SHMIOP_Connection_Handler*>; #pragma instantiate ACE_Map_Entry<ACE_HANDLE,ACE_Svc_Tuple<TAO_SHMIOP_Connection_Handler>*> #pragma instantiate ACE_Map_Iterator<ACE_HANDLE,ACE_Svc_Tuple<TAO_SHMIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX> #pragma instantiate ACE_Map_Reverse_Iterator<ACE_HANDLE,ACE_Svc_Tuple<TAO_SHMIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX> -#pragma instantiate ACE_Auto_Basic_Array_Ptr<TAO_SHMIOP_Connection_Handler*> #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ diff --git a/TAO/tao/Strategies/UIOP_Connector.cpp b/TAO/tao/Strategies/UIOP_Connector.cpp index cc594d87c81..d86e4e509cb 100644 --- a/TAO/tao/Strategies/UIOP_Connector.cpp +++ b/TAO/tao/Strategies/UIOP_Connector.cpp @@ -1,5 +1,3 @@ -// $Id$ - #include "UIOP_Connector.h" #if TAO_HAS_UIOP == 1 @@ -8,7 +6,6 @@ #include "tao/debug.h" #include "tao/ORB_Core.h" #include "tao/Environment.h" -#include "ace/Auto_Ptr.h" #include "tao/Protocols_Hooks.h" #include "tao/Base_Transport_Property.h" #include "tao/Transport_Cache_Manager.h" @@ -33,13 +30,11 @@ template class ACE_Map_Iterator_Base<int, ACE_Svc_Tuple<TAO_UIOP_Connection_Hand template class ACE_Map_Entry<int,ACE_Svc_Tuple<TAO_UIOP_Connection_Handler>*>; template class ACE_Map_Iterator<int,ACE_Svc_Tuple<TAO_UIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX>; template class ACE_Map_Reverse_Iterator<int,ACE_Svc_Tuple<TAO_UIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX>; -template class ACE_Auto_Basic_Array_Ptr<TAO_UIOP_Connection_Handler*>; #elif defined (ACE_HAS_TEMPLATE_INSTANTIATION_PRAGMA) #pragma instantiate ACE_Node<ACE_UNIX_Addr> #pragma instantiate ACE_Unbounded_Stack<ACE_UNIX_Addr> -#pragma instantiate ACE_Auto_Basic_Array_Ptr<ACE_UNIX_Addr> #pragma instantiate TAO_Connect_Concurrency_Strategy<TAO_UIOP_Connection_Handler> #pragma instantiate TAO_Connect_Creation_Strategy<TAO_UIOP_Connection_Handler> @@ -53,7 +48,6 @@ template class ACE_Auto_Basic_Array_Ptr<TAO_UIOP_Connection_Handler*>; #pragma instantiate ACE_Map_Entry<int,ACE_Svc_Tuple<TAO_UIOP_Connection_Handler>*> #pragma instantiate ACE_Map_Iterator<int,ACE_Svc_Tuple<TAO_UIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX> #pragma instantiate ACE_Map_Reverse_Iterator<int,ACE_Svc_Tuple<TAO_UIOP_Connection_Handler>*,TAO_SYNCH_RW_MUTEX> -#pragma instantiate ACE_Auto_Basic_Array_Ptr<TAO_UIOP_Connection_Handler*> #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ @@ -351,9 +345,8 @@ TAO_UIOP_Connector::init_uiop_properties (void) #if 0 -/* - * TODO Needs to be removed - * +/** + * @todo Needs to be removed */ int TAO_UIOP_Connector::preconnect (const char *preconnects) |