Go to the documentation of this file.00001 #ifndef __SIMFQT_CMD_FAREQUOTER_HPP
00002 #define __SIMFQT_CMD_FAREQUOTER_HPP
00003
00004
00005
00006
00007
00008 #include <stdair/stdair_basic_types.hpp>
00009 #include <stdair/bom/TravelSolutionTypes.hpp>
00010
00012 namespace stdair {
00013 class BomRoot;
00014 struct BookingRequestStruct;
00015 struct TravelSolutionStruct;
00016 struct ParsedKey;
00017 class AirportPair;
00018 class PosChannel;
00019 class DatePeriod;
00020 class TimePeriod;
00021 class FareFeatures;
00022 }
00023
00024 namespace SIMFQT {
00025
00029 class FareQuoter {
00032 friend class SIMFQT_Service;
00033
00034 private:
00035
00045 static void priceQuote (const stdair::BookingRequestStruct&,
00046 stdair::TravelSolutionList_T&,
00047 const stdair::BomRoot&);
00048
00060 static void priceQuote (const stdair::BookingRequestStruct&,
00061 stdair::TravelSolutionStruct&,
00062 const stdair::BomRoot&);
00063
00074 static void priceQuote (const stdair::BookingRequestStruct&,
00075 stdair::TravelSolutionStruct&,
00076 const stdair::AirportPair&);
00077
00092 static void priceQuote (const stdair::BookingRequestStruct&,
00093 stdair::TravelSolutionStruct&,
00094 const stdair::DatePeriod&,
00095 const stdair::AirportPair&);
00096
00108 static void priceQuote (const stdair::BookingRequestStruct&,
00109 stdair::TravelSolutionStruct&,
00110 const stdair::PosChannel&);
00111
00126 static void priceQuote (const stdair::BookingRequestStruct&,
00127 stdair::TravelSolutionStruct&,
00128 const stdair::TimePeriod&,
00129 const stdair::PosChannel&);
00130
00148 static void priceQuote (const stdair::BookingRequestStruct&,
00149 stdair::TravelSolutionStruct&,
00150 const stdair::FareFeatures&,
00151 const stdair::PosChannel&,
00152 stdair::FareOptionStruct&);
00153
00157 static void reset ();
00158
00168 static void displayMissingFareRuleMessage (const stdair::BookingRequestStruct&,
00169 stdair::TravelSolutionStruct&);
00170
00178 static stdair::ParsedKey getFirstSPParsedKey (stdair::TravelSolutionStruct&);
00179
00187 static stdair::ParsedKey getLastSPParsedKey (stdair::TravelSolutionStruct&);
00188
00189
00190
00191 private:
00192
00196 FareQuoter();
00197
00201 FareQuoter(const FareQuoter&);
00202
00206 ~FareQuoter();
00207
00208 private:
00209
00212 static bool _atLeastOneAvailableDateRule;
00213
00216 static bool _atLeastOneAvailablePosChannel;
00217
00221 static bool _atLeastOneAvailableTimeRule;
00222
00226 static bool _atLeastOneAvailableFeaturesRule;
00227
00231 static bool _atLeastOneAvailableAirlineClassRule;
00232
00233 };
00234
00235 }
00236 #endif // __SIMFQT_CMD_FAREQUOTER_HPP
00237