/*
  * Updates properties of a given EveningMeal.
  */
 public void UpdateEveningMeal(BookingDecorator reference,
                               String newDietRequirements)
 {
     CurrentBook = CurrentBook.Undecorate(reference);
     CurrentBook = bFact.AddEveningMeal(CurrentBook,
                                        newDietRequirements);
 }
 /*
  * Updates properties of a given Breakfast.
  */
 public void UpdateBreakfast(BookingDecorator reference,
                             String newDietRequirements)
 {
     CurrentBook = CurrentBook.Undecorate(reference);
     CurrentBook = bFact.AddBreakfast(CurrentBook,
                                      newDietRequirements);
 }
        /*
         * Removes the selected extra from the booking.
         */
        public void RemoveExtra(int index)
        {
            List <BookingDecorator> references = GetCurrentExtras();

            if (references != null)
            {
                CurrentBook = CurrentBook.Undecorate(
                    references.ElementAt(index));
            }
        }
 /*
  * Updates properties of a given CarHire.
  */
 public void UpdateCarHire(BookingDecorator reference,
                           String newDriverName,
                           DateTime newStart,
                           DateTime newEnd)
 {
     CurrentBook = CurrentBook.Undecorate(reference);
     CurrentBook = bFact.AddCarHire(CurrentBook,
                                    newDriverName,
                                    newStart,
                                    newEnd);
 }