This is an automated email from the ASF dual-hosted git repository.
struberg pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openjpa.git
The following commit(s) were added to refs/heads/master by this push:
new af39516 OPENJPA-2713 add java8 time support for h2
af39516 is described below
commit af39516fc8dd7a7fadeaa4377fcc58ab7bddc5e9
Author: Mark Struberg <[email protected]>
AuthorDate: Sat Feb 2 13:04:15 2019 +0100
OPENJPA-2713 add java8 time support for h2
---
.../org/apache/openjpa/jdbc/sql/H2Dictionary.java | 50 ++++++++++++++++++++++
1 file changed, 50 insertions(+)
diff --git
a/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/H2Dictionary.java
b/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/H2Dictionary.java
index 925e2c9..095e742 100644
--- a/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/H2Dictionary.java
+++ b/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/H2Dictionary.java
@@ -20,8 +20,14 @@ package org.apache.openjpa.jdbc.sql;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.LocalTime;
+import java.time.OffsetDateTime;
import java.util.Arrays;
import java.util.Locale;
@@ -220,6 +226,50 @@ public class H2Dictionary extends DBDictionary {
}
@Override
+ public void setLocalDate(PreparedStatement stmnt, int idx, LocalDate val,
Column col) throws SQLException {
+ stmnt.setObject(idx, val);
+ }
+
+ @Override
+ public LocalDate getLocalDate(ResultSet rs, int column) throws
SQLException {
+ return rs.getObject(column, LocalDate.class);
+ }
+
+ @Override
+ public void setLocalTime(PreparedStatement stmnt, int idx, LocalTime val,
Column col) throws SQLException {
+ stmnt.setObject(idx, val);
+ }
+
+ @Override
+ public LocalTime getLocalTime(ResultSet rs, int column) throws
SQLException {
+ return rs.getObject(column, LocalTime.class);
+ }
+
+ @Override
+ public void setLocalDateTime(PreparedStatement stmnt, int idx,
LocalDateTime val, Column col) throws SQLException {
+ stmnt.setObject(idx, val);
+ }
+
+ @Override
+ public LocalDateTime getLocalDateTime(ResultSet rs, int column) throws
SQLException {
+ return rs.getObject(column, LocalDateTime.class);
+ }
+
+ @Override
+ public void setOffsetDateTime(PreparedStatement stmnt, int idx,
OffsetDateTime val, Column col) throws SQLException {
+ stmnt.setObject(idx, val);
+ }
+
+ /**
+ * h2 does intentionally not support {@code getTimestamp()} for 'TIME WITH
TIME ZONE' columns.
+ * See h2 ticket #413.
+ */
+ @Override
+ public OffsetDateTime getOffsetDateTime(ResultSet rs, int column) throws
SQLException {
+ return rs.getObject(column, OffsetDateTime.class);
+ }
+
+ @Override
protected void appendSelectRange(SQLBuffer buf, long start, long end,
boolean subselect) {
if (end != Long.MAX_VALUE)