OpenTREP Logo  0.07.18
C++ Open Travel Request Parsing Library
Loading...
Searching...
No Matches
FacSupervisor.hpp
Go to the documentation of this file.
1#ifndef __OPENTREP_FAC_FACSUPERVISOR_HPP
2#define __OPENTREP_FAC_FACSUPERVISOR_HPP
3
4// //////////////////////////////////////////////////////////////////////
5// Import section
6// //////////////////////////////////////////////////////////////////////
7// STL
8#include <vector>
9
10namespace OPENTREP {
11
12 // Forward declarations
13 class FacBomAbstract;
15 class FacXapianDB;
16 class Logger;
17
22 public:
23
27 typedef std::vector<FacBomAbstract*> BomFactoryPool_T;
28 typedef std::vector<FacServiceAbstract*> ServiceFactoryPool_T;
29
35 static FacSupervisor& instance();
36
45
53
64
75
81 void cleanBomLayer();
82
88 void cleanServiceLayer();
89
93 void cleanFacXapianDB();
94
98 void cleanLoggerService();
99
104 static void cleanFactory ();
105
112
113 protected:
119 FacSupervisor ();
121
122
123 private:
127 static FacSupervisor* _instance;
128
132 FacXapianDB* _facXapianDB;
133
137 Logger* _logger;
138
142 BomFactoryPool_T _bomPool;
143
147 ServiceFactoryPool_T _svcPool;
148 };
149}
150#endif // __OPENTREP_FAC_FACSUPERVISOR_HPP
std::vector< FacServiceAbstract * > ServiceFactoryPool_T
static FacSupervisor & instance()
std::vector< FacBomAbstract * > BomFactoryPool_T
void registerXapianDBFactory(FacXapianDB *)
void registerBomFactory(FacBomAbstract *)
void registerServiceFactory(FacServiceAbstract *)
FacSupervisor(const FacSupervisor &)
void registerLoggerService(Logger *)
Factory for a Xapian WritableDatabase object.