ProcessingModePolicy.h

Go to the documentation of this file.
00001 /* -*- C++ -*- */
00002 //=============================================================================
00003 /**
00004  *  @file   ProcessingModePolicy.h
00005  *
00006  *  ProcessingModePolicy.h,v 1.5 2006/03/10 07:19:12 jtc Exp
00007  *
00008  *  @author Tim Bradley (bradley_t@ociweb.com)
00009  */
00010 //=============================================================================
00011 
00012 #ifndef TAO_PROCESSING_MODE_POLICY_H
00013 #define TAO_PROCESSING_MODE_POLICY_H
00014 
00015 #include /**/ "ace/pre.h"
00016 
00017 #include "tao/orbconf.h"
00018 
00019 #if TAO_HAS_INTERCEPTORS == 1
00020 
00021 #include "tao/PI/pi_export.h"
00022 
00023 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00024 # pragma once
00025 #endif /* ACE_LACKS_PRAGMA_ONCE */
00026 
00027 #include "tao/LocalObject.h"
00028 #include "tao/PI/ProcessingModePolicyC.h"
00029 
00030 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00031 
00032 /**
00033  * @class TAO_ProcessingModePolicy
00034  *
00035  * @brief Implementation class for Portable Interceptor ProcessingModePolicy.
00036  *
00037  * This policy is used to specify which kinds of requests (collocated vs.
00038  * remote) should (or should not) cause a Portable Interceptor to be used.
00039  */
00040 
00041 class TAO_PI_Export TAO_ProcessingModePolicy
00042   : public PortableInterceptor::ProcessingModePolicy,
00043     public TAO_Local_RefCounted_Object
00044 {
00045 public:
00046   /// Constructor.
00047   TAO_ProcessingModePolicy (PortableInterceptor::ProcessingMode mode);
00048 
00049   virtual PortableInterceptor::ProcessingMode processing_mode
00050                                         (ACE_ENV_SINGLE_ARG_DECL)
00051     ACE_THROW_SPEC ((CORBA::SystemException));
00052 
00053   virtual CORBA::PolicyType policy_type (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
00054     ACE_THROW_SPEC ((CORBA::SystemException));
00055 
00056   virtual CORBA::Policy_ptr copy (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
00057     ACE_THROW_SPEC ((CORBA::SystemException));
00058 
00059   virtual void destroy (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS)
00060     ACE_THROW_SPEC ((CORBA::SystemException));
00061 
00062 private:
00063   /// The attribute
00064   PortableInterceptor::ProcessingMode processing_mode_;
00065 };
00066 
00067 TAO_END_VERSIONED_NAMESPACE_DECL
00068 
00069 #endif  /* TAO_HAS_INTERCEPTORS == 1 */
00070 
00071 #include /**/ "ace/post.h"
00072 #endif /* TAO_PROCESSING_MODE_POLICY_H */

Generated on Thu Nov 9 12:51:39 2006 for TAO_PI by doxygen 1.3.6