You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2020/01/17 01:12:04 UTC

[isis] 28/36: ISIS-2264: isis.value.format.date -> ALSO TO: isis.value-types.joda.date-time.format

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 3449f94883509db65d5cd3cd6b345d8fe8ea9b0e
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 17 01:30:02 2020 +0100

    ISIS-2264: isis.value.format.date -> ALSO TO: isis.value-types.joda.date-time.format
---
 .../modules/mignotes/pages/migrating-to-2.0.0.adoc    |  2 ++
 .../apache/isis/core/config/IsisConfiguration.java    |  7 ++++++-
 .../JodaDateTimeValueSemanticsProvider.java           | 19 +++++++------------
 3 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/antora/components/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc b/antora/components/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc
index b230f95..855cfa5 100644
--- a/antora/components/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc
+++ b/antora/components/toc/modules/mignotes/pages/migrating-to-2.0.0.adoc
@@ -666,6 +666,8 @@ isis.value-types. +
 |isis.value-types. +
 {nbsp}{nbsp}java-sql.date.format
 
+isis.value-types. +
+{nbsp}{nbsp}joda.date-time.format
 
 |
 |
diff --git a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
index bf97fd9..67c375c 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/IsisConfiguration.java
@@ -1240,7 +1240,7 @@ public class IsisConfiguration {
         private final JavaTime javaTime = new JavaTime();
         @Data
         public static class JavaTime {
-            private final Joda.LocalDateTime localDateTime = new Joda.LocalDateTime();
+            private final LocalDateTime localDateTime = new LocalDateTime();
             @Data
             public static class LocalDateTime {
                 private String format = "medium";
@@ -1276,6 +1276,11 @@ public class IsisConfiguration {
             private final LocalDateTime localDateTime = new LocalDateTime();
             @Data
             public static class LocalDateTime {
+            }
+            private final DateTime dateTime = new DateTime();
+            @Data
+            public static class DateTime {
+                // lower case
                 private String format = "medium";
             }
         }
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejoda/JodaDateTimeValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejoda/JodaDateTimeValueSemanticsProvider.java
index a0f8fce..24bc9d5 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejoda/JodaDateTimeValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejoda/JodaDateTimeValueSemanticsProvider.java
@@ -51,8 +51,7 @@ public class JodaDateTimeValueSemanticsProvider extends ValueSemanticsProviderAb
         FORMATS.put("medium", DateFormat.getDateInstance(DateFormat.MEDIUM));
     }
 
-    @Getter
-    @Setter
+    @Getter @Setter
     private String configuredFormat;
 
     /**
@@ -67,20 +66,16 @@ public class JodaDateTimeValueSemanticsProvider extends ValueSemanticsProviderAb
             final FacetHolder holder) {
         super("date", type(), holder, DateTime.class, 12, Immutability.IMMUTABLE, EqualByContent.HONOURED, null);
 
-        configuredFormat = getConfiguration().getValue().getFormat().getOrDefault("date", "medium").toLowerCase().trim();
-
-        buildFormat(configuredFormat);
-
-        String formatRequired = getConfiguration().getValue().getFormat().get("date");
-
-        if (formatRequired == null) {
-            format = formats().get("medium");
-        } else {
-            setMask(formatRequired); //TODO fails when using format names eg 'medium'
+        final Map<String, DateFormat> formats = formats();
+        configuredFormat = getConfiguration().getValueTypes().getJoda().getDateTime().getFormat();
+        format = formats.get(configuredFormat);
+        if (format == null) {
+            setMask(configuredFormat);
         }
     }
 
 
+
     // //////////////////////////////////////////////////////////////////
     // temporal-specific stuff
     // //////////////////////////////////////////////////////////////////