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:11:41 UTC
[isis] 05/36: ISIS-2264: isis.value.format["int"] ->
isis.value-types.java-math.big-integer.format or
isis.value-types.primitives.integer.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 3ca9f15384046080b1328ae22bac59c90b9a12e8
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Thu Jan 16 22:56:55 2020 +0100
ISIS-2264: isis.value.format["int"] -> isis.value-types.java-math.big-integer.format or isis.value-types.primitives.integer.format
---
.../modules/mignotes/pages/migrating-to-2.0.0.adoc | 6 +++
.../apache/isis/core/config/IsisConfiguration.java | 49 +++++++++++++++++++++-
.../BigIntegerValueSemanticsProvider.java | 3 +-
.../integer/IntValueSemanticsProviderAbstract.java | 2 +-
.../isis/testing/specsupport/applib/specs/V.java | 2 +-
5 files changed, 56 insertions(+), 6 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 e28a3cc..bc079c6 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
@@ -617,6 +617,12 @@ standalone-collection.bulk-load
|isis.timezone
|isis.core.runtime.timezone
+|isis.value.format["int"]
+|isis.value-types. +
+{nbsp}{nbsp}java-math.big-integer.format +
+
+isis.value-types. +
+{nbsp}{nbsp}primitives.integer.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 64f60b1..a50eaab 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
@@ -1164,12 +1164,57 @@ public class IsisConfiguration {
}
}
+ private final ValueTypes valueTypes = new ValueTypes();
+ @Data
+ public static class ValueTypes {
+
+ private final Primitives primitives = new Primitives();
+ @Data
+ public static class Primitives {
+
+ private final Integer integer = new Integer();
+ @Data
+ public static class Integer {
+ private String format;
+ }
+ }
+
+ private final JavaMath javaMath = new JavaMath();
+ @Data
+ public static class JavaMath {
+ private final BigInteger bigInteger = new BigInteger();
+ @Data
+ public static class BigInteger {
+ private String format;
+ }
+ }
+
+ private final JavaTime javaTime = new JavaTime();
+ @Data
+ public static class JavaTime {
+
+ }
+
+ private final JavaUtil javaUtil = new JavaUtil();
+ @Data
+ public static class JavaUtil {
+
+ }
+
+ private final Joda joda = new Joda();
+ @Data
+ public static class Joda {
+
+ }
+
+
+ }
//TODO no meta data yet ... https://docs.spring.io/spring-boot/docs/current/reference/html/appendix-configuration-metadata.html#configuration-metadata-property-attributes
private final Value value = new Value();
@Data
public static class Value {
-
+
private Map<String, String> format = new HashMap<>();
public enum FormatIdentifier {
@@ -1196,7 +1241,7 @@ public class IsisConfiguration {
TIMESTAMP,
TIME,
- INT, DECIMAL, BYTE, DOUBLE, FLOAT, LONG, SHORT,
+ DECIMAL, BYTE, DOUBLE, FLOAT, LONG, SHORT,
PERCENTAGE
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/biginteger/BigIntegerValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/biginteger/BigIntegerValueSemanticsProvider.java
index b1439a8..2a2af9c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/biginteger/BigIntegerValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/biginteger/BigIntegerValueSemanticsProvider.java
@@ -27,7 +27,6 @@ import java.util.Map;
import org.apache.isis.applib.adapters.EncoderDecoder;
import org.apache.isis.applib.adapters.Parser;
-import org.apache.isis.core.config.IsisConfiguration.Value.FormatIdentifier;
import org.apache.isis.core.metamodel.commons.LocaleUtil;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -58,7 +57,7 @@ public class BigIntegerValueSemanticsProvider extends ValueSemanticsProviderAndF
public BigIntegerValueSemanticsProvider(final FacetHolder holder) {
super(type(), holder, BigInteger.class, TYPICAL_LENGTH, -1, Immutability.IMMUTABLE, EqualByContent.HONOURED, DEFAULT_VALUE);
- final String formatRequired = getConfiguration().getValue().getFormat().get("int");
+ final String formatRequired = getConfiguration().getValueTypes().getJavaMath().getBigInteger().getFormat();
NumberFormat result;
if (formatRequired != null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/integer/IntValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/integer/IntValueSemanticsProviderAbstract.java
index c18e7f7..df43fad 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/integer/IntValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/integer/IntValueSemanticsProviderAbstract.java
@@ -48,7 +48,7 @@ public abstract class IntValueSemanticsProviderAbstract extends ValueSemanticsPr
public IntValueSemanticsProviderAbstract(final FacetHolder holder, final Class<Integer> adaptedClass) {
super(type(), holder, adaptedClass, TYPICAL_LENGTH, MAX_LENGTH, Immutability.IMMUTABLE, EqualByContent.HONOURED, DEFAULT_VALUE);
- final String formatRequired = getConfiguration().getValue().getFormat().get("int");
+ final String formatRequired = getConfiguration().getValueTypes().getPrimitives().getInteger().getFormat();
NumberFormat result;
if (formatRequired != null) {
diff --git a/testing/specsupport/applib/src/main/java/org/apache/isis/testing/specsupport/applib/specs/V.java b/testing/specsupport/applib/src/main/java/org/apache/isis/testing/specsupport/applib/specs/V.java
index 9d42e46..8e50eb5 100644
--- a/testing/specsupport/applib/src/main/java/org/apache/isis/testing/specsupport/applib/specs/V.java
+++ b/testing/specsupport/applib/src/main/java/org/apache/isis/testing/specsupport/applib/specs/V.java
@@ -159,7 +159,7 @@ public class V {
}
/**
- * Converts {@link java.lang.String}s to {@link java.lang.BigInteger}, but also recognizing the
+ * Converts {@link java.lang.String}s to {@link java.math.BigInteger}, but also recognizing the
* keyword 'null'.
*/
public static class BigInteger extends Transformer<java.math.BigInteger> {