Go to the documentation of this file.00001 #ifndef __STDAIR_SVC_STDAIRSERVICECONTEXT_HPP
00002 #define __STDAIR_SVC_STDAIRSERVICECONTEXT_HPP
00003
00004
00005
00006
00007
00008 #include <string>
00009
00010 #include <stdair/stdair_basic_types.hpp>
00011 #include <stdair/basic/BasLogParams.hpp>
00012 #include <stdair/basic/BasDBParams.hpp>
00013 #include <stdair/basic/ServiceInitialisationType.hpp>
00014 #include <stdair/service/ServiceAbstract.hpp>
00015
00016 namespace stdair {
00017
00019 class BomRoot;
00020 class EventQueue;
00021
00025 class STDAIR_ServiceContext : public ServiceAbstract {
00029 friend class STDAIR_Service;
00030 friend class FacSTDAIRServiceContext;
00031
00032 private:
00033
00037 BomRoot& getBomRoot() const;
00038
00042 EventQueue& getEventQueue() const;
00043
00047 const BasDBParams& getDBParams() const {
00048 return _dbParams;
00049 }
00050
00054 const ServiceInitialisationType& getServiceInitialisationType() const {
00055 return _initType;
00056 }
00057
00058
00059 private:
00060
00064 void setDBParams (const BasDBParams& iDBParams) {
00065 _dbParams = iDBParams;
00066 }
00067
00071 void setServiceInitialisationType (const ServiceInitialisationType& iSIT) {
00072 _initType = iSIT;
00073 }
00074
00075
00076 private:
00077
00081 const std::string shortDisplay() const;
00082
00086 const std::string display() const;
00087
00091 const std::string describe() const;
00092
00093
00094 private:
00095
00099 STDAIR_ServiceContext();
00100
00107 STDAIR_ServiceContext (const STDAIR_ServiceContext&);
00108
00112 ~STDAIR_ServiceContext();
00113
00121 void init();
00122
00129 void initBomRoot();
00130
00137 void initEventQueue();
00138
00139
00140 private:
00141
00145 BomRoot* _bomRoot;
00146
00150 EventQueue* _eventQueue;
00151
00155 BasDBParams _dbParams;
00156
00170 ServiceInitialisationType _initType;
00171 };
00172
00173 }
00174 #endif // __STDAIR_SVC_STDAIRSERVICECONTEXT_HPP