summaryrefslogtreecommitdiff
path: root/TAO/tao/Policy_Set.h
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tao/Policy_Set.h')
-rw-r--r--TAO/tao/Policy_Set.h136
1 files changed, 0 insertions, 136 deletions
diff --git a/TAO/tao/Policy_Set.h b/TAO/tao/Policy_Set.h
deleted file mode 100644
index d5176c720b7..00000000000
--- a/TAO/tao/Policy_Set.h
+++ /dev/null
@@ -1,136 +0,0 @@
-// -*- C++ -*-
-
-//=============================================================================
-/**
- * @file Policy_Set.h
- *
- * $Id$
- *
- * A Policy Container that provides O(1) time access for policy that
- * support caching (see orbconf.h).
- *
- * @author Angelo Cosaro (corsaro@cs.wustl.edu)
- * @author Frank Hunleth (fhunleth@cs.wustl.edu)
- * @author Carlos O'Ryan (coryan@cs.wustl.edu)
- */
-//=============================================================================
-
-#ifndef TAO_POLICY_SET_H
-#define TAO_POLICY_SET_H
-
-#include /**/ "ace/pre.h"
-
-#include "tao/PolicyC.h"
-
-#if !defined (ACE_LACKS_PRAGMA_ONCE)
-# pragma once
-#endif /* ACE_LACKS_PRAGMA_ONCE */
-
-TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-
-/**
- * @class TAO_Policy_Set
- *
- * @brief The policy manager implementation.
- *
- * This class is used to implement both the CORBA::PolicyManager
- * and the CORBA::PolicyCurrent interfaces.
- */
-class TAO_Export TAO_Policy_Set
-{
-public:
-
- /** Creates a TAO_Policy_Set that has a given scope. The
- * scope is used to determinate whether or not a given policy can
- * be set for the given Policy Manager Implementation.
- */
- TAO_Policy_Set (TAO_Policy_Scope scope);
-
- /// Copy constructor.
- TAO_Policy_Set (const TAO_Policy_Set &rhs);
-
- /// Destructor
- ~TAO_Policy_Set (void);
-
- /// Copy the state from @a source, it uses the copy() operator to
- /// obtain independent copies of all the policies.
- void copy_from (TAO_Policy_Set* source
- ACE_ENV_ARG_DECL);
-
- /**
- * Modify the list of policies to include @a policies.
- * If @a set_add is @c CORBA::SET_OVERRIDE then we replace all the
- * old policies. If it is @c CORBA::ADD_OVERRIDE we simply add the
- * policies in @a policies.
- * No attempt is made to validate the policies for consistency.
- */
- void set_policy_overrides (const CORBA::PolicyList & policies,
- CORBA::SetOverrideType set_add
- ACE_ENV_ARG_DECL);
-
- /// Get the values (if any) for the policies in @a types, if @a
- /// types is an empty list the method returns *all* the current
- /// policies.
- CORBA::PolicyList * get_policy_overrides (const CORBA::PolicyTypeSeq & types
- ACE_ENV_ARG_DECL);
-
- /// Obtain a single policy.
- CORBA::Policy_ptr get_policy (CORBA::PolicyType policy
- ACE_ENV_ARG_DECL);
-
- /// Obtain a cached policy for speedy lookups.
- /**
- * This method just returns a const reference to the policy to avoid
- * obtaining a lock to increment the reference count. As such, it
- * can only be used for single threaded cases or cases where the
- * policies cannot be removed such as at the object and thread level
- * scopes. This method is most likely not appropriate for accessing
- * policies at the ORB level scope in any situation.
- */
- CORBA::Policy_ptr get_cached_const_policy (TAO_Cached_Policy_Type type) const;
-
- /// Obtain a single cached policy.
- CORBA::Policy_ptr get_cached_policy (TAO_Cached_Policy_Type type
- ACE_ENV_ARG_DECL);
-
- /// Utility method to set a single policy.
- void set_policy (const CORBA::Policy_ptr policy
- ACE_ENV_ARG_DECL);
-
- /// Returns the policy at the specified index.
- /// @c CORBA::Policy::_nil () is returned if the policy doesn't
- /// exist.
- CORBA::Policy *get_policy_by_index (CORBA::ULong index) const;
- CORBA::ULong num_policies (void) const;
-
-private:
- TAO_Policy_Set & operator= (const TAO_Policy_Set&);
-
- /// Remove and destroy all the policy objects owned by this policy
- /// manager.
- void cleanup_i (ACE_ENV_SINGLE_ARG_DECL);
-
- /// Utility method to determine if a policy's scope is compatible with ours.
- CORBA::Boolean compatible_scope (TAO_Policy_Scope policy_scope) const;
-
-private:
-
- /// Policies set for this Policy_Manager
- CORBA::PolicyList policy_list_;
-
- /// List of caches.
- CORBA::Policy *cached_policies_[TAO_CACHED_POLICY_MAX_CACHED];
-
- /// Scope associated to the Policy Manager Impl
- TAO_Policy_Scope scope_;
-};
-
-TAO_END_VERSIONED_NAMESPACE_DECL
-
-#if defined (__ACE_INLINE__)
-# include "tao/Policy_Set.i"
-#endif /* __ACE_INLINE__ */
-
-#include /**/ "ace/post.h"
-
-#endif /* TAO_POLICY_SET_H */