summaryrefslogtreecommitdiff
path: root/TAO/tao/Messaging/Connection_Timeout_Policy_i.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Messaging/Connection_Timeout_Policy_i.cpp')
-rw-r--r--TAO/tao/Messaging/Connection_Timeout_Policy_i.cpp196
1 files changed, 0 insertions, 196 deletions
diff --git a/TAO/tao/Messaging/Connection_Timeout_Policy_i.cpp b/TAO/tao/Messaging/Connection_Timeout_Policy_i.cpp
deleted file mode 100644
index 56a75c6984d..00000000000
--- a/TAO/tao/Messaging/Connection_Timeout_Policy_i.cpp
+++ /dev/null
@@ -1,196 +0,0 @@
-//$Id$
-#include "Connection_Timeout_Policy_i.h"
-#include "tao/ORB_Core.h"
-#include "tao/Stub.h"
-#include "tao/debug.h"
-
-
-ACE_RCSID (Messaging,
- Connection_Timeout_Policy_i,
- "$Id$")
-
-
-#if (TAO_HAS_CONNECTION_TIMEOUT_POLICY == 1)
-
-TAO_ConnectionTimeoutPolicy::TAO_ConnectionTimeoutPolicy (
- const TimeBase::TimeT& relative_expiry)
- : ACE_NESTED_CLASS (CORBA, Object) ()
- , ACE_NESTED_CLASS (CORBA, Policy) ()
- , ACE_NESTED_CLASS (CORBA, LocalObject) ()
- , TAO::ConnectionTimeoutPolicy ()
- , TAO_Local_RefCounted_Object ()
- , relative_expiry_ (relative_expiry)
-{
-}
-
-TAO_ConnectionTimeoutPolicy::TAO_ConnectionTimeoutPolicy (
- const TAO_ConnectionTimeoutPolicy &rhs)
- : ACE_NESTED_CLASS (CORBA, Object) ()
- , ACE_NESTED_CLASS (CORBA, Policy) ()
- , ACE_NESTED_CLASS (CORBA, LocalObject) ()
- , TAO::ConnectionTimeoutPolicy ()
- , TAO_Local_RefCounted_Object ()
- , relative_expiry_ (rhs.relative_expiry_)
-{
-}
-
-TimeBase::TimeT
-TAO_ConnectionTimeoutPolicy::relative_expiry (
- ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
- ACE_THROW_SPEC ((CORBA::SystemException))
-{
- return this->relative_expiry_;
-}
-
-CORBA::PolicyType
-TAO_ConnectionTimeoutPolicy::policy_type (
- ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
- ACE_THROW_SPEC ((CORBA::SystemException))
-{
- return TAO::CONNECTION_TIMEOUT_POLICY_TYPE;
-}
-
-void
-TAO_ConnectionTimeoutPolicy::hook (TAO_ORB_Core *orb_core,
- TAO_Stub *stub,
- bool &has_timeout,
- ACE_Time_Value &time_value)
-{
- ACE_TRY_NEW_ENV
- {
- CORBA::Policy_var policy = 0;
-
- if (stub == 0)
- {
- policy =
- orb_core->get_cached_policy_including_current (
- TAO_CACHED_POLICY_CONNECTION_TIMEOUT
- ACE_ENV_ARG_PARAMETER);
- ACE_TRY_CHECK;
- }
- else
- {
- policy =
- stub->get_cached_policy (
- TAO_CACHED_POLICY_CONNECTION_TIMEOUT
- ACE_ENV_ARG_PARAMETER);
- ACE_TRY_CHECK;
- }
-
- if (CORBA::is_nil (policy.in ()))
- {
- has_timeout = 0;
- return;
- }
-
- TAO::ConnectionTimeoutPolicy_var p =
- TAO::ConnectionTimeoutPolicy::_narrow (
- policy.in ()
- ACE_ENV_ARG_PARAMETER);
- ACE_TRY_CHECK;
-
- TimeBase::TimeT t = p->relative_expiry (ACE_ENV_SINGLE_ARG_PARAMETER);
- ACE_TRY_CHECK;
- TimeBase::TimeT seconds = t / 10000000u;
- TimeBase::TimeT microseconds = (t % 10000000u) / 10;
- time_value.set (ACE_U64_TO_U32 (seconds),
- ACE_U64_TO_U32 (microseconds));
-
- // Set the flag once all operations complete successfully
- has_timeout = 1;
-
- if (TAO_debug_level > 0)
- {
- CORBA::ULong msecs =
- static_cast<CORBA::ULong> (microseconds / 1000);
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("TAO (%P|%t) - Timeout is <%u>\n"),
- msecs));
- }
- }
- ACE_CATCHANY
- {
- // Ignore all exceptions...
- }
- ACE_ENDTRY;
-}
-
-CORBA::Policy_ptr
-TAO_ConnectionTimeoutPolicy::create (const CORBA::Any& val
- ACE_ENV_ARG_DECL)
-{
- // Future policy implementors: notice how the following code is
- // exception safe!
-
- TimeBase::TimeT value;
- if ((val >>= value) == 0)
- ACE_THROW_RETURN (CORBA::PolicyError (CORBA::BAD_POLICY_VALUE),
- CORBA::Policy::_nil ());
-
- TAO_ConnectionTimeoutPolicy *tmp;
- ACE_NEW_THROW_EX (tmp,
- TAO_ConnectionTimeoutPolicy (value),
- CORBA::NO_MEMORY (TAO::VMCID,
- CORBA::COMPLETED_NO));
- ACE_CHECK_RETURN (CORBA::Policy::_nil ());
-
- return tmp;
-}
-
-TAO_ConnectionTimeoutPolicy *
-TAO_ConnectionTimeoutPolicy::clone (void) const
-{
- TAO_ConnectionTimeoutPolicy *copy = 0;
- ACE_NEW_RETURN (copy,
- TAO_ConnectionTimeoutPolicy (*this),
- 0);
- return copy;
-}
-
-CORBA::Policy_ptr
-TAO_ConnectionTimeoutPolicy::copy (ACE_ENV_SINGLE_ARG_DECL)
- ACE_THROW_SPEC ((CORBA::SystemException))
-{
- // Future policy implementors: notice how the following code is
- // exception safe!
- TAO_ConnectionTimeoutPolicy* tmp = 0;
- ACE_NEW_THROW_EX (tmp,
- TAO_ConnectionTimeoutPolicy (*this),
- CORBA::NO_MEMORY (TAO::VMCID,
- CORBA::COMPLETED_NO));
- ACE_CHECK_RETURN (CORBA::Policy::_nil ());
-
- return tmp;
-}
-
-void
-TAO_ConnectionTimeoutPolicy::destroy (ACE_ENV_SINGLE_ARG_DECL_NOT_USED)
- ACE_THROW_SPEC ((CORBA::SystemException))
-{
-}
-
-TAO_Cached_Policy_Type
-TAO_ConnectionTimeoutPolicy::_tao_cached_type (void) const
-{
- return TAO_CACHED_POLICY_CONNECTION_TIMEOUT;
-}
-
-void
-TAO_ConnectionTimeoutPolicy::set_time_value (ACE_Time_Value &time_value)
-{
- TimeBase::TimeT t = this->relative_expiry_;
- TimeBase::TimeT seconds = t / 10000000u;
- TimeBase::TimeT microseconds = (t % 10000000u) / 10;
- time_value.set (ACE_U64_TO_U32 (seconds),
- ACE_U64_TO_U32 (microseconds));
-
- if (TAO_debug_level > 0)
- {
- CORBA::ULong msecs = time_value.msec ();
- ACE_DEBUG ((LM_DEBUG,
- ACE_TEXT ("TAO (%P|%t) - Timeout is <%u>\n"),
- msecs));
- }
-}
-
-#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */