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:03 UTC

[isis] 27/36: ISIS-2264: isis.value.format.date -> isis.value-types.java-sql.date.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 066b2722baf90935a47abaf83642b556cd172cfd
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 17 01:26:24 2020 +0100

    ISIS-2264: isis.value.format.date -> isis.value-types.java-sql.date.format
---
 .../toc/modules/mignotes/pages/migrating-to-2.0.0.adoc  |  4 ++++
 .../org/apache/isis/core/config/IsisConfiguration.java  | 11 +++++++++++
 .../datesql/JavaSqlDateValueSemanticsProvider.java      | 17 ++++++-----------
 3 files changed, 21 insertions(+), 11 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 a8ef867..b230f95 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
@@ -662,6 +662,10 @@ isis.value-types. +
 isis.value-types. +
 {nbsp}{nbsp}java-time.offset-date-time.format
 
+|isis.value.format["date"]
+|isis.value-types. +
+{nbsp}{nbsp}java-sql.date.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 75ef370..bf97fd9 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
@@ -1257,6 +1257,17 @@ public class IsisConfiguration {
         @Data
         public static class JavaUtil {
 
+
+        }
+        private final JavaSql javaSql = new JavaSql();
+        @Data
+        public static class JavaSql {
+            private final Date date = new Date();
+            @Data
+            public static class Date {
+                // lower case
+                private String format = "medium";
+            }
         }
 
         private final Joda joda = new Joda();
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datesql/JavaSqlDateValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datesql/JavaSqlDateValueSemanticsProvider.java
index 2bdbeb6..93b59f9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datesql/JavaSqlDateValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datesql/JavaSqlDateValueSemanticsProvider.java
@@ -56,8 +56,7 @@ public class JavaSqlDateValueSemanticsProvider extends ValueSemanticsProviderAbs
         formats.put("medium", DateFormat.getDateInstance(DateFormat.MEDIUM));
     }
 
-    @Getter
-    @Setter
+    @Getter @Setter
     private String configuredFormat;
 
     /**
@@ -71,15 +70,11 @@ public class JavaSqlDateValueSemanticsProvider extends ValueSemanticsProviderAbs
     public JavaSqlDateValueSemanticsProvider(final FacetHolder holder) {
         super("date", type(), holder, Date.class, 12, Immutability.NOT_IMMUTABLE, EqualByContent.NOT_HONOURED, null);
 
-        configuredFormat = getConfiguration().getValue().getFormat().getOrDefault("date", "medium").toLowerCase().trim();
-
-        buildFormat(configuredFormat);
-
-        final 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().getJavaSql().getDate().getFormat();
+        format = formats.get(configuredFormat);
+        if (format == null) {
+            setMask(configuredFormat);
         }
     }