summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorarvindk <arvindk@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-01-06 19:13:25 +0000
committerarvindk <arvindk@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-01-06 19:13:25 +0000
commitf6d484330fd665b86534c3232d5b34128472a1d3 (patch)
treee0a89ea8054566d14f27fb035e641f64d9b310b3
parentef47e910cc9497270f7e699b26ce208c239881cb (diff)
downloadATCD-f6d484330fd665b86534c3232d5b34128472a1d3.tar.gz
ChangeLogTag: Thu Jan 6 13:05:25 2005 Arvind S. Krishna <arvindk@dre.vanderbilt.edu>
-rw-r--r--TAO/tao/ChangeLog22
-rw-r--r--TAO/tao/GIOP_Message_Base.cpp23
-rw-r--r--TAO/tao/Strategies/DIOP_Connection_Handler.cpp27
-rw-r--r--TAO/tao/Strategies/SHMIOP_Connection_Handler.cpp24
-rw-r--r--TAO/tao/Strategies/SHMIOP_Connector.cpp22
-rw-r--r--TAO/tao/Strategies/UIOP_Connection_Handler.cpp28
-rw-r--r--TAO/tao/Strategies/UIOP_Connector.cpp9
-rw-r--r--TAO/tao/tao.mpc27
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