public bool makeReservation(string sStartCityCode, string sEndCityCode, DateTime dtFlightDate, PassengerInfo[] passengers, PaymentInfo pInfo)
        {
            Console.WriteLine("Making reservation for {0} to {1} on {2} for {3} Passengers", sStartCityCode, sEndCityCode, dtFlightDate.ToString(), passengers.Count());
            if (DateTime.Compare(dtFlightDate, DateTime.Now) <= 0) return false;

            List<Flight_DAL.Route> lstRoutes;
            bool bStatus = false;
            lock (this)
            {
                lstRoutes = myFlightBLL.getFlightBLLInstance().getFlightsBetweenCities(sStartCityCode, sEndCityCode);
            }
            if (lstRoutes != null)
            {
                Console.WriteLine("Obtained the list of routes. Count - " + lstRoutes.Count);
                Route r = (from ro in lstRoutes
                           where ro.FlightTime.Equals(dtFlightDate.ToString("HH:mm"))
                           select ro).FirstOrDefault();
                if (r != null)
                {
                    Console.WriteLine("Obtained the route information");
                    List<Passenger> lstPassengers = getPassengerList(passengers);
                    string sReservationID;
                    lock (this)
                    {

                        sReservationID = myFlightBLL.getFlightBLLInstance().reserveFlight(r.RouteID, dtFlightDate, lstPassengers);
                        bStatus = myFlightBLL.getFlightBLLInstance().makePayment(sReservationID, getPaymentDetails(pInfo));
                    }
                }
            }

            return bStatus;   //default value
        }
 private List<Passenger> getPassengerList(PassengerInfo[] passengers)
 {
     List<Passenger> lstPassenger = new List<Passenger>();
     Passenger p;
     foreach (PassengerInfo pInfo in passengers)
     {
         p = new Passenger();
         p.PassengerName = pInfo.PassengerName;
         p.PassportNo = pInfo.PassportNo;
         p.ExpiryDate = pInfo.ExpiryDate;
         lstPassenger.Add(p);
     }
     return lstPassenger;
 }