32 const std::string& iFullKeyStr) {
41 return oInventory_ptr;
47 const std::string& iFullKeyStr) {
57 BomManager::getObjectPtr<Inventory> (iInventory,
59 return oInventory_ptr;
70 return oInventory_ptr;
83 return oInventory_ptr;
95 if (oInventory_ptr == NULL) {
96 return oAirlineFeature_ptr;
98 assert (oInventory_ptr != NULL);
100 oAirlineFeature_ptr =
101 BomManager::getObjectPtr<AirlineFeature,Inventory> (*oInventory_ptr,
104 return oAirlineFeature_ptr;
110 const std::string& iFullKeyStr) {
116 if (oInventory_ptr == NULL) {
117 return oFlightDate_ptr;
119 assert (oInventory_ptr != NULL);
125 oFlightDate_ptr = oInventory_ptr->
getFlightDate (lFlightDateKey);
127 return oFlightDate_ptr;
135 const Date_T& iFlightDateDate) {
141 if (oInventory_ptr == NULL) {
142 return oFlightDate_ptr;
144 assert (oInventory_ptr != NULL);
148 iFlightNumber, iFlightDateDate);
150 return oFlightDate_ptr;
156 const std::string& iFullKeyStr) {
165 return oFlightDate_ptr;
177 return oFlightDate_ptr;
184 const Date_T& iFlightDateDate) {
191 return oFlightDate_ptr;
197 const std::string& iFullKeyStr) {
203 if (oFlightDate_ptr == NULL) {
204 return oSegmentDate_ptr;
206 assert (oFlightDate_ptr != NULL);
212 oSegmentDate_ptr = oFlightDate_ptr->
getSegmentDate (lSegmentDateKey);
214 return oSegmentDate_ptr;
220 const std::string& iFullKeyStr) {
227 return oSegmentDate_ptr;
232 if (lFlightDate_ptr == NULL) {
235 return oSegmentDate_ptr;
240 if (oSegmentDate_ptr == NULL) {
243 return oSegmentDate_ptr;
246 return oSegmentDate_ptr;
252 const std::string& iFullKeyStr) {
261 return oSegmentDate_ptr;
267 const std::string& iFullKeyStr) {
274 oLegDate_ptr = iFlightDate.
getLegDate (lLegDateKey);
282 const std::string& iFullKeyStr) {
296 if (oInventory_ptr != NULL) {
301 return oSegmentDate_ptr;
314 return oSegmentDate_ptr;
328 return oSegmentDate_ptr;
334 const std::string& iFullKeyStr,
341 if (lSegmentDate_ptr == NULL) {
342 return oBookingClass_ptr;
344 assert (lSegmentDate_ptr != NULL);
348 BomManager::getObjectPtr<BookingClass> (*lSegmentDate_ptr, iClassCode);
350 return oBookingClass_ptr;
365 getObjectPtr<AirportPair> (iBomRoot, lAirportPairKey.
toString());
367 return oAirportPair_ptr;
379 BomManager::getList<DatePeriod> (iAirportPair);
382 for (DatePeriodList_T::const_iterator itDateRange =
383 lFareDatePeriodList.begin();
384 itDateRange != lFareDatePeriodList.end(); ++itDateRange) {
386 DatePeriod* lCurrentFareDatePeriod_ptr = *itDateRange ;
387 assert (lCurrentFareDatePeriod_ptr != NULL);
390 const bool isDepartureDateValid =
395 if (isDepartureDateValid ==
true) {
396 ioDatePeriodList.push_back(lCurrentFareDatePeriod_ptr);
414 if (oAirportPair_ptr == NULL) {
417 assert (oAirportPair_ptr != NULL);
428 const bool isForFareFamilies) {
436 if (lInventory_ptr == NULL) {
437 std::ostringstream oStr;
438 oStr <<
"The inventory corresponding to the '"
445 if (isForFareFamilies ==
true) {
450 if (lFlightDate_ptr == NULL) {
451 std::ostringstream oStr;
452 oStr <<
"The flight-date corresponding to ("
462 if (lFlightDate_ptr == NULL) {
463 std::ostringstream oStr;
464 oStr <<
"The flight-date corresponding to ("
470 assert(lFlightDate_ptr != NULL);
477 if (lLegDate_ptr == NULL) {
478 std::ostringstream oStr;
479 oStr <<
"The leg-date corresponding to the '"
486 oLegCabin_ptr = lLegDate_ptr->
getLegCabin (lLegCabinKey);
488 if (oLegCabin_ptr == NULL) {
489 std::ostringstream oStr;
490 oStr <<
"The leg-cabin corresponding to the '"
495 assert (oLegCabin_ptr != NULL);
496 return *oLegCabin_ptr;
503 const bool isForFareFamilies) {
511 if (lInventory_ptr == NULL) {
512 std::ostringstream oStr;
513 oStr <<
"The inventory corresponding to the '"
520 if (isForFareFamilies ==
true) {
525 if (lFlightDate_ptr == NULL) {
526 std::ostringstream oStr;
527 oStr <<
"The flight-date corresponding to ("
537 if (lFlightDate_ptr == NULL) {
538 std::ostringstream oStr;
539 oStr <<
"The flight-date corresponding to ("
545 assert(lFlightDate_ptr != NULL);
552 if (lSegmentDate_ptr == NULL) {
553 std::ostringstream oStr;
554 oStr <<
"The segment-date corresponding to the '"
563 BomManager::getObjectPtr<SegmentCabin> (*lSegmentDate_ptr, lSegmentCabinKey.
toString());
565 if (oSegmentCabin_ptr == NULL) {
566 std::ostringstream oStr;
567 oStr <<
"The segment-cabin corresponding to the '"
572 assert (oSegmentCabin_ptr != NULL);
573 return *oSegmentCabin_ptr;
580 std::ostringstream lFullKeyStr;
584 BomManager::getParentPtr<FlightDate>(iSegmentdate);
585 if (lFlightDate_ptr == NULL) {
586 return lFullKeyStr.str();
588 assert (lFlightDate_ptr != NULL);
592 BomManager::getParentPtr<Inventory> (*lFlightDate_ptr);
593 if (lInventory_ptr == NULL) {
594 return lFullKeyStr.str();
596 assert (lInventory_ptr != NULL);
600 lFullKeyStr << lFlightDate_ptr->describeKey()
604 return lFullKeyStr.str();