diff options
author | arvindk <arvindk@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2005-01-06 19:13:25 +0000 |
---|---|---|
committer | arvindk <arvindk@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2005-01-06 19:13:25 +0000 |
commit | f6d484330fd665b86534c3232d5b34128472a1d3 (patch) | |
tree | e0a89ea8054566d14f27fb035e641f64d9b310b3 | |
parent | ef47e910cc9497270f7e699b26ce208c239881cb (diff) | |
download | ATCD-f6d484330fd665b86534c3232d5b34128472a1d3.tar.gz |
ChangeLogTag: Thu Jan 6 13:05:25 2005 Arvind S. Krishna <arvindk@dre.vanderbilt.edu>
-rw-r--r-- | TAO/tao/ChangeLog | 22 | ||||
-rw-r--r-- | TAO/tao/GIOP_Message_Base.cpp | 23 | ||||
-rw-r--r-- | TAO/tao/Strategies/DIOP_Connection_Handler.cpp | 27 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp | 24 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connector.cpp | 22 | ||||
-rw-r--r-- | TAO/tao/Strategies/UIOP_Connection_Handler.cpp | 28 | ||||
-rw-r--r-- | TAO/tao/Strategies/UIOP_Connector.cpp | 9 | ||||
-rw-r--r-- | TAO/tao/tao.mpc | 27 |
8 files changed, 134 insertions, 48 deletions
diff --git a/TAO/tao/ChangeLog b/TAO/tao/ChangeLog index cfc52fecc44..30862a3f6a7 100644 --- a/TAO/tao/ChangeLog +++ b/TAO/tao/ChangeLog @@ -1,3 +1,17 @@ +Thu Jan 6 13:05:25 2005 Arvind S. Krishna <arvindk@dre.vanderbilt.edu> + + * Strategies/DIOP_Connection_Handler.cpp: + * Strategies/SHMIOP_Connection_Handler.cpp: + * Strategies/SHMIOP_Connector.cpp: + * Strategies/UIOP_Connection_Handler.cpp: + * Strategies/UIOP_Connector.cpp: + Spill over changes from Collocation refactoring + + * tao/GIOP_Message_Base.cpp: + * tao/tao.mpc: + Prevent marshing protocol header when requests do not + change. mpc file that sets the right macro + Tue Jan 4 09:17:53 2005 Arvind S. Krishna <arvindk@dre.vanderbilt.edu> * tao/Invocation_Adapter.cpp: @@ -62,10 +76,10 @@ Tue Jan 4 09:17:53 2005 Arvind S. Krishna <arvindk@dre.vanderbilt.edu> * tao/Messaging/Asynch_Invocation_Adapter.cpp: * tao/Messaging/Asynch_Invocation_Adapter.h: - - If using Asynchronous communication, factored remoting code. This - includes code for invoking two way operations. This inturn calls the - Invocation Adapter's invoke which is already specialized for + + If using Asynchronous communication, factored remoting code. This + includes code for invoking two way operations. This inturn calls the + Invocation Adapter's invoke which is already specialized for collocated operation. * tao/TAO.mpc: diff --git a/TAO/tao/GIOP_Message_Base.cpp b/TAO/tao/GIOP_Message_Base.cpp index dfdd5db0474..40b32767f39 100644 --- a/TAO/tao/GIOP_Message_Base.cpp +++ b/TAO/tao/GIOP_Message_Base.cpp @@ -842,6 +842,16 @@ int TAO_GIOP_Message_Base::write_protocol_header (TAO_GIOP_Message_Type t, TAO_OutputCDR &msg) { + +#if defined (TAO_HAS_NO_HEADER_REMARSHALL) + static bool once = true; + static int header_length = 0; + + if (once) + { + once = false; +#endif + // Reset the message type // Reset the message type msg.reset (); @@ -873,7 +883,20 @@ TAO_GIOP_Message_Base::write_protocol_header (TAO_GIOP_Message_Type t, static int header_size = sizeof (header) / sizeof (header[0]); msg.write_octet_array (header, header_size); +#if defined (TAO_HAS_NO_HEADER_REMARSHALL) + header_length = msg.total_length (); +#endif + return msg.good_bit (); + +#if defined (TAO_HAS_NO_HEADER_REMARSHALL) + } + + // Skip the required set of bytes + msg.skip_from_start (header_length); + return msg.good_bit (); +#endif + } int diff --git a/TAO/tao/Strategies/DIOP_Connection_Handler.cpp b/TAO/tao/Strategies/DIOP_Connection_Handler.cpp index d3cfef52746..6b27e6e84ec 100644 --- a/TAO/tao/Strategies/DIOP_Connection_Handler.cpp +++ b/TAO/tao/Strategies/DIOP_Connection_Handler.cpp @@ -10,7 +10,11 @@ #include "tao/ORB.h" #include "tao/CDR.h" #include "tao/Server_Strategy_Factory.h" -//#include "tao/Transport_Cache_Manager.h" + +#if !defined (TAO_HAS_COLLOCATION) +# include "tao/Transport_Cache_Manager.h" +#endif + #include "tao/Thread_Lane_Resources.h" #include "tao/Base_Transport_Property.h" #include "tao/Protocols_Hooks.h" @@ -48,14 +52,16 @@ TAO_DIOP_Connection_Handler::TAO_DIOP_Connection_Handler (TAO_ORB_Core *orb_core TAO_Connection_Handler (orb_core), dscp_codepoint_ (IPDSFIELD_DSCP_DEFAULT << 2) { - /* + +#if !defined (TAO_HAS_COLLOCATION) TAO_DIOP_Transport* specific_transport = 0; ACE_NEW (specific_transport, TAO_DIOP_Transport(this, orb_core, flag)); // store this pointer (indirectly increment ref count) this->transport (specific_transport); - */ +#endif + } @@ -117,7 +123,8 @@ TAO_DIOP_Connection_Handler::open_handler (void *v) int TAO_DIOP_Connection_Handler::open (void*) { - /* + +#if !defined (TAO_HAS_COLLOCATION) // Currently, the DIOP properties are not used. This code is here // for consistency with other protocols. TAO_DIOP_Protocol_Properties protocol_properties; @@ -174,15 +181,17 @@ TAO_DIOP_Connection_Handler::open (void*) this->state_changed (TAO_LF_Event::LFS_SUCCESS); return 0; - */ - +#else return 0; +#endif + } int TAO_DIOP_Connection_Handler::open_server (void) { - /* + +#if !defined (TAO_HAS_COLLOCATION) this->udp_socket_.open (this->local_addr_); if( TAO_debug_level > 5) { @@ -197,8 +206,10 @@ TAO_DIOP_Connection_Handler::open_server (void) this->transport ()->id ((size_t) this->get_handle ()); return 0; - */ +#else return 0; +#endif + } int diff --git a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp index 3bb89f11e5f..57a46db94c8 100644 --- a/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp +++ b/TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp @@ -46,20 +46,27 @@ TAO_SHMIOP_Connection_Handler::TAO_SHMIOP_Connection_Handler (TAO_ORB_Core *orb_ : TAO_SHMIOP_SVC_HANDLER (orb_core->thr_mgr (), 0, 0), TAO_Connection_Handler (orb_core) { - /* + +#if !defined (TAO_HAS_COLLOCATION) TAO_SHMIOP_Transport* specific_transport = 0; ACE_NEW (specific_transport, TAO_SHMIOP_Transport(this, orb_core, flag)); // store this pointer (indirectly increment ref count) this->transport (specific_transport); - */ +#else + ACE_UNUSED_ARG (orb_Core); + ACE_UNUSED_ARG (flag); +#endif } TAO_SHMIOP_Connection_Handler::~TAO_SHMIOP_Connection_Handler (void) { - //delete this->transport (); +#if !defined (TAO_HAS_COLLOCATION) + delete this->transport (); +#endif + } int @@ -71,7 +78,8 @@ TAO_SHMIOP_Connection_Handler::open_handler (void *v) int TAO_SHMIOP_Connection_Handler::open (void*) { - /* + +#if !defined (TAO_HAS_COLLOCATION) TAO_SHMIOP_Protocol_Properties protocol_properties; // Initialize values from ORB params. @@ -166,8 +174,9 @@ TAO_SHMIOP_Connection_Handler::open (void*) this->state_changed (TAO_LF_Event::LFS_SUCCESS); return 0; - */ +#else return 0; +#endif } int @@ -236,7 +245,7 @@ TAO_SHMIOP_Connection_Handler::release_os_resources (void) int TAO_SHMIOP_Connection_Handler::add_transport_to_cache (void) { - /* +#if !defined (TAO_HAS_COLLOCATION) ACE_INET_Addr addr; // Get the peername. @@ -257,8 +266,9 @@ TAO_SHMIOP_Connection_Handler::add_transport_to_cache (void) // Add the handler to Cache return cache.cache_idle_transport (&prop, this->transport ()); - */ +#else return 0; +#endif } // **************************************************************** diff --git a/TAO/tao/Strategies/SHMIOP_Connector.cpp b/TAO/tao/Strategies/SHMIOP_Connector.cpp index ab842d1dc9c..6b3cc6d4446 100644 --- a/TAO/tao/Strategies/SHMIOP_Connector.cpp +++ b/TAO/tao/Strategies/SHMIOP_Connector.cpp @@ -14,7 +14,11 @@ #include "tao/Environment.h" #include "tao/Transport_Cache_Manager.h" #include "tao/Thread_Lane_Resources.h" -//#include "tao/Blocked_Connect_Strategy.h" + +#if !defined (TAO_HAS_COLLOCATION) +# include "tao/Blocked_Connect_Strategy.h" +#endif + #include "ace/OS_NS_strings.h" ACE_RCSID (Strategies, @@ -61,7 +65,7 @@ TAO_SHMIOP_Connector::~TAO_SHMIOP_Connector (void) int TAO_SHMIOP_Connector::open (TAO_ORB_Core *orb_core) { - /* +#if !defined (TAO_HAS_COLLOCATION) this->orb_core (orb_core); // The SHMIOP always uses a blocked connect strategy @@ -102,8 +106,11 @@ TAO_SHMIOP_Connector::open (TAO_ORB_Core *orb_core) this->connect_strategy_.connector ().preferred_strategy (ACE_MEM_IO::MT); } return 0; - */ +#else + ACE_UNUSED_ARG (orb_core); return 0; +#endif + } int @@ -155,7 +162,9 @@ TAO_SHMIOP_Connector::make_connection (TAO::Profile_Transport_Resolver *, TAO_Transport_Descriptor_Interface &desc, ACE_Time_Value *max_wait_time) { - /* + +#if !defined (TAO_HAS_COLLOCATION) + if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("TAO (%P|%t) SHMIOP_Connector::make_connection - ") @@ -273,8 +282,11 @@ TAO_SHMIOP_Connector::make_connection (TAO::Profile_Transport_Resolver *, } return transport; - */ +#else + ACE_UNUSED_ARG (desc); + ACE_UNUSED_ARG (max_wait_time); return 0; +#endif } TAO_Profile * diff --git a/TAO/tao/Strategies/UIOP_Connection_Handler.cpp b/TAO/tao/Strategies/UIOP_Connection_Handler.cpp index a4e24181e7b..706957d0b85 100644 --- a/TAO/tao/Strategies/UIOP_Connection_Handler.cpp +++ b/TAO/tao/Strategies/UIOP_Connection_Handler.cpp @@ -48,20 +48,29 @@ TAO_UIOP_Connection_Handler::TAO_UIOP_Connection_Handler ( : TAO_UIOP_SVC_HANDLER (orb_core->thr_mgr (), 0, 0), TAO_Connection_Handler (orb_core) { - /* + +#if !defined (TAO_HAS_COLLOCATION) TAO_UIOP_Transport* specific_transport = 0; ACE_NEW (specific_transport, TAO_UIOP_Transport (this, orb_core, flag)); // store this pointer (indirectly increment ref count) this->transport (specific_transport); - */ +#else + ACE_UNUSED_ARG (orb_Core); + ACE_UNUSED_ARG (flag); +#endif + } TAO_UIOP_Connection_Handler::~TAO_UIOP_Connection_Handler (void) { - // delete this->transport (); + +#if !defined (TAO_HAS_COLLOCATION) + delete this->transport (); +#endif + } int @@ -73,7 +82,7 @@ TAO_UIOP_Connection_Handler::open_handler (void *v) int TAO_UIOP_Connection_Handler::open (void*) { - /* +#if !defined (TAO_HAS_COLLOCATION) TAO_UIOP_Protocol_Properties protocol_properties; // Initialize values from ORB params. @@ -147,8 +156,10 @@ TAO_UIOP_Connection_Handler::open (void*) this->state_changed (TAO_LF_Event::LFS_SUCCESS); return 0; - */ +#else return 0; +#endif + } int @@ -217,7 +228,8 @@ TAO_UIOP_Connection_Handler::release_os_resources (void) int TAO_UIOP_Connection_Handler::add_transport_to_cache (void) { - /* + +#if !defined (TAO_HAS_COLLOCATION) ACE_UNIX_Addr addr; // Get the peername. @@ -236,8 +248,10 @@ TAO_UIOP_Connection_Handler::add_transport_to_cache (void) // Add the handler to Cache return cache.cache_idle_transport (&prop, this->transport ()); - */ +#else return 0; +#endif + } #if defined (ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION) diff --git a/TAO/tao/Strategies/UIOP_Connector.cpp b/TAO/tao/Strategies/UIOP_Connector.cpp index ff53d04f05d..e1a107d54e3 100644 --- a/TAO/tao/Strategies/UIOP_Connector.cpp +++ b/TAO/tao/Strategies/UIOP_Connector.cpp @@ -168,7 +168,8 @@ TAO_UIOP_Connector::make_connection (TAO::Profile_Transport_Resolver *r, TAO_Transport_Descriptor_Interface &desc, ACE_Time_Value *max_wait_time) { - /* + +#if !defined (TAO_HAS_COLLOCATION) if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("TAO (%P|%t) UIUP_Connector::make_connection, ") @@ -327,8 +328,12 @@ TAO_UIOP_Connector::make_connection (TAO::Profile_Transport_Resolver *r, } return transport; - */ +#else + ACE_UNUSED_ARG (desc); + ACE_UNUSED_ARG (max_wait_time); return 0; +#endif + } diff --git a/TAO/tao/tao.mpc b/TAO/tao/tao.mpc index d86b0821a31..11ea6dd93a7 100644 --- a/TAO/tao/tao.mpc +++ b/TAO/tao/tao.mpc @@ -2,7 +2,7 @@ project(TAO) : acelib, taoversion, core, tao_output, taodefaults, pidl, extra_core { sharedname = TAO dynamicflags = TAO_BUILD_DLL - macros += TAO_HAS_COLLOCATION + macros += TAO_HAS_NO_HEADER_REMARSHALL // It is no longer necessary to override IDL_Files since it is a // custom build type and comes from the taoidldefaults base project. @@ -26,6 +26,7 @@ project(TAO) : acelib, taoversion, core, tao_output, taodefaults, pidl, extra_co IIOP_Lite_Factory.cpp IIOP_Profile.cpp IIOP_Transport.cpp + IIOP_Connector.cpp IIOP_Acceptor.cpp IIOP_Connection_Handler.cpp IIOP_Endpoint.cpp @@ -35,19 +36,6 @@ project(TAO) : acelib, taoversion, core, tao_output, taodefaults, pidl, extra_co IIOPA.cpp } -// exclude { -// IIOP_Connector.cpp -// Remote_Object_Proxy_Broker.cpp -// LocateRequest_Invocation_Adapter.cpp -// Remote_Invocation.cpp -// Synch_Invocation.cpp -// LocateRequest_Invocation.cpp -// Invocation_Endpoint_Selectors.cpp -// Reactive_Connect_Strategy.cpp -// Blocked_Connect_Strategy.cpp -// LF_Connect_Strategy.cpp -// } - Pluggable_Messaging { Pluggable_Messaging.cpp Pluggable_Messaging_Utils.cpp @@ -108,6 +96,7 @@ project(TAO) : acelib, taoversion, core, tao_output, taodefaults, pidl, extra_co Encodable.cpp Abstract_Servant_Base.cpp Object_Proxy_Broker.cpp + Remote_Object_Proxy_Broker.cpp Object_Proxy_Impl.cpp DomainC.cpp DomainA.cpp @@ -127,9 +116,13 @@ project(TAO) : acelib, taoversion, core, tao_output, taodefaults, pidl, extra_co Messaging_SyncScopeC.cpp Invocation_Base.cpp Invocation_Adapter.cpp + LocateRequest_Invocation_Adapter.cpp Profile_Transport_Resolver.cpp - Transport_Cache_Manager.cpp + Remote_Invocation.cpp Collocated_Invocation.cpp + Synch_Invocation.cpp + LocateRequest_Invocation.cpp + Invocation_Endpoint_Selectors.cpp operation_details.cpp ClientRequestInfo.cpp ClientRequestInfo_i.cpp @@ -260,6 +253,7 @@ project(TAO) : acelib, taoversion, core, tao_output, taodefaults, pidl, extra_co PolicyFactory_Registry.cpp Cache_Entries.cpp Base_Transport_Property.cpp + Transport_Cache_Manager.cpp Cleanup_Func_Registry.cpp Transport_Descriptor_Interface.cpp Object_Ref_Table.cpp @@ -272,6 +266,9 @@ project(TAO) : acelib, taoversion, core, tao_output, taodefaults, pidl, extra_co Block_Flushing_Strategy.cpp Reactive_Flushing_Strategy.cpp Connect_Strategy.cpp + Blocked_Connect_Strategy.cpp + Reactive_Connect_Strategy.cpp + LF_Connect_Strategy.cpp Queued_Message.cpp Synch_Queued_Message.cpp Asynch_Queued_Message.cpp |