StdAir Logo  1.00.8
C++ Standard Airline IT Object Library
FacSupervisor.hpp
Go to the documentation of this file.
1 #ifndef __STDAIR_SVC_FACSUPERVISOR_HPP
2 #define __STDAIR_SVC_FACSUPERVISOR_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <iosfwd>
9 #include <list>
10 
11 namespace stdair {
12 
14  class FacAbstract;
15  class FacServiceAbstract;
16 
20  class FacSupervisor {
21  public:
25  typedef std::list<FacAbstract*> PersistentBomFactoryPool_T;
26  typedef std::list<FacAbstract*> CloneBomFactoryPool_T;
27  typedef std::list<FacServiceAbstract*> ServiceFactoryPool_T;
28 
35  static FacSupervisor& instance();
36 
45 
54 
63 
71 
78  void cleanCloneBomLayer();
79 
86  void cleanServiceLayer();
87 
91  static void cleanLoggerService();
92 
96  static void cleanDBSessionManager();
97 
103  static void cleanAll();
104 
111  ~FacSupervisor();
112 
113 
114  protected:
122 
123  private:
127  static FacSupervisor* _instance;
128 
132  PersistentBomFactoryPool_T _persistentBomPool;
133 
137  CloneBomFactoryPool_T _cloneBomPool;
138 
142  ServiceFactoryPool_T _svcPool;
143 
144  };
145 }
146 #endif // __STDAIR_SVC_FACSUPERVISOR_HPP
stdair::FacSupervisor::cleanCloneBomLayer
void cleanCloneBomLayer()
Definition: FacSupervisor.cpp:62
stdair::FacSupervisor::FacSupervisor
FacSupervisor()
Definition: FacSupervisor.hpp:120
stdair::FacSupervisor::instance
static FacSupervisor & instance()
Definition: FacSupervisor.cpp:18
stdair::FacServiceAbstract
Definition: FacServiceAbstract.hpp:16
stdair::FacSupervisor::CloneBomFactoryPool_T
std::list< FacAbstract * > CloneBomFactoryPool_T
Definition: FacSupervisor.hpp:26
stdair::FacSupervisor::registerCloneBomFactory
void registerCloneBomFactory(FacAbstract *)
Definition: FacSupervisor.cpp:39
stdair::FacSupervisor::cleanLoggerService
static void cleanLoggerService()
Definition: FacSupervisor.cpp:90
stdair::FacSupervisor::registerPersistentBomFactory
void registerPersistentBomFactory(FacAbstract *)
Definition: FacSupervisor.cpp:34
stdair::FacSupervisor::PersistentBomFactoryPool_T
std::list< FacAbstract * > PersistentBomFactoryPool_T
Definition: FacSupervisor.hpp:25
stdair::FacSupervisor
Definition: FacSupervisor.hpp:20
stdair::FacSupervisor::cleanDBSessionManager
static void cleanDBSessionManager()
Definition: FacSupervisor.cpp:96
stdair::FacSupervisor::ServiceFactoryPool_T
std::list< FacServiceAbstract * > ServiceFactoryPool_T
Definition: FacSupervisor.hpp:27
stdair::FacSupervisor::registerServiceFactory
void registerServiceFactory(FacServiceAbstract *)
Definition: FacSupervisor.cpp:44
stdair
Handle on the StdAir library context.
Definition: BasChronometer.cpp:9
stdair::FacAbstract
Definition: FacAbstract.hpp:10
stdair::FacSupervisor::FacSupervisor
FacSupervisor(const FacSupervisor &)
Definition: FacSupervisor.hpp:121
stdair::FacSupervisor::cleanServiceLayer
void cleanServiceLayer()
Definition: FacSupervisor.cpp:76
stdair::FacSupervisor::cleanAll
static void cleanAll()
Definition: FacSupervisor.cpp:102
stdair::FacSupervisor::~FacSupervisor
~FacSupervisor()
Definition: FacSupervisor.cpp:27
stdair::FacSupervisor::cleanPersistentBomLayer
void cleanPersistentBomLayer()
Definition: FacSupervisor.cpp:49