StdAir Logo  0.45.1
C++ Standard Airline IT Object Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
stdair::BomRetriever Class Reference

Utility class to retrieve StdAir objects. More...

#include <stdair/bom/BomRetriever.hpp>

Static Public Member Functions

static InventoryretrieveInventoryFromLongKey (const BomRoot &, const std::string &iFullKeyStr)
static InventoryretrieveInventoryFromKey (const BomRoot &, const InventoryKey &)
static InventoryretrieveInventoryFromKey (const BomRoot &, const AirlineCode_T &)
static FlightDateretrieveFlightDateFromLongKey (const BomRoot &, const std::string &iFullKeyStr)
static FlightDateretrieveFlightDateFromKeySet (const BomRoot &, const AirlineCode_T &, const FlightNumber_T &, const Date_T &iFlightDateDate)
static FlightDateretrieveFlightDateFromLongKey (const Inventory &, const std::string &iFullKeyStr)
static FlightDateretrieveFlightDateFromKey (const Inventory &, const FlightDateKey &)
static FlightDateretrieveFlightDateFromKey (const Inventory &, const FlightNumber_T &, const Date_T &iFlightDateDate)
static SegmentDateretrieveSegmentDateFromLongKey (const BomRoot &, const std::string &iFullKeyStr)
static SegmentDateretrieveSegmentDateFromLongKey (const Inventory &, const std::string &iFullKeyStr)
static SegmentDateretrieveSegmentDateFromLongKey (const FlightDate &, const std::string &iFullKeyStr)
static SegmentDateretrieveSegmentDateFromKey (const FlightDate &, const SegmentDateKey &)
static SegmentDateretrieveSegmentDateFromKey (const FlightDate &, const AirportCode_T &iOrigin, const AirportCode_T &iDestination)
static BookingClassretrieveBookingClassFromLongKey (const Inventory &, const std::string &iFullKeyStr, const ClassCode_T &)
static AirportPairretrieveAirportPairFromKeySet (const BomRoot &, const stdair::AirportCode_T &, const stdair::AirportCode_T &)
static void retrieveDatePeriodListFromKey (const AirportPair &, const stdair::Date_T &, stdair::DatePeriodList_T &)
static void retrieveDatePeriodListFromKeySet (const BomRoot &, const stdair::AirportCode_T &, const stdair::AirportCode_T &, const stdair::Date_T &, stdair::DatePeriodList_T &)
static stdair::LegCabinretrieveDummyLegCabin (stdair::BomRoot &)
static stdair::SegmentCabinretrieveDummySegmentCabin (stdair::BomRoot &)

Detailed Description

Utility class to retrieve StdAir objects.

Definition at line 35 of file BomRetriever.hpp.

Member Function Documentation

Inventory * stdair::BomRetriever::retrieveInventoryFromLongKey ( const BomRoot iBomRoot,
const std::string &  iFullKeyStr 
)
static

Retrieve an Inventory object from a (full) key string.

The full key string gathers airline code, flight number, origin and destination, cabin and booking class. It corresponds to the output generated by the toString() methods of the XxxKey structures.

Parameters
constBomRoot& The root of the BOM tree.
conststd::string& The full key string.
Returns
Inventory* The just retrieved Inventory object.

Definition at line 29 of file BomRetriever.cpp.

References stdair::BomKeyManager::extractInventoryKey(), and stdair::BomRoot::getInventory().

Referenced by retrieveFlightDateFromLongKey().

Inventory * stdair::BomRetriever::retrieveInventoryFromKey ( const BomRoot iBomRoot,
const InventoryKey iKey 
)
static

Retrieve an Inventory object from an InventoryKey structure.

Parameters
constBomRoot& The root of the BOM tree.
constInventoryKey& The key.
Returns
Inventory* The just retrieved Inventory object.

Definition at line 43 of file BomRetriever.cpp.

References stdair::BomRoot::getInventory().

Referenced by retrieveDummyLegCabin(), retrieveDummySegmentCabin(), and retrieveFlightDateFromKeySet().

Inventory * stdair::BomRetriever::retrieveInventoryFromKey ( const BomRoot iBomRoot,
const AirlineCode_T iAirlineCode 
)
static

Retrieve an Inventory object from an InventoryKey structure.

Parameters
constBomRoot& The root of the BOM tree.
constAirlineCode_T& The key.
Returns
Inventory* The just retrieved Inventory object.

Definition at line 55 of file BomRetriever.cpp.

References stdair::BomRoot::getInventory().

FlightDate * stdair::BomRetriever::retrieveFlightDateFromLongKey ( const BomRoot iBomRoot,
const std::string &  iFullKeyStr 
)
static

Retrieve a FlightDate object from a (full) key string.

The full key string gathers airline code, flight number, origin and destination, cabin and booking class. It corresponds to the output generated by the toString() methods of the XxxKey structures.

Parameters
constBomRoot& The root of the BOM tree.
conststd::string& The full key string.
Returns
FlightDate* The just retrieved FlightDate object.

Definition at line 68 of file BomRetriever.cpp.

References stdair::BomKeyManager::extractFlightDateKey(), stdair::Inventory::getFlightDate(), and retrieveInventoryFromLongKey().

Referenced by retrieveSegmentDateFromLongKey().

FlightDate * stdair::BomRetriever::retrieveFlightDateFromKeySet ( const BomRoot iBomRoot,
const AirlineCode_T iAirlineCode,
const FlightNumber_T iFlightNumber,
const Date_T iFlightDateDate 
)
static

Retrieve a FlightDate object from a set of keys.

Parameters
constBomRoot& The root of the BOM tree.
constAirlineCode_T& The key.
constFlightNumber_T& Part of the key.
constDate_T& Part of the key.
Returns
FlightDate* The just retrieved FlightDate object.

Definition at line 91 of file BomRetriever.cpp.

References retrieveFlightDateFromKey(), and retrieveInventoryFromKey().

Referenced by stdair::STDAIR_Service::check(), stdair::STDAIR_Service::csvDisplay(), and stdair::STDAIR_Service::jsonExport().

FlightDate * stdair::BomRetriever::retrieveFlightDateFromLongKey ( const Inventory iInventory,
const std::string &  iFullKeyStr 
)
static

Retrieve a FlightDate object from a (full) key string.

The full key string gathers airline code, flight number, origin and destination, cabin and booking class. It corresponds to the output generated by the toString() methods of the XxxKey structures.

Parameters
constInventory& The root of the BOM tree.
conststd::string& The full key string.
Returns
FlightDate* The just retrieved FlightDate object.

Definition at line 114 of file BomRetriever.cpp.

References stdair::BomKeyManager::extractFlightDateKey(), and stdair::Inventory::getFlightDate().

FlightDate * stdair::BomRetriever::retrieveFlightDateFromKey ( const Inventory iInventory,
const FlightDateKey iKey 
)
static

Retrieve a FlightDate object from an FlightDateKey structure.

Parameters
constInventory& The root of the BOM tree.
constFlightDateKey& The key.
Returns
FlightDate* The just retrieved FlightDate object.

Definition at line 129 of file BomRetriever.cpp.

References stdair::Inventory::getFlightDate().

Referenced by retrieveDummyLegCabin(), retrieveDummySegmentCabin(), retrieveFlightDateFromKeySet(), and retrieveSegmentDateFromLongKey().

FlightDate * stdair::BomRetriever::retrieveFlightDateFromKey ( const Inventory iInventory,
const FlightNumber_T iFlightNumber,
const Date_T iFlightDateDate 
)
static

Retrieve a FlightDate object from an FlightDateKey structure.

Parameters
constInventory& The root of the BOM tree.
constFlightNumber_T& Part of the key.
constDate_T& Part of the key.
Returns
FlightDate* The just retrieved FlightDate object.

Definition at line 141 of file BomRetriever.cpp.

References stdair::Inventory::getFlightDate().

SegmentDate * stdair::BomRetriever::retrieveSegmentDateFromLongKey ( const BomRoot iBomRoot,
const std::string &  iFullKeyStr 
)
static

Retrieve a SegmentDate object from a (full) key string.

The full key string gathers airline code, segment number, origin and destination, cabin and booking class. It corresponds to the output generated by the toString() methods of the XxxKey structures.

Parameters
constBomRoot& The root of the BOM tree.
conststd::string& The full key string.
Returns
SegmentDate* The just retrieved SegmentDate object.

Definition at line 155 of file BomRetriever.cpp.

References stdair::BomKeyManager::extractSegmentDateKey(), stdair::FlightDate::getSegmentDate(), and retrieveFlightDateFromLongKey().

Referenced by retrieveBookingClassFromLongKey().

SegmentDate * stdair::BomRetriever::retrieveSegmentDateFromLongKey ( const Inventory iInventory,
const std::string &  iFullKeyStr 
)
static

Retrieve a SegmentDate object from a (full) key string.

The full key string gathers airline code, segment number, origin and destination, cabin and booking class. It corresponds to the output generated by the toString() methods of the XxxKey structures.

Parameters
constInventory& The root of the BOM tree.
conststd::string& The full key string.
Returns
SegmentDate* The just retrieved SegmentDate object.

Definition at line 178 of file BomRetriever.cpp.

References stdair::ParsedKey::_airlineCode, stdair::BomKeyManager::extractKeys(), stdair::Inventory::getAirlineCode(), stdair::ParsedKey::getFlightDateKey(), stdair::ParsedKey::getSegmentKey(), retrieveFlightDateFromKey(), retrieveSegmentDateFromKey(), STDAIR_LOG_DEBUG, stdair::SegmentDateKey::toString(), and stdair::FlightDateKey::toString().

SegmentDate * stdair::BomRetriever::retrieveSegmentDateFromLongKey ( const FlightDate iFlightDate,
const std::string &  iFullKeyStr 
)
static

Retrieve a SegmentDate object from a (full) key string.

The full key string gathers airline code, segment number, origin and destination, cabin and booking class. It corresponds to the output generated by the toString() methods of the XxxKey structures.

Parameters
constFlightDate& The root of the BOM tree.
conststd::string& The full key string.
Returns
SegmentDate* The just retrieved SegmentDate object.

Definition at line 210 of file BomRetriever.cpp.

References stdair::BomKeyManager::extractSegmentDateKey(), and stdair::FlightDate::getSegmentDate().

SegmentDate * stdair::BomRetriever::retrieveSegmentDateFromKey ( const FlightDate iFlightDate,
const SegmentDateKey iKey 
)
static

Retrieve a SegmentDate object from an SegmentDateKey structure.

Parameters
constFlightDate& The root of the BOM tree.
constSegmentDateKey& The key.
Returns
SegmentDate* The just retrieved SegmentDate object.

Definition at line 225 of file BomRetriever.cpp.

References stdair::FlightDate::getSegmentDate().

Referenced by retrieveSegmentDateFromLongKey().

SegmentDate * stdair::BomRetriever::retrieveSegmentDateFromKey ( const FlightDate iFlightDate,
const AirportCode_T iOrigin,
const AirportCode_T iDestination 
)
static

Retrieve a SegmentDate object from an SegmentDateKey structure.

Parameters
constFlightDate& The root of the BOM tree.
constAirportCode_T& Origin, part of the key.
constAirportCode_T& Destination, part of the key.
Returns
SegmentDate* The just retrieved SegmentDate object.

Definition at line 237 of file BomRetriever.cpp.

References stdair::FlightDate::getSegmentDate().

BookingClass * stdair::BomRetriever::retrieveBookingClassFromLongKey ( const Inventory iInventory,
const std::string &  iFullKeyStr,
const ClassCode_T iClassCode 
)
static

Retrieve a BookingClass object from a (full) key string.

The full key string gathers airline code, segment number, origin and destination, cabin and booking class. It corresponds to the output generated by the toString() methods of the XxxKey structures.

Besides being attached to segment-cabin objects (and fare family objects, when they exist), the booking-class objects must also be attached directly to the segment-date.

Hence, if an assertion fails within that method call, chances are that the booking-class objects have not been attached to the segment-date objects. Check, for instance, the CmdBomManager::buildSampleBom() to see how that should be properly done.

Parameters
constInventory& The root of the BOM tree.
conststd::string& Part of the full key string.
constClassCode_T& Part of the full key string.
Returns
BookingClass* The just retrieved BookingClass object.

Definition at line 251 of file BomRetriever.cpp.

References retrieveSegmentDateFromLongKey().

AirportPair * stdair::BomRetriever::retrieveAirportPairFromKeySet ( const BomRoot iBomRoot,
const stdair::AirportCode_T iOrigin,
const stdair::AirportCode_T iDestination 
)
static

Retrieve an AirportPair object from an AirportPair structure.

Parameters
constBomRoot& The root of the BOM tree.
constAirportCode_T& Origin, part of the key.
constAirportCode_T& Destination, part of the key.
Returns
AirportPair* The just retrieved AirportPair object.

Definition at line 273 of file BomRetriever.cpp.

References stdair::AirportPairKey::toString().

Referenced by retrieveDatePeriodListFromKeySet().

void stdair::BomRetriever::retrieveDatePeriodListFromKey ( const AirportPair iAirportPair,
const stdair::Date_T iDepartureDate,
stdair::DatePeriodList_T ioDatePeriodList 
)
static

Retrieve a list of date-period corresponding to a flight date.

Parameters
constAirportPair& The root of the BOM tree.
constDate_T& Departure Date of the flight
stdair::DatePeriodList_T&List of DatePeriod to display.

Definition at line 291 of file BomRetriever.cpp.

References stdair::DatePeriod::isDepartureDateValid().

Referenced by retrieveDatePeriodListFromKeySet().

void stdair::BomRetriever::retrieveDatePeriodListFromKeySet ( const BomRoot iBomRoot,
const stdair::AirportCode_T iOrigin,
const stdair::AirportCode_T iDestination,
const stdair::Date_T iDepartureDate,
stdair::DatePeriodList_T ioDatePeriodList 
)
static

Retrieve a list of date-period from a set of keys.

Parameters
constBomRoot& The root of the BOM tree.
constAirportCode_T& Part of the AirportPair key: the origin airport
constAirportCode_T& Part of the AirportPair key: the destination airport.
constDate_T& Departure date of the flight
stdair::DatePeriodList_T&List of DatePeriod to display.

Definition at line 322 of file BomRetriever.cpp.

References retrieveAirportPairFromKeySet(), and retrieveDatePeriodListFromKey().

Referenced by stdair::STDAIR_Service::check(), and stdair::STDAIR_Service::csvDisplay().

LegCabin & stdair::BomRetriever::retrieveDummyLegCabin ( stdair::BomRoot iBomRoot)
static
SegmentCabin & stdair::BomRetriever::retrieveDummySegmentCabin ( stdair::BomRoot iBomRoot)
static

The documentation for this class was generated from the following files: