Merge pull request #2309 from mitza-oci/warnings
[ACE_TAO.git] / TAO / tao / IORInterceptor / IORInterceptor_Adapter_Impl.h
blob8d93549faa6d1dca5ff5012d86c32690ab7a0e15
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file IORInterceptor_Adapter_Impl.h
7 * @author Jeff Parsons <parsons@cs.wustl.edu>
8 */
9 //=============================================================================
12 #ifndef TAO_IORINTERCEPTOR_ADAPTER_IMPL_H
13 #define TAO_IORINTERCEPTOR_ADAPTER_IMPL_H
15 #include /**/ "ace/pre.h"
17 #include "tao/IORInterceptor/iorinterceptor_export.h"
19 #if !defined (ACE_LACKS_PRAGMA_ONCE)
20 # pragma once
21 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 #include "tao/IORInterceptor/IORInterceptor.h"
24 #include "tao/IORInterceptor_Adapter.h"
25 #include "tao/PI/Interceptor_List_T.h"
26 #include "tao/IORInterceptor/IORInterceptor_Details.h"
28 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
30 namespace TAO
32 typedef Interceptor_List< ::PortableInterceptor::IORInterceptor,
33 IORInterceptor_Details>
34 IORInterceptor_List;
37 class TAO_Root_POA;
39 /**
40 * @class TAO_IORInterceptor_Adapter_Impl
42 * @brief TAO_IORInterceptor_Adapter_Impl.
44 * Class that adapts various functions involving the PortableInterceptor
45 * interfaces IORInfo and IORInterceptor. This is the derived class
46 * that contains the actual implementations.
48 class TAO_IORInterceptor_Adapter_Impl
49 : public TAO_IORInterceptor_Adapter
51 public:
52 virtual ~TAO_IORInterceptor_Adapter_Impl ();
54 virtual void add_interceptor (
55 PortableInterceptor::IORInterceptor_ptr interceptor);
57 virtual void add_interceptor (
58 PortableInterceptor::IORInterceptor_ptr interceptor,
59 const CORBA::PolicyList& policies);
61 virtual void destroy_interceptors ();
63 virtual void establish_components (TAO_Root_POA *poa );
65 /// Call the IORInterceptor::components_established() method on all
66 /// registered IORInterceptors.
67 virtual void components_established (PortableInterceptor::IORInfo_ptr info);
69 virtual void adapter_state_changed (
70 const TAO::ObjectReferenceTemplate_Array &array_obj_ref_template,
71 PortableInterceptor::AdapterState state);
73 virtual void adapter_manager_state_changed (
74 const char * id,
75 PortableInterceptor::AdapterState state);
77 private:
78 /// List of IOR interceptors maintained
79 TAO::IORInterceptor_List ior_interceptor_list_;
82 TAO_END_VERSIONED_NAMESPACE_DECL
84 #include /**/ "ace/post.h"
86 #endif /* TAO_IORINTERCEPTOR_ADAPTER_IMPL_H */