summaryrefslogtreecommitdiff
path: root/TAO/tao/Synch_Invocation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Synch_Invocation.cpp')
-rw-r--r--TAO/tao/Synch_Invocation.cpp76
1 files changed, 24 insertions, 52 deletions
diff --git a/TAO/tao/Synch_Invocation.cpp b/TAO/tao/Synch_Invocation.cpp
index a3f4e5d61b2..f3fe9829901 100644
--- a/TAO/tao/Synch_Invocation.cpp
+++ b/TAO/tao/Synch_Invocation.cpp
@@ -1,22 +1,22 @@
// $Id$
-#include "tao/Synch_Invocation.h"
-#include "tao/Profile_Transport_Resolver.h"
-#include "tao/Profile.h"
-#include "tao/Synch_Reply_Dispatcher.h"
-#include "tao/Transport.h"
-#include "tao/Stub.h"
-#include "tao/Bind_Dispatcher_Guard.h"
-#include "tao/operation_details.h"
-#include "tao/Wait_Strategy.h"
-#include "tao/debug.h"
-#include "tao/ORB_Constants.h"
-#include "tao/Messaging_SyncScopeC.h"
-#include "tao/ORB_Core.h"
-#include "tao/Service_Context.h"
+#include "Synch_Invocation.h"
+#include "Profile_Transport_Resolver.h"
+#include "Profile.h"
+#include "Synch_Reply_Dispatcher.h"
+#include "Transport.h"
+#include "Stub.h"
+#include "Bind_Dispatcher_Guard.h"
+#include "operation_details.h"
+#include "Wait_Strategy.h"
+#include "debug.h"
+#include "ORB_Constants.h"
+#include "Messaging_SyncScopeC.h"
+#include "ORB_Core.h"
+#include "Service_Context.h"
#if TAO_HAS_INTERCEPTORS == 1
-# include "tao/PortableInterceptorC.h"
+# include "PortableInterceptorC.h"
#endif /*TAO_HAS_INTERCEPTORS */
#include "ace/Auto_Ptr.h"
@@ -24,7 +24,7 @@
#include "ace/Countdown_Time.h"
#if !defined (__ACE_INLINE__)
-# include "tao/Synch_Invocation.inl"
+# include "Synch_Invocation.inl"
#endif /* __ACE_INLINE__ */
@@ -33,8 +33,6 @@ ACE_RCSID (tao,
"$Id$")
-TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-
namespace TAO
{
Synch_Twoway_Invocation::Synch_Twoway_Invocation (
@@ -81,6 +79,9 @@ namespace TAO
ACE_TRY
{
TAO_OutputCDR &cdr = this->resolver_.transport ()->out_stream ();
+#if TAO_RESET_OUTPUT_CDR_AFTER_SEND == 1
+ OutputCDR_Auto_Reset cdr_reset(cdr);
+#endif /* TAO_RESET_OUTPUT_CDR_AFTER_SEND */
this->write_header (tspec,
cdr
@@ -337,7 +338,7 @@ namespace TAO
{
(void) bd.unbind_dispatcher ();
this->resolver_.transport ()->close_connection ();
-
+
ACE_TRY
{
return
@@ -402,36 +403,6 @@ namespace TAO
case TAO_PLUGGABLE_MESSAGE_LOCATION_FORWARD:
return this->location_forward (cdr
ACE_ENV_ARG_PARAMETER);
- case TAO_PLUGGABLE_MESSAGE_LOCATION_FORWARD_PERM:
- {
- // Unmarshal the location forward object and set the
- // variable this->forward_to_.
- const Invocation_Status s
- = this->location_forward (cdr
- ACE_ENV_ARG_PARAMETER);
- if (s != TAO_INVOKE_FAILURE)
- {
- // de-marshalling of permanent object reference was successfull
- const CORBA::Boolean permanent_forward_condition =
- this->orb_core ()->is_permanent_forward_condition
- (this->forwarded_to_.in (),
- this->request_service_context ());
-
- if (!permanent_forward_condition)
- {
- // permanent condition not given
- if (TAO_debug_level > 3)
- ACE_DEBUG ((LM_DEBUG,
- "TAO (%P|%t) - Synch_Twoway_Invocation::"
- "check_reply_status: unexpected LOCATION_FORWARD_PERM reply\n"));
-
- ACE_THROW_RETURN (CORBA::INTERNAL (0, CORBA::COMPLETED_NO),
- TAO_INVOKE_FAILURE);
- }
- }
-
- return s;
- }
case TAO_PLUGGABLE_MESSAGE_USER_EXCEPTION:
return this->handle_user_exception (cdr
ACE_ENV_ARG_PARAMETER);
@@ -546,7 +517,7 @@ namespace TAO
ACE_TEXT ("TAO (%P|%t) - Synch_Twoway_Invocation::")
ACE_TEXT ("handle_user_exception - ")
ACE_TEXT ("raising exception %s\n"),
- ACE_TEXT_CHAR_TO_TCHAR (buf.in ())));
+ ACE_TEXT_TO_TCHAR_IN (buf.in ())));
}
mon.set_status (TAO_INVOKE_USER_EXCEPTION);
@@ -733,6 +704,9 @@ namespace TAO
this->resolver_.transport ();
TAO_OutputCDR &cdr = transport->out_stream ();
+#if TAO_RESET_OUTPUT_CDR_AFTER_SEND == 1
+ OutputCDR_Auto_Reset cdr_reset(cdr);
+#endif /* TAO_RESET_OUTPUT_CDR_AFTER_SEND */
ACE_TRY
{
@@ -813,5 +787,3 @@ namespace TAO
return s;
}
}
-
-TAO_END_VERSIONED_NAMESPACE_DECL