Beispiel #1
0
 /**
  * @param ReservationSeries $reservationSeries
  * @param IReservationSaveResultsView $view
  * @return bool if the reservation was handled or not
  */
 public function Handle(ReservationSeries $reservationSeries, IReservationSaveResultsView $view)
 {
     $validationResult = $this->validationService->Validate($reservationSeries);
     $result = $validationResult->CanBeSaved();
     if ($validationResult->CanBeSaved()) {
         try {
             $this->persistenceService->Persist($reservationSeries);
         } catch (Exception $ex) {
             Log::Error('Error saving reservation: %s', $ex);
             throw $ex;
         }
         $this->notificationService->Notify($reservationSeries);
         $view->SetSaveSuccessfulMessage($result);
     } else {
         $view->SetSaveSuccessfulMessage($result);
         $view->SetErrors($validationResult->GetErrors());
     }
     $view->SetWarnings($validationResult->GetWarnings());
     return $result;
 }
 /**
  * @param $reservationSeries ReservationSeries|ExistingReservationSeries
  * @return void
  */
 public function Notify($reservationSeries)
 {
     // implement any custom post reservation created logic here
     // then let the main application continue
     $this->base->Notify($reservationSeries);
 }