SL3_PolicyFactory.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  * @file SL3_PolicyFactory.h
00006  *
00007  * $Id: SL3_PolicyFactory.h 77001 2007-02-12 07:54:49Z johnnyw $
00008  *
00009  * PolicyFactory implementation for the SecurityLevel3 policies.
00010  *
00011  * @author Ossama Othman <ossama@dre.vanderbilt.edu>
00012  */
00013 //=============================================================================
00014 
00015 #ifndef TAO_SL3_POLICY_FACTORY_H
00016 #define TAO_SL3_POLICY_FACTORY_H
00017 
00018 #include "ace/config-all.h"
00019 
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 # pragma once
00022 #endif /* ACE_LACKS_PRAGMA_ONCE */
00023 
00024 #include "tao/PI/PI.h"
00025 #include "tao/LocalObject.h"
00026 
00027 #if defined(_MSC_VER)
00028 #pragma warning(push)
00029 #pragma warning(disable:4250)
00030 #endif /* _MSC_VER */
00031 
00032 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00033 
00034 namespace TAO
00035 {
00036   namespace SL3
00037     {
00038 
00039       /**
00040        * @class olicyFactory
00041        *
00042        * @brief SecurityLevel3 PolicyFactory
00043        *
00044        * PolicyFactory for all SecurityLevel3 policies.
00045        */
00046       class PolicyFactory
00047         : public virtual PortableInterceptor::PolicyFactory,
00048           public virtual TAO_Local_RefCounted_Object
00049       {
00050       public:
00051 
00052         /**
00053          * @name Methods Required by the PolicyFactory Interface
00054          *
00055          * These are methods that must be implemented since they are
00056          * pure virtual in the abstract base class.  They are the
00057          * canonical methods required for all PolicyFactory
00058          * sub-classes.
00059          */
00060         //@{
00061 
00062         /// Construct a Test::Policy object as a test.
00063         virtual CORBA::Policy_ptr create_policy (CORBA::PolicyType type,
00064                                                  const CORBA::Any & value);
00065 
00066         //@}
00067 
00068       };
00069 
00070   }  // End SL3 namespace.
00071 }  // End TAO namespace.
00072 
00073 TAO_END_VERSIONED_NAMESPACE_DECL
00074 
00075 #if defined(_MSC_VER)
00076 #pragma warning(pop)
00077 #endif /* _MSC_VER */
00078 
00079 #endif  /* TAO_SL3_POLICY_FACTORY_H */

Generated on Sun Jan 27 16:09:36 2008 for TAO_Security by doxygen 1.3.6