SimFQT Logo  1.00.0
C++ Simulated Fare Quote System Library
 All Classes Namespaces Files Functions Variables Typedefs Friends Pages
SIMFQT_ServiceContext.hpp
Go to the documentation of this file.
1 #ifndef __SIMFQT_SVC_SIMFQTSERVICECONTEXT_HPP
2 #define __SIMFQT_SVC_SIMFQTSERVICECONTEXT_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STL
8 #include <string>
9 // StdAir
10 #include <stdair/stdair_service_types.hpp>
11 #include <stdair/service/ServiceAbstract.hpp>
12 // SimFQT
13 #include <simfqt/SIMFQT_Types.hpp>
14 
16 namespace stdair {
17  class STDAIR_Service;
18 }
19 
20 namespace SIMFQT {
21 
25  class SIMFQT_ServiceContext : public stdair::ServiceAbstract {
31  friend class SIMFQT_Service;
33 
34  private:
35  // ///////// Getters //////////
39  stdair::STDAIR_ServicePtr_T getSTDAIR_ServicePtr() const {
40  return _stdairService;
41  }
42 
46  stdair::STDAIR_Service& getSTDAIR_Service() const;
47 
51  const bool getOwnStdairServiceFlag() const {
52  return _ownStdairService;
53  }
54 
55 
56  private:
57  // ///////// Setters //////////
61  void setSTDAIR_Service (stdair::STDAIR_ServicePtr_T ioSTDAIR_ServicePtr,
62  const bool iOwnStdairService) {
63  _stdairService = ioSTDAIR_ServicePtr;
64  _ownStdairService = iOwnStdairService;
65  }
66 
70  void reset();
71 
72 
73  private:
74  // ///////// Display Methods //////////
78  const std::string shortDisplay() const;
79 
83  const std::string display() const;
84 
88  const std::string describe() const;
89 
90 
91  private:
92  // /////// Construction / initialisation ////////
96  SIMFQT_ServiceContext (const FareQuoteID_T&);
97 
101  SIMFQT_ServiceContext();
102 
106  SIMFQT_ServiceContext (const SIMFQT_ServiceContext&);
107 
111  ~SIMFQT_ServiceContext();
112 
113 
114  private:
115  // ///////////// Children ////////////
119  stdair::STDAIR_ServicePtr_T _stdairService;
120 
124  bool _ownStdairService;
125  };
126 
127 }
128 #endif // __SIMFQT_SVC_SIMFQTSERVICECONTEXT_HPP