TAO_Policy_Manager Class Reference

#include <Policy_Manager.h>

Inheritance diagram for TAO_Policy_Manager:

Inheritance graph
[legend]
Collaboration diagram for TAO_Policy_Manager:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_Policy_Manager (void)
 constructor
CORBA::Policy_ptr get_policy (CORBA::PolicyType policy)
 Obtain a single policy.
CORBA::Policy_ptr get_cached_policy (TAO_Cached_Policy_Type type)
 Obtain a single cached policy.
virtual CORBA::PolicyList * get_policy_overrides (const CORBA::PolicyTypeSeq &ts)
virtual void set_policy_overrides (const CORBA::PolicyList &policies, CORBA::SetOverrideType set_add)

Private Member Functions

 TAO_Policy_Manager (TAO_Policy_Manager const &)
TAO_Policy_Manageroperator= (TAO_Policy_Manager const &)

Private Attributes

TAO_SYNCH_MUTEX mutex_
 Protect access.
TAO_Policy_Set impl_
 The implementation.

Detailed Description

Definition at line 36 of file Policy_Manager.h.


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO_Policy_Manager::TAO_Policy_Manager ( void   ) 

constructor

Definition at line 8 of file Policy_Manager.inl.

00009   : impl_ (TAO_POLICY_ORB_SCOPE)
00010 {
00011 }

TAO_Policy_Manager::TAO_Policy_Manager ( TAO_Policy_Manager const &   )  [private]


Member Function Documentation

ACE_INLINE CORBA::Policy_ptr TAO_Policy_Manager::get_cached_policy ( TAO_Cached_Policy_Type  type  ) 

Obtain a single cached policy.

Definition at line 21 of file Policy_Manager.inl.

References ACE_GUARD_RETURN, TAO_Policy_Set::get_cached_policy(), impl_, and TAO_SYNCH_MUTEX.

Referenced by TAO_ORB_Core::get_cached_policy().

00022 {
00023   // @@ Previous code used a "double-checked locking hack" to check
00024   // if the policy was set before grabbing the lock to actually get
00025   // it, so that could save a lock operation.  This was removed, as
00026   // it is not as easy to do this anymore.
00027   ACE_GUARD_RETURN (TAO_SYNCH_MUTEX, ace_mon, this->mutex_, 0);
00028 
00029   return this->impl_.get_cached_policy (type);
00030 }

ACE_INLINE CORBA::Policy_ptr TAO_Policy_Manager::get_policy ( CORBA::PolicyType  policy  ) 

Obtain a single policy.

Definition at line 14 of file Policy_Manager.inl.

References ACE_GUARD_RETURN, TAO_Policy_Set::get_policy(), impl_, and TAO_SYNCH_MUTEX.

Referenced by TAO_ORB_Core::get_policy().

00015 {
00016   ACE_GUARD_RETURN (TAO_SYNCH_MUTEX, ace_mon, this->mutex_, 0);
00017   return this->impl_.get_policy (policy);
00018 }

TAO_BEGIN_VERSIONED_NAMESPACE_DECL CORBA::PolicyList * TAO_Policy_Manager::get_policy_overrides ( const CORBA::PolicyTypeSeq &  ts  )  [virtual]

Definition at line 19 of file Policy_Manager.cpp.

References ACE_GUARD_RETURN, and TAO_SYNCH_MUTEX.

00020 {
00021   ACE_GUARD_RETURN (TAO_SYNCH_MUTEX, ace_mon, this->mutex_, 0);
00022   return this->impl_.get_policy_overrides (ts);
00023 }

TAO_Policy_Manager& TAO_Policy_Manager::operator= ( TAO_Policy_Manager const &   )  [private]

void TAO_Policy_Manager::set_policy_overrides ( const CORBA::PolicyList &  policies,
CORBA::SetOverrideType  set_add 
) [virtual]

Definition at line 26 of file Policy_Manager.cpp.

References ACE_GUARD, impl_, TAO_Policy_Set::set_policy_overrides(), and TAO_SYNCH_MUTEX.

00028 {
00029   ACE_GUARD (TAO_SYNCH_MUTEX, ace_mon, this->mutex_);
00030   this->impl_.set_policy_overrides (policies, set_add);
00031 }


Member Data Documentation

TAO_Policy_Set TAO_Policy_Manager::impl_ [private]

The implementation.

Definition at line 69 of file Policy_Manager.h.

Referenced by get_cached_policy(), get_policy(), and set_policy_overrides().

TAO_SYNCH_MUTEX TAO_Policy_Manager::mutex_ [private]

Protect access.

Definition at line 66 of file Policy_Manager.h.


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:39:42 2010 for TAO by  doxygen 1.4.7