1 #ifndef __AIRINV_SVC_AIRINV_SERVICE_HPP
2 #define __AIRINV_SVC_AIRINV_SERVICE_HPP
10 #include <stdair/stdair_basic_types.hpp>
11 #include <stdair/stdair_service_types.hpp>
12 #include <stdair/basic/JSonCommand.hpp>
13 #include <stdair/bom/RMEventTypes.hpp>
14 #include <stdair/bom/BomIDTypes.hpp>
16 #include <airrac/AIRRAC_Types.hpp>
18 #include <sevmgr/SEVMGR_Types.hpp>
22 class AirlineFeatureSet;
26 struct TravelSolutionStruct;
34 class AIRINV_ServiceContext;
58 AIRINV_Service (
const stdair::BasLogParams&,
const stdair::BasDBParams&);
107 SEVMGR::SEVMGR_ServicePtr_T);
132 const stdair::ODFilePath&,
133 const stdair::FRAT5FilePath&,
134 const stdair::FFDisutilityFilePath&,
135 const AIRRAC::YieldFilePath&);
171 stdair::RMEventList_T
initRMEvents (
const stdair::Date_T& iStartDate,
172 const stdair::Date_T& iEndDate);
187 bool sell (
const std::string& iSegmentDateKey,
const stdair::ClassCode_T&,
188 const stdair::PartySize_T&);
197 bool sell (
const stdair::BookingClassID_T&,
const stdair::PartySize_T&);
208 bool cancel (
const std::string& iSegmentDateKey,
const stdair::ClassCode_T&,
209 const stdair::PartySize_T&);
218 bool cancel (
const stdair::BookingClassID_T&,
const stdair::PartySize_T&);
224 const stdair::DateTime_T&);
229 void optimise (
const stdair::AirlineCode_T&,
230 const stdair::KeyDescription_T&,
231 const stdair::DateTime_T&);
245 std::string
jsonHandler (
const stdair::JSONString&)
const;
260 const stdair::FlightNumber_T& iFlightNumber = 0)
const;
272 const stdair::FlightNumber_T&,
273 const stdair::Date_T& iDepartureDate)
const;
290 std::string
list (
const stdair::AirlineCode_T& iAirlineCode =
"all",
291 const stdair::FlightNumber_T& iFlightNumber = 0)
const;
302 bool check (
const stdair::AirlineCode_T&,
const stdair::FlightNumber_T&,
303 const stdair::Date_T& iDepartureDate)
const;
325 std::string
csvDisplay (
const stdair::AirlineCode_T&,
326 const stdair::FlightNumber_T&,
327 const stdair::Date_T& iDepartureDate)
const;
351 stdair::STDAIR_ServicePtr_T initStdAirService (
const stdair::BasLogParams&,
352 const stdair::BasDBParams&);
362 stdair::STDAIR_ServicePtr_T initStdAirService (
const stdair::BasLogParams&);
367 void initRMOLService();
372 void initAIRRACService();
377 void initSEVMGRService();
387 void addStdAirService (stdair::STDAIR_ServicePtr_T,
388 const bool iOwnStdairService);
395 void addSEVMGRService (SEVMGR::SEVMGR_ServicePtr_T,
396 const bool iOwnSEVMGRService);
402 void initServiceContext();
410 void initAirinvService();
426 #endif // __AIRINV_SVC_AIRINV_SERVICE_HPP