public void Insert(TDto dto) { try { WriteActualMethod(); TEntity entity = Converter.ConvertToEntity(dto); Manager.Insert(entity); } catch (InvalidDateRangeException exception) { InvalidDateRangeFault fault = new InvalidDateRangeFault(); fault.Operation = "insert"; fault.ProblemType = exception.Message; throw new FaultException <InvalidDateRangeFault>(fault); } catch (AutoUnavailableException exception) { AutoUnavailableFault fault = new AutoUnavailableFault(); fault.Operation = "insert"; fault.ProblemType = exception.Message; throw new FaultException <AutoUnavailableFault>(fault); } catch (Exception exception) { UnknownFault fault = new UnknownFault(); fault.Operation = "insert"; fault.ProblemType = exception.Message; throw new FaultException <UnknownFault>(fault); } }
public void UpdateReservation(ReservationDto reservationToBeUpdated) { WriteActualMethod(); try { reservationManager.Update(reservationToBeUpdated.ConvertToEntity()); } catch (AutoUnavailableException) { AutoUnavailableFault auf = new AutoUnavailableFault { Operation = "Insert", ProblemType = "Auto is not available during this Time Range!" }; throw new FaultException <AutoUnavailableFault>(auf); } catch (InvalidDateRangeException) { InvalidDateRangeFault idf = new InvalidDateRangeFault { Operation = "Insert", ProblemType = "Date is invalid!" }; throw new FaultException <InvalidDateRangeFault>(idf); } catch (OptimisticConcurrencyException <Reservation> ) { OptimisticConcurrencyFault ocf = new OptimisticConcurrencyFault { Operation = "Update", ProblemType = "Optimstic Cocurrency Error during updating on Reservation!" }; throw new FaultException <OptimisticConcurrencyFault>(ocf); } }
private static void checkForDateRangeException(Reservation res) { DateTime von = res.Von; DateTime bis = res.Bis; DateTime oneDayLater = von.AddDays(1); //von datum muss mindestens 24h vor bis datum sein //es wird implizit gleichzeitig geprüft, dass (von < bis) if (oneDayLater > bis) { InvalidDateRangeFault fault = new InvalidDateRangeFault(); if (bis < von) { fault.Message = vonNachBisMessage; } else { fault.Message = min24hMessage; } fault.Bis = bis; fault.Von = von; throw new FaultException <InvalidDateRangeFault>(fault); } }
public void updateReservation(ReservationDto reservation) { WriteActualMethod(); try { _reservationManager.UpdateReservation(reservation.ConvertToEntity()); } catch (InvalidOperationException) { OutOfRangeFault fault = new OutOfRangeFault { Operation = "update" }; throw new FaultException <OutOfRangeFault>(fault); } catch (DbUpdateConcurrencyException) { ConcurrencyFault fault = new ConcurrencyFault(); throw new FaultException <ConcurrencyFault>(fault); } catch (AutoUnavailableException) { AutoUnavailableFault fault = new AutoUnavailableFault() { Operation = "update" }; throw new FaultException <AutoUnavailableFault>(fault); } catch (InvalidDateRangeException) { InvalidDateRangeFault fault = new InvalidDateRangeFault() { Operation = "update" }; throw new FaultException <InvalidDateRangeFault>(fault); } }
public void InsertReservation(ReservationDto reservationToBeInserted) { WriteActualMethod(); try { reservationManager.Insert(reservationToBeInserted.ConvertToEntity()); } catch (AutoUnavailableException) { AutoUnavailableFault auf = new AutoUnavailableFault { Operation = "Insert", ProblemType = "Auto is not available during this Time Range!" }; throw new FaultException <AutoUnavailableFault>(auf); } catch (InvalidDateRangeException) { InvalidDateRangeFault idf = new InvalidDateRangeFault { Operation = "Insert", ProblemType = "Date is invalid!" }; throw new FaultException <InvalidDateRangeFault>(idf); } }
public void Update(TDto dto) { try { WriteActualMethod(); TEntity entity = Converter.ConvertToEntity(dto); Manager.Update(entity); } catch (InvalidDateRangeException e) { InvalidDateRangeFault fault = new InvalidDateRangeFault(); fault.Operation = "update"; fault.ProblemType = e.Message; throw new FaultException <InvalidDateRangeFault>(fault); } catch (AutoUnavailableException e) { AutoUnavailableFault fault = new AutoUnavailableFault(); fault.Operation = "update"; fault.ProblemType = e.Message; throw new FaultException <AutoUnavailableFault>(fault); } catch (OptimisticConcurrencyException <TEntity> e) { OptimisticConcurrencyFault fault = new OptimisticConcurrencyFault(); fault.Operation = "update"; fault.ProblemType = e.Message; throw new FaultException <OptimisticConcurrencyFault>(fault); } catch (Exception e) { UnknownFault fault = new UnknownFault(); fault.Operation = "update"; fault.ProblemType = e.Message; throw new FaultException <UnknownFault>(fault); } }
public void insertReservation(ReservationDto reservation) { WriteActualMethod(); try { _reservationManager.AddReservation(reservation.ConvertToEntity()); } catch (AutoUnavailableException) { AutoUnavailableFault fault = new AutoUnavailableFault() { Operation = "insert reservation" }; throw new FaultException <AutoUnavailableFault>(fault); } catch (InvalidDateRangeException) { InvalidDateRangeFault fault = new InvalidDateRangeFault() { Operation = "insert reservation" }; throw new FaultException <InvalidDateRangeFault>(fault); } }