diff options
author | Tharre <tharre3@gmail.com> | 2018-05-30 18:08:32 +0200 |
---|---|---|
committer | Tharre <tharre3@gmail.com> | 2018-05-30 18:08:32 +0200 |
commit | cad736b1bad936589cd6341d5e204dad5bf0588d (patch) | |
tree | f0652903f6c61d92b08ccb55e4806b4c18c2f323 /src/main/java/at/ac/tuwien/sepm | |
parent | 406d99c083f9840d47722d3e52b521dc8c89e359 (diff) | |
download | sepm-groupproject-cad736b1bad936589cd6341d5e204dad5bf0588d.tar.gz sepm-groupproject-cad736b1bad936589cd6341d5e204dad5bf0588d.tar.xz sepm-groupproject-cad736b1bad936589cd6341d5e204dad5bf0588d.zip |
Work around H2 bug in OperationDAO.list()
Diffstat (limited to 'src/main/java/at/ac/tuwien/sepm')
-rw-r--r-- | src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDatabaseDAO.java | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDatabaseDAO.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDatabaseDAO.java index 0a465f2..1989764 100644 --- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDatabaseDAO.java +++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/OperationDatabaseDAO.java @@ -150,11 +150,14 @@ public class OperationDatabaseDAO implements OperationDAO { // This hack exists because H2 currently has a bug that prevents IN (?) with an array of // ids, i.e. pstmt.setArray(1, con.createArrayOf("INT", intarray) from working. See // commented code below. + + // SELECT * FROM Operation WHERE status IN ('COMPLETED', 'CANCELLED') is BUGGED on H2! + // for this reason we use the ordinal values instead String str = statuses.stream() - .map(Enum::name) - .map(s -> "'" + s + "'") + .map(e -> Integer.toString(e.ordinal())) .collect(Collectors.joining(",")); + String sql = "SELECT * FROM Operation WHERE status IN (" + str + ")"; Set<Operation> operations = new HashSet<>(); |