StdAir Logo  1.00.3
C++ Standard Airline IT Object Library
PosChannel.hpp
Go to the documentation of this file.
1 #ifndef __STDAIR_BOM_POSCHANNEL_HPP
2 #define __STDAIR_BOM_POSCHANNEL_HPP
3 
4 // //////////////////////////////////////////////////////////////////////
5 // Import section
6 // //////////////////////////////////////////////////////////////////////
7 // STDAIR
11 
12 // Forward declaration
13 namespace stdair {
14 
19  class PosChannel : public BomAbstract {
20  template <typename BOM> friend class FacBom;
21  template <typename BOM> friend class FacCloneBom;
22  friend class FacBomManager;
23 
24  public:
25  // /////// Type definitions
30 
31  public:
32  // /////////// Display support methods /////////
38  void toStream (std::ostream& ioOut) const {
39  ioOut << toString();
40  }
41 
47  void fromStream (std::istream& ioIn) {
48  }
49 
53  std::string toString() const;
54 
58  const std::string describeKey() const {
59  return _key.toString();
60  }
61 
62  public:
63  // ////////// Getters ////////////
67  const Key_T& getKey() const {
68  return _key;
69  }
70 
74  BomAbstract* const getParent() const {
75  return _parent;
76  }
77 
82  return _holderMap;
83  }
84 
88  const CityCode_T& getPos() const {
89  return _key.getPos();
90  }
91 
95  const ChannelLabel_T& getChannel() const {
96  return _key.getChannel();
97  }
98 
99  protected:
100  // ////////// Constructors and destructors /////////
104  PosChannel (const Key_T&);
105 
109  virtual ~PosChannel();
110 
111  private:
115  PosChannel ();
116 
120  PosChannel (const PosChannel&);
121 
122  protected:
123  // ////////// Attributes /////////
127  Key_T _key;
128 
133 
138 
139  };
140 
141 }
142 #endif // __STDAIR_BOM_POSCHANNEL_HPP
143 
const stdair::HolderMap_T & getHolderMap() const
Definition: PosChannel.hpp:81
Utility class for linking StdAir-based objects.
Handle on the StdAir library context.
Key of point of sale and channel.
std::map< const std::type_info *, BomAbstract * > HolderMap_T
Definition: BomAbstract.hpp:63
Base class for the Business Object Model (BOM) layer.
Definition: BomAbstract.hpp:24
LocationCode_T CityCode_T
const std::string toString() const
void fromStream(std::istream &ioIn)
Definition: PosChannel.hpp:47
const stdair::CityCode_T & getPos() const
BomAbstract * _parent
Definition: PosChannel.hpp:132
virtual ~PosChannel()
Definition: PosChannel.cpp:33
Class representing the actual attributes for a fare point of sale.
Definition: PosChannel.hpp:19
const Key_T & getKey() const
Definition: PosChannel.hpp:67
Base class for Factory layer.
Definition: FacBom.hpp:22
const stdair::ChannelLabel_T & getChannel() const
std::string toString() const
Definition: PosChannel.cpp:37
const std::string describeKey() const
Definition: PosChannel.hpp:58
PosChannelKey Key_T
Definition: PosChannel.hpp:29
void toStream(std::ostream &ioOut) const
Definition: PosChannel.hpp:38
const CityCode_T & getPos() const
Definition: PosChannel.hpp:88
const ChannelLabel_T & getChannel() const
Definition: PosChannel.hpp:95
HolderMap_T _holderMap
Definition: PosChannel.hpp:137
Base class for Factory layer.
Definition: FacCloneBom.hpp:22
BomAbstract *const getParent() const
Definition: PosChannel.hpp:74
std::string ChannelLabel_T