diff options
author | Tharre <tharre3@gmail.com> | 2018-06-13 18:07:34 +0200 |
---|---|---|
committer | Tharre <tharre3@gmail.com> | 2018-06-13 18:15:56 +0200 |
commit | 8e9d7d1cb5ffd184ee63706350fa664aa9007fa6 (patch) | |
tree | 4292b868156abb956e8ce9d3a093007cc273addb /src/main/java | |
parent | cd26f62a3997fdc6b3ad622c65a57a1977275d27 (diff) | |
download | sepm-groupproject-8e9d7d1cb5ffd184ee63706350fa664aa9007fa6.tar.gz sepm-groupproject-8e9d7d1cb5ffd184ee63706350fa664aa9007fa6.tar.xz sepm-groupproject-8e9d7d1cb5ffd184ee63706350fa664aa9007fa6.zip |
Fix Vehicle status validation in OperationService
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/OperationServiceImpl.java | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/OperationServiceImpl.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/OperationServiceImpl.java index d84da3d..4c71414 100644 --- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/OperationServiceImpl.java +++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/service/OperationServiceImpl.java @@ -70,6 +70,10 @@ public class OperationServiceImpl implements OperationService { for (long id : (Iterable<Long>) o.vehicles().stream().map(Vehicle::id)::iterator) { Vehicle v = vehicleDAO.get(id); VehicleServiceImpl.validateVehicle(v); + + if (v.status() != Vehicle.Status.FREI_FUNK + && v.status() != Vehicle.Status.FREI_WACHE) + throw new InvalidOperationException("Fahrzeug nicht verfügbar: " + v.status()); } validateOperation(o); @@ -131,11 +135,10 @@ public class OperationServiceImpl implements OperationService { try { Vehicle v = vehicleDAO.get(id); VehicleServiceImpl.validateVehicle(v); - if (v.status() == Vehicle.Status.ABGEMELDET) { - LOG.info("Invalid Vehicle: Requested vehicle is not active"); - throw new InvalidVehicleException( - "Kann keine inaktiven Fahrzeuge anfordern"); - } + if (v.status() != Vehicle.Status.FREI_FUNK + && v.status() != Vehicle.Status.FREI_WACHE) + throw new InvalidOperationException( + "Fahrzeug nicht verfügbar: " + v.status()); vs.add(v); } catch (ElementNotFoundException e) { @@ -272,12 +275,6 @@ public class OperationServiceImpl implements OperationService { throw new InvalidOperationException("Fahrzeug " + v.name() + " ist invalid" + e); } - if (v.status() != Vehicle.Status.FREI_FUNK && v.status() != Vehicle.Status.FREI_WACHE) { - LOG.info("Invalid Operation: Vehicle \"{}\" not available", v.name()); - throw new InvalidOperationException( - "Fahrzeug nicht verfügbar (" + v.status() + ")"); - } - // TODO: validate if NEF/RTW/NAH conditions? } |