StdAir Logo  0.45.1
C++ Standard Airline IT Object Library
BomJSONExport.hpp
Go to the documentation of this file.
00001 #ifndef __STDAIR_BOM_BOMJSONEXPORT_HPP
00002 #define __STDAIR_BOM_BOMJSONEXPORT_HPP
00003 
00004 // //////////////////////////////////////////////////////////////////////
00005 // Import section
00006 // //////////////////////////////////////////////////////////////////////
00007 // STL
00008 #include <iosfwd>
00009 // Boost Property Tree
00010 #if BOOST_VERSION >= 104100
00011 #include <boost/property_tree/ptree.hpp>
00012 #include <boost/property_tree/json_parser.hpp>
00013 #endif // BOOST_VERSION >= 104100
00014 // StdAir
00015 #include <stdair/bom/BookingClass.hpp>
00016 
00017 #if BOOST_VERSION >= 104100
00018   namespace bpt = boost::property_tree;
00019 #else // BOOST_VERSION >= 104100
00020   namespace bpt {
00021     typedef char ptree;
00022   }
00023 #endif // BOOST_VERSION >= 104100
00024 
00025 namespace stdair {
00026 
00028   class FlightDate;
00029 
00034   class BomJSONExport {
00035   public:
00036     // //////////////// Export support methods /////////////////
00045     static void jsonExport (std::ostream&, const FlightDate&);
00046 
00047   private:
00048     
00049     static void jsonLegDateExport (bpt::ptree&, const FlightDate&);
00050     
00051     static void jsonLegCabinExport (bpt::ptree&, const FlightDate&);
00052 
00053     static void jsonBucketExport (bpt::ptree&, const FlightDate&);
00054 
00055     static void jsonSegmentDateExport (bpt::ptree&, const FlightDate&);
00056 
00057     static void jsonSegmentCabinExport (bpt::ptree&, const FlightDate&);
00058 
00059     static void jsonFareFamilyExport (bpt::ptree&, const FlightDate&);
00060     
00061     static void jsonBookingClassExport (bpt::ptree&,
00062                                         const BookingClass&,
00063                                         const std::string&);
00064 
00065     static void jsonBookingClassExport (bpt::ptree&, const FlightDate&);
00066     
00067   };
00068 
00069 }
00070 #endif // __STDAIR_BOM_BOMJSONEXPORT_HPP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines