summaryrefslogtreecommitdiff
path: root/TAO/tao/Policy_Manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Policy_Manager.cpp')
-rw-r--r--TAO/tao/Policy_Manager.cpp102
1 files changed, 101 insertions, 1 deletions
diff --git a/TAO/tao/Policy_Manager.cpp b/TAO/tao/Policy_Manager.cpp
index 57abe6b64d9..7ffcd91a393 100644
--- a/TAO/tao/Policy_Manager.cpp
+++ b/TAO/tao/Policy_Manager.cpp
@@ -42,6 +42,8 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source,
this->cleanup_i (ACE_TRY_ENV);
ACE_CHECK;
+#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1)
+
if (source->relative_roundtrip_timeout_ != 0)
{
this->relative_roundtrip_timeout_ =
@@ -50,6 +52,10 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source,
this->count_++;
}
+#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */
+
+#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1)
+
if (source->client_priority_ != 0)
{
this->client_priority_ =
@@ -58,6 +64,10 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source,
this->count_++;
}
+#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */
+
+#if (TAO_HAS_SYNC_SCOPE_POLICY == 1)
+
if (source->sync_scope_ != 0)
{
this->sync_scope_ =
@@ -66,6 +76,10 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source,
this->count_++;
}
+#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */
+
+#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1)
+
if (source->buffering_constraint_ != 0)
{
this->buffering_constraint_ =
@@ -74,6 +88,8 @@ TAO_Policy_Manager_Impl::copy_from (TAO_Policy_Manager_Impl *source,
this->count_++;
}
+#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */
+
for (CORBA::ULong i = 0;
i < source->other_policies_.length ();
++i)
@@ -105,18 +121,34 @@ TAO_Policy_Manager_Impl::cleanup_i (CORBA::Environment &ACE_TRY_ENV)
}
this->other_policies_.length (0);
+#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1)
+
delete this->relative_roundtrip_timeout_;
this->relative_roundtrip_timeout_ = 0;
+#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */
+
+#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1)
+
delete this->client_priority_;
this->client_priority_ = 0;
+#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */
+
+#if (TAO_HAS_SYNC_SCOPE_POLICY == 1)
+
delete this->sync_scope_;
this->sync_scope_ = 0;
+#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */
+
+#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1)
+
delete this->buffering_constraint_;
this->buffering_constraint_ = 0;
+#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */
+
this->count_ = 0;
}
@@ -149,6 +181,9 @@ TAO_Policy_Manager_Impl::set_policy_overrides (
switch (slot)
{
+
+#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1)
+
case TAO_MESSAGING_RELATIVE_RT_TIMEOUT_POLICY_TYPE:
{
TAO_ServantBase *servant = policy->_servant ();
@@ -174,6 +209,10 @@ TAO_Policy_Manager_Impl::set_policy_overrides (
}
break;
+#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */
+
+#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1)
+
case TAO_CLIENT_PRIORITY_POLICY_TYPE:
{
TAO_ServantBase *servant = policy->_servant ();
@@ -199,6 +238,10 @@ TAO_Policy_Manager_Impl::set_policy_overrides (
}
break;
+#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */
+
+#if (TAO_HAS_SYNC_SCOPE_POLICY == 1)
+
case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE:
{
TAO_ServantBase *servant = policy->_servant ();
@@ -224,6 +267,10 @@ TAO_Policy_Manager_Impl::set_policy_overrides (
}
break;
+#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */
+
+#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1)
+
case TAO_BUFFERING_CONSTRAINT_POLICY_TYPE:
{
TAO_ServantBase *servant = policy->_servant ();
@@ -249,6 +296,8 @@ TAO_Policy_Manager_Impl::set_policy_overrides (
}
break;
+#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */
+
case TAO_MESSAGING_REBIND_POLICY_TYPE:
case TAO_MESSAGING_REQUEST_PRIORITY_POLICY_TYPE:
case TAO_MESSAGING_REPLY_PRIORITY_POLICY_TYPE:
@@ -314,12 +363,15 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
ACE_CHECK_RETURN (0);
CORBA::PolicyList_var policy_list (policy_list_ptr);
-
+
policy_list->length (slots);
CORBA::ULong n = 0;
if (types_length == 0)
{
+
+#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1)
+
if (this->relative_roundtrip_timeout_ != 0)
{
policy_list[n++] =
@@ -327,6 +379,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
ACE_CHECK_RETURN (0);
}
+#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */
+
+#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1)
+
if (this->client_priority_ != 0)
{
policy_list[n++] =
@@ -334,6 +390,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
ACE_CHECK_RETURN (0);
}
+#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */
+
+#if (TAO_HAS_SYNC_SCOPE_POLICY == 1)
+
if (this->sync_scope_ != 0)
{
policy_list[n++] =
@@ -341,6 +401,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
ACE_CHECK_RETURN (0);
}
+#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */
+
+#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1)
+
if (this->buffering_constraint_ != 0)
{
policy_list[n++] =
@@ -348,6 +412,8 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
ACE_CHECK_RETURN (0);
}
+#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */
+
CORBA::ULong length = this->other_policies_.length ();
for (CORBA::ULong i = 0; i != length; ++i)
{
@@ -365,6 +431,9 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
switch (slot)
{
+
+#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1)
+
case TAO_MESSAGING_RELATIVE_RT_TIMEOUT_POLICY_TYPE:
if (this->relative_roundtrip_timeout_ != 0)
{
@@ -374,6 +443,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
}
break;
+#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */
+
+#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1)
+
case TAO_CLIENT_PRIORITY_POLICY_TYPE:
if (this->client_priority_ != 0)
{
@@ -383,6 +456,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
}
break;
+#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */
+
+#if (TAO_HAS_SYNC_SCOPE_POLICY == 1)
+
case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE:
if (this->sync_scope_ != 0)
{
@@ -392,6 +469,10 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
}
break;
+#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */
+
+#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1)
+
case TAO_BUFFERING_CONSTRAINT_POLICY_TYPE:
if (this->buffering_constraint_ != 0)
{
@@ -401,6 +482,8 @@ TAO_Policy_Manager_Impl::get_policy_overrides (
}
break;
+#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */
+
case TAO_MESSAGING_REBIND_POLICY_TYPE:
case TAO_MESSAGING_REQUEST_PRIORITY_POLICY_TYPE:
case TAO_MESSAGING_REPLY_PRIORITY_POLICY_TYPE:
@@ -445,6 +528,9 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type,
{
switch (type)
{
+
+#if (TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1)
+
case TAO_MESSAGING_RELATIVE_RT_TIMEOUT_POLICY_TYPE:
if (this->relative_roundtrip_timeout_ != 0)
{
@@ -452,6 +538,10 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type,
}
return CORBA::Policy::_nil ();
+#endif /* TAO_HAS_RELATIVE_ROUNDTRIP_TIMEOUT_POLICY == 1 */
+
+#if (TAO_HAS_CLIENT_PRIORITY_POLICY == 1)
+
case TAO_CLIENT_PRIORITY_POLICY_TYPE:
if (this->client_priority_ != 0)
{
@@ -459,6 +549,10 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type,
}
return CORBA::Policy::_nil ();
+#endif /* TAO_HAS_CLIENT_PRIORITY_POLICY == 1 */
+
+#if (TAO_HAS_SYNC_SCOPE_POLICY == 1)
+
case TAO_MESSAGING_SYNC_SCOPE_POLICY_TYPE:
if (this->sync_scope_ != 0)
{
@@ -466,6 +560,10 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type,
}
return CORBA::Policy::_nil ();
+#endif /* TAO_HAS_SYNC_SCOPE_POLICY == 1 */
+
+#if (TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1)
+
case TAO_BUFFERING_CONSTRAINT_POLICY_TYPE:
if (this->buffering_constraint_ != 0)
{
@@ -473,6 +571,8 @@ TAO_Policy_Manager_Impl::get_policy (CORBA::PolicyType type,
}
return CORBA::Policy::_nil ();
+#endif /* TAO_HAS_BUFFERING_CONSTRAINT_POLICY == 1 */
+
case TAO_MESSAGING_REBIND_POLICY_TYPE:
case TAO_MESSAGING_REQUEST_PRIORITY_POLICY_TYPE:
case TAO_MESSAGING_REPLY_PRIORITY_POLICY_TYPE: