aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTharre <tharre3@gmail.com>2018-05-23 12:55:24 +0200
committerTharre <tharre3@gmail.com>2018-05-23 12:55:24 +0200
commitd980f26121360ab7dacf7f482c9e85fb5ef43b0b (patch)
tree387f3245a881b8a7d8cd0b79bf1b9d2a9ad9a772
parent505c7dbdd8d2de827eefba8007463fb314a0f1a0 (diff)
downloadsepm-groupproject-d980f26121360ab7dacf7f482c9e85fb5ef43b0b.tar.gz
sepm-groupproject-d980f26121360ab7dacf7f482c9e85fb5ef43b0b.tar.xz
sepm-groupproject-d980f26121360ab7dacf7f482c9e85fb5ef43b0b.zip
Revert "Fix problem where listing operations would throw exception, downgrading h2 to 1.4.196 because of bug in .197 #24993"
This reverts commit d13cee465d399895668a88edc34a30a4d0a380c5.
-rw-r--r--pom.xml2
-rw-r--r--src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/DBOperationDAO.java18
-rw-r--r--src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/RegistrationDatabaseDAO.java2
3 files changed, 8 insertions, 14 deletions
diff --git a/pom.xml b/pom.xml
index 5f30fff..78dbb4c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -19,7 +19,7 @@
<slf4j.version>1.8.0-beta2</slf4j.version>
<auto-value.version>1.6</auto-value.version>
<!-- runtime dependencies -->
- <h2.version>1.4.196</h2.version>
+ <h2.version>1.4.197</h2.version>
<logback.version>1.3.0-alpha4</logback.version>
<!-- test dependencies -->
<junit.version>4.12</junit.version>
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/DBOperationDAO.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/DBOperationDAO.java
index 1fcdc2e..bb6fb27 100644
--- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/DBOperationDAO.java
+++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/DBOperationDAO.java
@@ -221,22 +221,16 @@ public class DBOperationDAO implements OperationDAO {
@Override
public Set<Operation> list(EnumSet<Status> statuses) throws PersistenceException {
- StringBuilder listString = new StringBuilder("SELECT * FROM Operation WHERE status IN (");
- boolean first = true;
- for (Status status : statuses) {
- if (first) {
- first = false;
- } else {
- listString.append(", ");
- }
- listString.append("\'" + status.name() + "\'");
- }
- listString.append(") ;");
+ String sql = "SELECT * FROM Operation WHERE status IN (?)";
Set<Operation> operations = new HashSet<>();
try {
Connection con = jdbcConnectionManager.getConnection();
- try (PreparedStatement pstmt = con.prepareStatement(listString.toString())) {
+
+ try (PreparedStatement pstmt = con.prepareStatement(sql)) {
+ Object[] arr = statuses.stream().map(Enum::ordinal).toArray();
+ pstmt.setArray(1, con.createArrayOf("INTEGER", arr));
+
try (ResultSet rs = pstmt.executeQuery()) {
while (rs.next()) operations.add(operationFromRS(rs));
}
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/RegistrationDatabaseDAO.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/RegistrationDatabaseDAO.java
index 5c00447..13aeffc 100644
--- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/RegistrationDatabaseDAO.java
+++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dao/RegistrationDatabaseDAO.java
@@ -56,7 +56,7 @@ public class RegistrationDatabaseDAO implements RegistrationDAO {
addRegistration.setLong(1, vehicleId);
addRegistration.setLong(2, registration.employee().id());
addRegistration.setTimestamp(3, Timestamp.from(registration.start()));
- addRegistration.setTimestamp(4, Timestamp.from(registration.end()));
+ addRegistration.setObject(4, registration.end());
addRegistration.setBoolean(
5, true); // ASSUMPTION: Registration gets created as active
addRegistration.executeUpdate();