This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/master by this push:
new fe3a1b6fcd ISIS-3105: JPA: adds missing mapping for OffsetDateTime
fe3a1b6fcd is described below
commit fe3a1b6fcda466ee5d4e9be3f7d14e7244e88492
Author: Andi Huber <[email protected]>
AuthorDate: Tue Aug 2 10:46:26 2022 +0200
ISIS-3105: JPA: adds missing mapping for OffsetDateTime
---
.../time/IsoOffsetDateTimeConverter.java | 6 +++---
.../IsisModulePersistenceJpaIntegration.java | 2 ++
.../time/JavaTimeIsoOffsetDateTimeConverter.java} | 19 ++++++++++---------
3 files changed, 15 insertions(+), 12 deletions(-)
diff --git
a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/typeconverters/time/IsoOffsetDateTimeConverter.java
b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/typeconverters/time/IsoOffsetDateTimeConverter.java
index 68410cffce..0a6f4ee3c6 100644
---
a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/typeconverters/time/IsoOffsetDateTimeConverter.java
+++
b/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/typeconverters/time/IsoOffsetDateTimeConverter.java
@@ -31,9 +31,9 @@ public class IsoOffsetDateTimeConverter implements
TypeConverter<OffsetDateTime,
private static final long serialVersionUID = 1L;
@Override
- public String toDatastoreType(final OffsetDateTime offsetTime) {
- return offsetTime != null
- ? offsetTime.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME)
+ public String toDatastoreType(final OffsetDateTime offsetDateTime) {
+ return offsetDateTime != null
+ ? offsetDateTime.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME)
: null;
}
diff --git
a/persistence/jpa/integration/src/main/java/org/apache/isis/persistence/jpa/integration/IsisModulePersistenceJpaIntegration.java
b/persistence/jpa/integration/src/main/java/org/apache/isis/persistence/jpa/integration/IsisModulePersistenceJpaIntegration.java
index a81316adea..05e9903295 100644
---
a/persistence/jpa/integration/src/main/java/org/apache/isis/persistence/jpa/integration/IsisModulePersistenceJpaIntegration.java
+++
b/persistence/jpa/integration/src/main/java/org/apache/isis/persistence/jpa/integration/IsisModulePersistenceJpaIntegration.java
@@ -31,6 +31,7 @@ import
org.apache.isis.persistence.jpa.integration.typeconverters.applib.IsisLoc
import
org.apache.isis.persistence.jpa.integration.typeconverters.applib.IsisMarkupConverter;
import
org.apache.isis.persistence.jpa.integration.typeconverters.applib.IsisPasswordConverter;
import
org.apache.isis.persistence.jpa.integration.typeconverters.java.awt.JavaAwtBufferedImageByteArrayConverter;
+import
org.apache.isis.persistence.jpa.integration.typeconverters.java.time.JavaTimeIsoOffsetDateTimeConverter;
import
org.apache.isis.persistence.jpa.integration.typeconverters.java.time.JavaTimeIsoOffsetTimeConverter;
import
org.apache.isis.persistence.jpa.integration.typeconverters.java.time.JavaTimeIsoZonedDateTimeConverter;
import
org.apache.isis.persistence.jpa.integration.typeconverters.java.util.JavaUtilUuidConverter;
@@ -68,6 +69,7 @@ import
org.apache.isis.persistence.jpa.metamodel.IsisModulePersistenceJpaMetamod
JavaAwtBufferedImageByteArrayConverter.class,
JavaUtilUuidConverter.class,
JavaTimeIsoOffsetTimeConverter.class,
+ JavaTimeIsoOffsetDateTimeConverter.class,
JavaTimeIsoZonedDateTimeConverter.class
})
diff --git
a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/typeconverters/time/IsoOffsetDateTimeConverter.java
b/persistence/jpa/integration/src/main/java/org/apache/isis/persistence/jpa/integration/typeconverters/java/time/JavaTimeIsoOffsetDateTimeConverter.java
similarity index 66%
copy from
persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/typeconverters/time/IsoOffsetDateTimeConverter.java
copy to
persistence/jpa/integration/src/main/java/org/apache/isis/persistence/jpa/integration/typeconverters/java/time/JavaTimeIsoOffsetDateTimeConverter.java
index 68410cffce..d0f34d9e31 100644
---
a/persistence/jdo/datanucleus/src/main/java/org/apache/isis/persistence/jdo/datanucleus/typeconverters/time/IsoOffsetDateTimeConverter.java
+++
b/persistence/jpa/integration/src/main/java/org/apache/isis/persistence/jpa/integration/typeconverters/java/time/JavaTimeIsoOffsetDateTimeConverter.java
@@ -16,29 +16,30 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.isis.persistence.jdo.datanucleus.typeconverters.time;
+package org.apache.isis.persistence.jpa.integration.typeconverters.java.time;
import java.time.OffsetDateTime;
import java.time.format.DateTimeFormatter;
-import org.datanucleus.store.types.converters.TypeConverter;
+import javax.persistence.AttributeConverter;
+import javax.persistence.Converter;
/**
* @since 2.0 {@index}
*/
-public class IsoOffsetDateTimeConverter implements
TypeConverter<OffsetDateTime, String>{
-
- private static final long serialVersionUID = 1L;
+@Converter(autoApply = true)
+public class JavaTimeIsoOffsetDateTimeConverter
+implements AttributeConverter<OffsetDateTime, String> {
@Override
- public String toDatastoreType(final OffsetDateTime offsetTime) {
- return offsetTime != null
- ? offsetTime.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME)
+ public String convertToDatabaseColumn(final OffsetDateTime offsetDateTime)
{
+ return offsetDateTime != null
+ ? offsetDateTime.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME)
: null;
}
@Override
- public OffsetDateTime toMemberType(final String datastoreValue) {
+ public OffsetDateTime convertToEntityAttribute(final String
datastoreValue) {
return datastoreValue != null
? OffsetDateTime.parse(datastoreValue,
DateTimeFormatter.ISO_OFFSET_DATE_TIME)
: null;