Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

TAO_Policy_Validator Class Reference

An abstract class for plugging in different Policy Validator mechanisms. More...

#include <Policy_Validator.h>

Collaboration diagram for TAO_Policy_Validator:

Collaboration graph
List of all members.

Public Member Functions

 TAO_Policy_Validator (TAO_ORB_Core &orb_core)
virtual ~TAO_Policy_Validator (void)
void validate (TAO_Policy_Set &policies ACE_ENV_ARG_DECL)
void merge_policies (TAO_Policy_Set &policies ACE_ENV_ARG_DECL)
CORBA::Boolean legal_policy (CORBA::PolicyType type)
void add_validator (TAO_Policy_Validator *validator)
TAO_ORB_Coreorb_core () const

Protected Member Functions

virtual void validate_impl (TAO_Policy_Set &policies ACE_ENV_ARG_DECL)=0
virtual void merge_policies_impl (TAO_Policy_Set &policies ACE_ENV_ARG_DECL)=0
virtual CORBA::Boolean legal_policy_impl (CORBA::PolicyType type)=0

Protected Attributes


Private Attributes


Detailed Description

An abstract class for plugging in different Policy Validator mechanisms.

This class was moved form the PortableServer library. The Portable Serever library used this abstraction to add policy validators to for the policies in the POA. This class seems so much useful for passing policy information between different loaded libraries.

Constructor & Destructor Documentation

TAO_Policy_Validator::TAO_Policy_Validator TAO_ORB_Core orb_core  ) 


TAO_Policy_Validator::~TAO_Policy_Validator void   )  [virtual]


Member Function Documentation

void TAO_Policy_Validator::add_validator TAO_Policy_Validator validator  ) 

Adds a validator to the "chain of validators". The TAO_POA_Policy_Validator implements something that looks like a chain of responsability in which different member of the chain have the responsability of validating a given set of policies.

CORBA::Boolean TAO_Policy_Validator::legal_policy CORBA::PolicyType  type  ) 

Return whether the specified policy type is legal for the current configuration. This is needed since the user can potentially specify policies that are unknown to an validate () routine, and these need to be caught.

virtual CORBA::Boolean TAO_Policy_Validator::legal_policy_impl CORBA::PolicyType  type  )  [protected, pure virtual]

void TAO_Policy_Validator::merge_policies TAO_Policy_Set &policies  ACE_ENV_ARG_DECL  ) 

Add/merge policies.

virtual void TAO_Policy_Validator::merge_policies_impl TAO_Policy_Set &policies  ACE_ENV_ARG_DECL  )  [protected, pure virtual]

TAO_ORB_Core & TAO_Policy_Validator::orb_core  )  const

Accessor for the stored ORB core reference

void TAO_Policy_Validator::validate TAO_Policy_Set &policies  ACE_ENV_ARG_DECL  ) 

Validate that the policies in the specified set are consistent and legal. Throw an appropriate exception if that is not the case.

virtual void TAO_Policy_Validator::validate_impl TAO_Policy_Set &policies  ACE_ENV_ARG_DECL  )  [protected, pure virtual]

Member Data Documentation

TAO_Policy_Validator* TAO_Policy_Validator::next_ [private]

TAO_ORB_Core& TAO_Policy_Validator::orb_core_ [protected]

The documentation for this class was generated from the following files:
Generated on Fri Dec 31 15:32:05 2004 for TAO by  doxygen