You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2021/09/14 18:19:33 UTC
[isis] branch master updated: ISIS-2871: starting to cleanup
ValueSemanticsProviders
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 01abd63 ISIS-2871: starting to cleanup ValueSemanticsProviders
01abd63 is described below
commit 01abd63c6a35b4ad10d5abbfb85658800f773bc3
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Sep 14 20:19:24 2021 +0200
ISIS-2871: starting to cleanup ValueSemanticsProviders
---
.../choices/enums/EnumValueSemanticsProvider.java | 24 +++--------
.../ValueSemanticsProviderAndFacetAbstract.java | 39 +----------------
.../chg/v2/ChangesDtoValueSemanticsProvider.java | 14 ++----
.../cmd/v2/CommandDtoValueSemanticsProvider.java | 14 ++----
.../v2/InteractionDtoValueSemanticsProvider.java | 14 ++----
.../ValueSemanticsProviderAbstractTemporal.java | 18 +++-----
.../BigDecimalValueSemanticsProvider.java | 24 +++--------
.../BigIntegerValueSemanticsProvider.java | 16 +++----
.../value/blobs/BlobValueSemanticsProvider.java | 17 ++++----
.../BooleanPrimitiveValueSemanticsProvider.java | 5 ++-
.../BooleanValueSemanticsProviderAbstract.java | 20 ++++-----
.../bytes/ByteValueSemanticsProviderAbstract.java | 13 ++----
.../chars/CharValueSemanticsProviderAbstract.java | 19 +++-----
.../value/clobs/ClobValueSemanticsProvider.java | 16 +++----
.../JodaLocalDateValueSemanticsProvider.java | 36 +++++++---------
.../datesql/JavaSqlDateValueSemanticsProvider.java | 4 +-
.../JodaDateTimeValueSemanticsProvider.java | 4 +-
.../JodaLocalDateTimeValueSemanticsProvider.java | 37 +++++++---------
.../DoubleValueSemanticsProviderAbstract.java | 13 ++----
.../FloatValueSemanticsProviderAbstract.java | 13 ++----
.../image/ImageValueSemanticsProviderAbstract.java | 7 +--
.../JavaAwtImageValueSemanticsProvider.java | 4 +-
.../integer/IntValueSemanticsProviderAbstract.java | 12 ++----
.../LocalResourcePathValueSemanticsProvider.java | 11 ++---
.../longs/LongValueSemanticsProviderAbstract.java | 13 ++----
.../value/markup/MarkupValueSemanticsProvider.java | 13 ++----
.../password/PasswordValueSemanticsProvider.java | 12 ++----
.../ShortValueSemanticsProviderAbstract.java | 13 ++----
.../value/string/StringValueSemanticsProvider.java | 11 ++---
.../TemporalValueSemanticsProviderAbstract.java | 50 ++++++++++------------
.../treenode/TreeNodeValueSemanticsProvider.java | 21 +++++----
.../value/url/URLValueSemanticsProvider.java | 15 +++----
.../value/uuid/UUIDValueSemanticsProvider.java | 16 +++----
...odaLocalDateTimeValueSemanticsProviderTest.java | 8 ++--
.../facets/MarkdownValueSemanticsProvider.java | 13 ++----
35 files changed, 198 insertions(+), 381 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
index febcde9..f1c8b18 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/choices/enums/EnumValueSemanticsProvider.java
@@ -21,6 +21,7 @@ package org.apache.isis.core.metamodel.facets.object.choices.enums;
import java.lang.reflect.Method;
import java.util.function.BiConsumer;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.annotation.Introspection.IntrospectionPolicy;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.applib.services.i18n.TranslatableString;
@@ -39,7 +40,6 @@ public class EnumValueSemanticsProvider<T extends Enum<T>>
extends ValueSemanticsProviderAndFacetAbstract<T>
implements EnumFacet {
-
private static Class<? extends Facet> type() {
return EnumFacet.class;
}
@@ -60,13 +60,6 @@ implements EnumFacet {
private final Method titleMethod;
-// /**
-// * Required because {@link Parser} and {@link EncoderDecoder}.
-// */
-// public EnumValueSemanticsProvider() {
-// this(EncapsulationPolicy.ONLY_PUBLIC_MEMBERS_SUPPORTED, null, null);
-// }
-
public EnumValueSemanticsProvider(
final IntrospectionPolicy introspectionPolicy,
final FacetHolder holder,
@@ -95,10 +88,10 @@ implements EnumFacet {
}
@Override
- protected T doParse(final Object context, final String entry) {
+ protected T doParse(final Parser.Context context, final String entry) {
final T[] enumConstants = getAdaptedClass().getEnumConstants();
for (final T enumConstant : enumConstants) {
- if (doEncode(enumConstant).equals(entry)) {
+ if (toEncodedString(enumConstant).equals(entry)) {
return enumConstant;
}
}
@@ -112,13 +105,13 @@ implements EnumFacet {
}
@Override
- protected String doEncode(final T object) {
+ public String toEncodedString(final T object) {
return titleString(object);
}
@Override
- protected T doRestore(final String data) {
- return doParse((Object)null, data);
+ public T fromEncodedString(final String data) {
+ return doParse(null, data);
}
@@ -153,11 +146,6 @@ implements EnumFacet {
}
@Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
- @Override
public void visitAttributes(final BiConsumer<String, Object> visitor) {
super.visitAttributes(visitor);
visitor.accept("titleMethod", titleMethod);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderAndFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderAndFacetAbstract.java
index 1d96ea5..7f2e787 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderAndFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderAndFacetAbstract.java
@@ -167,14 +167,8 @@ implements ValueSemanticsProvider<T>, EncoderDecoder<T>, Parser<T>, DefaultsProv
* - the proposed new object, as a string representation to be
* parsed
*/
- protected T doParse(final Object context, final String entry) {
- return doParse(entry, context);
- }
+ protected abstract T doParse(final Parser.Context context, final String entry);
- // REVIEW: this method used to take Localization as a third param, could now inline
- protected T doParse(final String entry, final Object context) {
- return doParse(context, entry);
- }
/**
* Whether a non-null entry is required, used by parsing.
@@ -211,8 +205,6 @@ implements ValueSemanticsProvider<T>, EncoderDecoder<T>, Parser<T>, DefaultsProv
*/
protected abstract String titleString(Object object);
- public abstract String titleStringWithMask(final Object value, final String usingMask);
-
@Override
public final int typicalLength() {
return this.typicalLength;
@@ -232,34 +224,6 @@ implements ValueSemanticsProvider<T>, EncoderDecoder<T>, Parser<T>, DefaultsProv
return this.defaultValue;
}
- // ///////////////////////////////////////////////////////////////////////////
- // EncoderDecoder implementation
- // ///////////////////////////////////////////////////////////////////////////
-
- @Override
- public String toEncodedString(final T object) {
- return doEncode(object);
- }
-
- @Override
- public T fromEncodedString(final String data) {
- return doRestore(data);
- }
-
- /**
- * Hook method to perform the actual encoding.
- */
- protected abstract String doEncode(T object);
-
- /**
- * Hook method to perform the actual restoring.
- */
- protected abstract T doRestore(String data);
-
- // ///////////////////////////////////////////////////////////////////////////
- // Helper: Locale handling
- // ///////////////////////////////////////////////////////////////////////////
-
// //////////////////////////////////////////////////////////
// Helper: createAdapter
// //////////////////////////////////////////////////////////
@@ -286,5 +250,4 @@ implements ValueSemanticsProvider<T>, EncoderDecoder<T>, Parser<T>, DefaultsProv
}
-
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/chg/v2/ChangesDtoValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/chg/v2/ChangesDtoValueSemanticsProvider.java
index f846b96..1fc3b79 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/chg/v2/ChangesDtoValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/chg/v2/ChangesDtoValueSemanticsProvider.java
@@ -56,8 +56,8 @@ implements ChangesDtoValueFacet {
@Override
- protected ChangesDto doParse(final Object context, final String str) {
- return doRestore(str);
+ protected ChangesDto doParse(final Parser.Context context, final String str) {
+ return fromEncodedString(str);
}
@Override
@@ -68,12 +68,6 @@ implements ChangesDtoValueFacet {
}
@Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
-
- @Override
public String changesDtoValue(final ManagedObject object) {
if (object == null) {
return "";
@@ -90,12 +84,12 @@ implements ChangesDtoValueFacet {
@Override
- protected String doEncode(final ChangesDto changesDto) {
+ public String toEncodedString(final ChangesDto changesDto) {
return ChangesDtoUtils.toXml(changesDto);
}
@Override
- protected ChangesDto doRestore(final String xml) {
+ public ChangesDto fromEncodedString(final String xml) {
return ChangesDtoUtils.fromXml(xml);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/cmd/v2/CommandDtoValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/cmd/v2/CommandDtoValueSemanticsProvider.java
index 1b5ab0c..d31ed9a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/cmd/v2/CommandDtoValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/cmd/v2/CommandDtoValueSemanticsProvider.java
@@ -56,8 +56,8 @@ implements CommandDtoValueFacet {
@Override
- protected CommandDto doParse(final Object context, final String str) {
- return doRestore(str);
+ protected CommandDto doParse(final Parser.Context context, final String str) {
+ return fromEncodedString(str);
}
@Override
@@ -68,12 +68,6 @@ implements CommandDtoValueFacet {
}
@Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
-
- @Override
public String commandDtoValue(final ManagedObject object) {
if (object == null) {
return "";
@@ -90,12 +84,12 @@ implements CommandDtoValueFacet {
@Override
- protected String doEncode(final CommandDto commandDto) {
+ public String toEncodedString(final CommandDto commandDto) {
return CommandDtoUtils.toXml(commandDto);
}
@Override
- protected CommandDto doRestore(final String xml) {
+ public CommandDto fromEncodedString(final String xml) {
return CommandDtoUtils.fromXml(xml);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/ixn/v2/InteractionDtoValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/ixn/v2/InteractionDtoValueSemanticsProvider.java
index ac74a2e..2c4a88a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/ixn/v2/InteractionDtoValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/schema/ixn/v2/InteractionDtoValueSemanticsProvider.java
@@ -56,8 +56,8 @@ implements InteractionDtoValueFacet {
@Override
- protected InteractionDto doParse(final Object context, final String str) {
- return doRestore(str);
+ protected InteractionDto doParse(final Parser.Context context, final String str) {
+ return fromEncodedString(str);
}
@Override
@@ -68,12 +68,6 @@ implements InteractionDtoValueFacet {
}
@Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
-
- @Override
public String interactionDtoValue(final ManagedObject object) {
if (object == null) {
return "";
@@ -90,12 +84,12 @@ implements InteractionDtoValueFacet {
@Override
- protected String doEncode(final InteractionDto interactionDto) {
+ public String toEncodedString(final InteractionDto interactionDto) {
return InteractionDtoUtils.toXml(interactionDto);
}
@Override
- protected InteractionDto doRestore(final String xml) {
+ public InteractionDto fromEncodedString(final String xml) {
return InteractionDtoUtils.fromXml(xml);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java
index 44eb240..106a8b7 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/ValueSemanticsProviderAbstractTemporal.java
@@ -31,6 +31,7 @@ import java.util.TimeZone;
import java.util.function.BiConsumer;
import org.apache.isis.applib.adapters.EncodingException;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.commons.internal.base._Casts;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -82,7 +83,7 @@ implements DateValueFacet {
* Allows the specific facet subclass to be specified (rather than use
* {@link #type()}.
*/
- public ValueSemanticsProviderAbstractTemporal(String propertyType, final Class<? extends Facet> facetType, final FacetHolder holder, final Class<T> adaptedClass, final int typicalLength, final Immutability immutability, final EqualByContent equalByContent, final T defaultValue) {
+ public ValueSemanticsProviderAbstractTemporal(final String propertyType, final Class<? extends Facet> facetType, final FacetHolder holder, final Class<T> adaptedClass, final int typicalLength, final Immutability immutability, final EqualByContent equalByContent, final T defaultValue) {
super(facetType, holder, adaptedClass, typicalLength, -1, immutability, equalByContent, defaultValue);
configureFormats();
@@ -124,8 +125,9 @@ implements DateValueFacet {
@Override
protected T doParse(
- final String entry,
- final Object context) {
+ final Parser.Context context,
+ final String entry) {
+
buildDefaultFormatIfRequired();
final String dateString = entry.trim();
final String str = dateString.toLowerCase();
@@ -232,12 +234,6 @@ implements DateValueFacet {
return format;
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- final Date date = dateValue(value);
- return titleString(new SimpleDateFormat(usingMask), date);
- }
-
private String titleString(final DateFormat formatter, final Date date) {
return date == null ? "" : formatter.format(date);
}
@@ -247,7 +243,7 @@ implements DateValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final T object) {
+ public String toEncodedString(final T object) {
final Date date = dateValue(object);
return encode(date);
}
@@ -257,7 +253,7 @@ implements DateValueFacet {
}
@Override
- protected T doRestore(final String data) {
+ public T fromEncodedString(final String data) {
final Calendar cal = Calendar.getInstance();
cal.setTimeZone(UTC_TIME_ZONE);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bigdecimal/BigDecimalValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bigdecimal/BigDecimalValueSemanticsProvider.java
index 59bd2eb..f22af91 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bigdecimal/BigDecimalValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bigdecimal/BigDecimalValueSemanticsProvider.java
@@ -88,11 +88,11 @@ implements BigDecimalValueFacet {
// -- PARSER
@Override
- protected BigDecimal doParse(final Object context, final String entry) {
+ protected BigDecimal doParse(final Parser.Context context, final String entry) {
try {
return new BigDecimal(entry);
} catch (final NumberFormatException e) {
- throw new TextEntryParseException("Not an decimal " + entry, e);
+ throw new TextEntryParseException("Not a decimal " + entry, e);
}
}
@@ -103,32 +103,19 @@ implements BigDecimalValueFacet {
return titleString(format, object);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// -- ENCODER DECODER
@Override
- protected String doEncode(final BigDecimal object) {
- // for dotnet compatibility - toString pre 1.3 was equivalent to
- // toPlainString later.
+ public String toEncodedString(final BigDecimal object) {
try {
- final Class<?> type = object.getClass();
- try {
- return (String) type.getMethod("toPlainString", (Class[]) null).invoke(object, (Object[]) null);
- } catch (final NoSuchMethodException nsm) {
- return (String) type.getMethod("toString", (Class[]) null).invoke(object, (Object[]) null);
- }
+ return object.toPlainString();
} catch (final Exception e) {
throw new UnrecoverableException(e);
}
-
}
@Override
- protected BigDecimal doRestore(final String data) {
+ public BigDecimal fromEncodedString(final String data) {
return new BigDecimal(data);
}
@@ -146,5 +133,4 @@ implements BigDecimalValueFacet {
}
-
}
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 eb06fa6..ed8e1f8 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
@@ -32,8 +32,9 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
-
-public class BigIntegerValueSemanticsProvider extends ValueSemanticsProviderAndFacetAbstract<BigInteger> implements BigIntegerValueFacet {
+public class BigIntegerValueSemanticsProvider
+extends ValueSemanticsProviderAndFacetAbstract<BigInteger>
+implements BigIntegerValueFacet {
private static final int TYPICAL_LENGTH = 10;
@@ -74,7 +75,7 @@ public class BigIntegerValueSemanticsProvider extends ValueSemanticsProviderAndF
// //////////////////////////////////////////////////////////////////
@Override
- protected BigInteger doParse(final Object context, final String entry) {
+ protected BigInteger doParse(final Parser.Context context, final String entry) {
try {
return new BigInteger(entry);
} catch (final NumberFormatException e) {
@@ -87,22 +88,17 @@ public class BigIntegerValueSemanticsProvider extends ValueSemanticsProviderAndF
return titleString(format, object);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final BigInteger bigInt) {
+ public String toEncodedString(final BigInteger bigInt) {
return bigInt.toString();
}
@Override
- protected BigInteger doRestore(final String data) {
+ public BigInteger fromEncodedString(final String data) {
return new BigInteger(data);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java
index 7ae3eca..0aa242c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/blobs/BlobValueSemanticsProvider.java
@@ -34,7 +34,6 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
-
public class BlobValueSemanticsProvider
extends ValueSemanticsProviderAndFacetAbstract<Blob>
implements BlobValueFacet {
@@ -64,12 +63,6 @@ implements BlobValueFacet {
return object != null? ((Blob)object).getName(): "[null]";
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
-
// //////////////////////////////////////////////////////////////////
// Parser
// //////////////////////////////////////////////////////////////////
@@ -79,6 +72,11 @@ implements BlobValueFacet {
return null;
}
+ @Override
+ protected Blob doParse(final Context context, final String entry) {
+ return null;
+ }
+
// //////////////////////////////////////////////////////////////////
// DefaultsProvider
// //////////////////////////////////////////////////////////////////
@@ -93,13 +91,13 @@ implements BlobValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Blob blob) {
+ public String toEncodedString(final Blob blob) {
return blob.getName() + ":" + blob.getMimeType().getBaseType() + ":" +
_Strings.ofBytes(_Bytes.encodeToBase64(Base64.getEncoder(), blob.getBytes()), StandardCharsets.UTF_8);
}
@Override
- protected Blob doRestore(final String data) {
+ public Blob fromEncodedString(final String data) {
final int colonIdx = data.indexOf(':');
final String name = data.substring(0, colonIdx);
final int colon2Idx = data.indexOf(":", colonIdx+1);
@@ -120,4 +118,5 @@ implements BlobValueFacet {
return "BlobValueSemanticsProvider";
}
+
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanPrimitiveValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanPrimitiveValueSemanticsProvider.java
index 0a854b1..0aaec52 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanPrimitiveValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanPrimitiveValueSemanticsProvider.java
@@ -24,8 +24,9 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
-public class BooleanPrimitiveValueSemanticsProvider extends BooleanValueSemanticsProviderAbstract implements PropertyDefaultFacet {
+public class BooleanPrimitiveValueSemanticsProvider
+extends BooleanValueSemanticsProviderAbstract
+implements PropertyDefaultFacet {
private static final Boolean DEFAULT_VALUE = Boolean.FALSE;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanValueSemanticsProviderAbstract.java
index 82765fa..fb440fd 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/booleans/BooleanValueSemanticsProviderAbstract.java
@@ -18,6 +18,7 @@
*/
package org.apache.isis.core.metamodel.facets.value.booleans;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.UnrecoverableException;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -26,9 +27,9 @@ import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProv
import org.apache.isis.core.metamodel.spec.ManagedObject;
import org.apache.isis.core.metamodel.spec.ManagedObjects;
-
public abstract class BooleanValueSemanticsProviderAbstract
-extends ValueSemanticsProviderAndFacetAbstract<Boolean> implements BooleanValueFacet {
+extends ValueSemanticsProviderAndFacetAbstract<Boolean>
+implements BooleanValueFacet {
private static Class<? extends Facet> type() {
return BooleanValueFacet.class;
@@ -37,7 +38,7 @@ extends ValueSemanticsProviderAndFacetAbstract<Boolean> implements BooleanValueF
private static final int MAX_LENGTH = 5;
private static final int TYPICAL_LENGTH = MAX_LENGTH;
- public BooleanValueSemanticsProviderAbstract(FacetHolder holder, Class<Boolean> adaptedClass, Boolean defaultValue) {
+ public BooleanValueSemanticsProviderAbstract(final FacetHolder holder, final Class<Boolean> adaptedClass, final Boolean defaultValue) {
super(type(), holder, adaptedClass, TYPICAL_LENGTH, MAX_LENGTH, Immutability.IMMUTABLE, EqualByContent.HONOURED, defaultValue);
}
@@ -46,7 +47,7 @@ extends ValueSemanticsProviderAndFacetAbstract<Boolean> implements BooleanValueF
// //////////////////////////////////////////////////////////////////
@Override
- protected Boolean doParse(final Object context, final String entry) {
+ protected Boolean doParse(final Parser.Context context, final String entry) {
final String compareTo = entry.trim().toLowerCase();
if ("true".equals(compareTo)) {
return Boolean.TRUE;
@@ -62,22 +63,17 @@ extends ValueSemanticsProviderAndFacetAbstract<Boolean> implements BooleanValueF
return value == null ? "" : isSet(value) ? "True" : "False";
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
// //////////////////////////////////////////////////////////////////
// Encode, Decode
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Boolean object) {
+ public String toEncodedString(final Boolean object) {
return isSet(object) ? "T" : "F";
}
@Override
- protected Boolean doRestore(final String data) {
+ public Boolean fromEncodedString(final String data) {
final int dataLength = data.length();
if (dataLength == 1) {
switch (data.charAt(0)) {
@@ -110,7 +106,7 @@ extends ValueSemanticsProviderAndFacetAbstract<Boolean> implements BooleanValueF
// //////////////////////////////////////////////////////////////////
@Override
- public boolean isSet(ManagedObject adapter) {
+ public boolean isSet(final ManagedObject adapter) {
if (ManagedObjects.isNullOrUnspecifiedOrEmpty(adapter)) {
return false;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bytes/ByteValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bytes/ByteValueSemanticsProviderAbstract.java
index 7f529d0..212ab3e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bytes/ByteValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/bytes/ByteValueSemanticsProviderAbstract.java
@@ -24,6 +24,7 @@ import java.text.ParseException;
import java.util.Locale;
import java.util.function.BiConsumer;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.core.metamodel.commons.LocaleUtil;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -54,13 +55,12 @@ implements ByteValueFacet {
: NumberFormat.getNumberInstance(getConfiguration().getCore().getRuntime().getLocale().map(LocaleUtil::findLocale).orElse(Locale.getDefault()));
}
-
// //////////////////////////////////////////////////////////////////
// Parser
// //////////////////////////////////////////////////////////////////
@Override
- protected Byte doParse(final Object context, final String entry) {
+ protected Byte doParse(final Parser.Context context, final String entry) {
try {
return Byte.valueOf(format.parse(entry).byteValue());
} catch (final ParseException e) {
@@ -78,20 +78,15 @@ implements ByteValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- public String doEncode(final Byte object) {
+ public String toEncodedString(final Byte object) {
return object.toString();
}
@Override
- protected Byte doRestore(final String data) {
+ public Byte fromEncodedString(final String data) {
return Byte.parseByte(data);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// //////////////////////////////////////////////////////////////////
// ByteValueFacet
// //////////////////////////////////////////////////////////////////
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/chars/CharValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/chars/CharValueSemanticsProviderAbstract.java
index 2328121..e606f6b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/chars/CharValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/chars/CharValueSemanticsProviderAbstract.java
@@ -18,16 +18,16 @@
*/
package org.apache.isis.core.metamodel.facets.value.chars;
-import java.text.DecimalFormat;
-
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.InvalidEntryException;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
-public abstract class CharValueSemanticsProviderAbstract extends ValueSemanticsProviderAndFacetAbstract<Character> implements CharValueFacet {
+public abstract class CharValueSemanticsProviderAbstract
+extends ValueSemanticsProviderAndFacetAbstract<Character>
+implements CharValueFacet {
private static Class<? extends Facet> type() {
return CharValueFacet.class;
@@ -46,7 +46,7 @@ public abstract class CharValueSemanticsProviderAbstract extends ValueSemanticsP
// //////////////////////////////////////////////////////////////////
@Override
- public Character doParse(final Object context, final String entry) {
+ public Character doParse(final Parser.Context context, final String entry) {
if (entry.length() > 1) {
throw new InvalidEntryException("Only a single character is required");
} else {
@@ -59,22 +59,17 @@ public abstract class CharValueSemanticsProviderAbstract extends ValueSemanticsP
return value == null ? "" : value.toString();
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Character object) {
+ public String toEncodedString(final Character object) {
return object.toString();
}
@Override
- protected Character doRestore(final String data) {
+ public Character fromEncodedString(final String data) {
return Character.valueOf(data.charAt(0));
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/clobs/ClobValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/clobs/ClobValueSemanticsProvider.java
index 6774103..d7d2a14 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/clobs/ClobValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/clobs/ClobValueSemanticsProvider.java
@@ -29,7 +29,6 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
-
public class ClobValueSemanticsProvider
extends ValueSemanticsProviderAndFacetAbstract<Clob>
implements ClobValueFacet {
@@ -59,12 +58,6 @@ implements ClobValueFacet {
return object != null? ((Clob)object).getName(): "[null]";
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
-
// //////////////////////////////////////////////////////////////////
// Parser
// //////////////////////////////////////////////////////////////////
@@ -74,6 +67,11 @@ implements ClobValueFacet {
return null;
}
+ @Override
+ protected Clob doParse(final Context context, final String entry) {
+ return null;
+ }
+
// //////////////////////////////////////////////////////////////////
// DefaultsProvider
// //////////////////////////////////////////////////////////////////
@@ -88,12 +86,12 @@ implements ClobValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Clob clob) {
+ public String toEncodedString(final Clob clob) {
return clob.getName() + ":" + clob.getMimeType().getBaseType() + ":" + clob.getChars();
}
@Override
- protected Clob doRestore(final String data) {
+ public Clob fromEncodedString(final String data) {
final int colonIdx = data.indexOf(':');
final String name = data.substring(0, colonIdx);
final int colon2Idx = data.indexOf(":", colonIdx+1);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datejodalocal/JodaLocalDateValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datejodalocal/JodaLocalDateValueSemanticsProvider.java
index bdb2770..da0c7b3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datejodalocal/JodaLocalDateValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datejodalocal/JodaLocalDateValueSemanticsProvider.java
@@ -78,6 +78,7 @@ public class JodaLocalDateValueSemanticsProvider extends ValueSemanticsProviderA
/**
* @deprecated possible memory leak issue, because this one is never cleared up
*/
+ @Deprecated
private static final ThreadLocal<String> OVERRIDE_TITLE_PATTERN = ThreadLocal.withInitial(()->null);
@@ -131,7 +132,7 @@ public class JodaLocalDateValueSemanticsProvider extends ValueSemanticsProviderA
}
- private void updateTitleStringFormatter(String titleStringFormatNameOrPattern) {
+ private void updateTitleStringFormatter(final String titleStringFormatNameOrPattern) {
titleStringFormatter = NAMED_TITLE_FORMATTERS.get(titleStringFormatNameOrPattern);
if (titleStringFormatter == null) {
titleStringFormatter = DateTimeFormat.forPattern(titleStringFormatNameOrPattern);
@@ -146,21 +147,21 @@ public class JodaLocalDateValueSemanticsProvider extends ValueSemanticsProviderA
@Override
protected LocalDate doParse(
- final String entry,
- final Object context) {
+ final Parser.Context context,
+ final String entry) {
updateTitleStringFormatterIfOverridden();
- LocalDate contextDate = (LocalDate) context;
+ //LocalDate contextDate = (LocalDate) context;
final String dateString = entry.trim().toUpperCase();
- if (dateString.startsWith("+") && contextDate != null) {
- return JodaLocalDateUtil.relativeDate(contextDate, dateString, true);
- } else if (dateString.startsWith("-") && contextDate != null) {
- return JodaLocalDateUtil.relativeDate(contextDate, dateString, false);
- } else {
- return parseDate(dateString, contextDate);
- }
+// if (dateString.startsWith("+") && contextDate != null) {
+// return JodaLocalDateUtil.relativeDate(contextDate, dateString, true);
+// } else if (dateString.startsWith("-") && contextDate != null) {
+// return JodaLocalDateUtil.relativeDate(contextDate, dateString, false);
+// } else {
+ return parseDate(dateString);
+// }
}
private void updateTitleStringFormatterIfOverridden() {
@@ -174,7 +175,7 @@ public class JodaLocalDateValueSemanticsProvider extends ValueSemanticsProviderA
updateTitleStringFormatter(overridePattern);
}
- private LocalDate parseDate(final String dateStr, final Object original) {
+ private LocalDate parseDate(final String dateStr) {
return JodaLocalDateUtil.parseDate(dateStr, PARSE_FORMATTERS);
}
@@ -193,19 +194,12 @@ public class JodaLocalDateValueSemanticsProvider extends ValueSemanticsProviderA
return JodaLocalDateUtil.titleString(f, date);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- final LocalDate date = (LocalDate) value;
- return JodaLocalDateUtil.titleString(DateTimeFormat.forPattern(usingMask), date);
- }
-
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final LocalDate date) {
+ public String toEncodedString(final LocalDate date) {
return encode(date);
}
@@ -214,7 +208,7 @@ public class JodaLocalDateValueSemanticsProvider extends ValueSemanticsProviderA
}
@Override
- protected LocalDate doRestore(final String data) {
+ public LocalDate fromEncodedString(final String data) {
try {
return parse(data);
} catch (final IllegalArgumentException e) {
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 aa55ae0..e482fbf 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
@@ -178,12 +178,12 @@ extends ValueSemanticsProviderAbstractTemporal<Date> {
}
@Override //[ISIS-2005] java.sql.Date requires special treatment, so overriding the default
- protected String doEncode(final Date date) {
+ public String toEncodedString(final Date date) {
return date.toString();
}
@Override //[ISIS-2005] java.sql.Date requires special treatment, so overriding the default
- protected Date doRestore(final String enString) {
+ public Date fromEncodedString(final String enString) {
return Date.valueOf(enString);
}
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 1d45dea..dc3da1b 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
@@ -173,12 +173,12 @@ extends ValueSemanticsProviderAbstractTemporal<DateTime> {
}
@Override
- protected String doEncode(final DateTime dateTime) {
+ public String toEncodedString(final DateTime dateTime) {
return encodingFormatter().print(dateTime);
}
@Override
- protected DateTime doRestore(final String data) {
+ public DateTime fromEncodedString(final String data) {
try {
return encodingFormatter().parseDateTime(data);
} catch (final IllegalArgumentException e) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProvider.java
index e826e4d..bc69ad9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProvider.java
@@ -37,7 +37,6 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
public class JodaLocalDateTimeValueSemanticsProvider
extends ValueSemanticsProviderAndFacetAbstract<LocalDateTime>
implements JodaLocalDateTimeValueFacet {
@@ -81,6 +80,7 @@ implements JodaLocalDateTimeValueFacet {
/**
* @deprecated possible memory leak issue, because this one is never cleared up
*/
+ @Deprecated
private static final ThreadLocal<String> OVERRIDE_TITLE_PATTERN = ThreadLocal.withInitial(()->null);
private static final List<DateTimeFormatter> PARSE_FORMATTERS = _Lists.newArrayList();
@@ -133,7 +133,7 @@ implements JodaLocalDateTimeValueFacet {
}
- private void updateTitleStringFormatter(String titleStringFormatNameOrPattern) {
+ private void updateTitleStringFormatter(final String titleStringFormatNameOrPattern) {
titleStringFormatter = NAMED_TITLE_FORMATTERS.get(titleStringFormatNameOrPattern);
if (titleStringFormatter == null) {
titleStringFormatter = DateTimeFormat.forPattern(titleStringFormatNameOrPattern);
@@ -148,21 +148,21 @@ implements JodaLocalDateTimeValueFacet {
@Override
protected LocalDateTime doParse(
- final String entry,
- final Object context) {
+ final Parser.Context context,
+ final String entry) {
updateTitleStringFormatterIfOverridden();
- LocalDateTime contextDateTime = (LocalDateTime) context;
+ //LocalDateTime contextDateTime = (LocalDateTime) context;
final String dateString = entry.trim().toUpperCase();
- if (dateString.startsWith("+") && contextDateTime != null) {
- return JodaLocalDateTimeUtil.relativeDateTime(contextDateTime, dateString, true);
- } else if (dateString.startsWith("-") && contextDateTime != null) {
- return JodaLocalDateTimeUtil.relativeDateTime(contextDateTime, dateString, false);
- } else {
- return parseDateTime(dateString, contextDateTime);
- }
+// if (dateString.startsWith("+") && contextDateTime != null) {
+// return JodaLocalDateTimeUtil.relativeDateTime(contextDateTime, dateString, true);
+// } else if (dateString.startsWith("-") && contextDateTime != null) {
+// return JodaLocalDateTimeUtil.relativeDateTime(contextDateTime, dateString, false);
+// } else {
+ return parseDateTime(dateString);
+// }
}
private void updateTitleStringFormatterIfOverridden() {
@@ -176,7 +176,7 @@ implements JodaLocalDateTimeValueFacet {
updateTitleStringFormatter(overridePattern);
}
- private LocalDateTime parseDateTime(final String dateStr, final Object original) {
+ private LocalDateTime parseDateTime(final String dateStr) {
return JodaLocalDateTimeUtil.parseDate(dateStr, PARSE_FORMATTERS);
}
@@ -195,19 +195,12 @@ implements JodaLocalDateTimeValueFacet {
return JodaLocalDateTimeUtil.titleString(f, dateTime);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- final LocalDateTime dateTime = (LocalDateTime) value;
- return JodaLocalDateTimeUtil.titleString(DateTimeFormat.forPattern(usingMask), dateTime);
- }
-
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final LocalDateTime localDateTime) {
+ public String toEncodedString(final LocalDateTime localDateTime) {
return encode(localDateTime);
}
@@ -216,7 +209,7 @@ implements JodaLocalDateTimeValueFacet {
}
@Override
- protected LocalDateTime doRestore(final String data) {
+ public LocalDateTime fromEncodedString(final String data) {
try {
return parse(data);
} catch (final IllegalArgumentException e) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/doubles/DoubleValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/doubles/DoubleValueSemanticsProviderAbstract.java
index 9e6da4f..75f66e2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/doubles/DoubleValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/doubles/DoubleValueSemanticsProviderAbstract.java
@@ -24,6 +24,7 @@ import java.text.ParseException;
import java.util.Locale;
import java.util.function.BiConsumer;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.core.metamodel.commons.LocaleUtil;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -31,7 +32,6 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
public abstract class DoubleValueSemanticsProviderAbstract
extends ValueSemanticsProviderAndFacetAbstract<Double>
implements DoubleFloatingPointValueFacet {
@@ -60,7 +60,7 @@ implements DoubleFloatingPointValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected Double doParse(final Object context, final String entry) {
+ protected Double doParse(final Parser.Context context, final String entry) {
try {
return Double.valueOf(format.parse(entry).doubleValue());
} catch (final ParseException e) {
@@ -77,22 +77,17 @@ implements DoubleFloatingPointValueFacet {
return titleString(format, value);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Double object) {
+ public String toEncodedString(final Double object) {
return object.toString();
}
@Override
- protected Double doRestore(final String data) {
+ public Double fromEncodedString(final String data) {
return Double.valueOf(data);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/floats/FloatValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/floats/FloatValueSemanticsProviderAbstract.java
index 4521776..792d8d9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/floats/FloatValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/floats/FloatValueSemanticsProviderAbstract.java
@@ -24,6 +24,7 @@ import java.text.ParseException;
import java.util.Locale;
import java.util.function.BiConsumer;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.core.metamodel.commons.LocaleUtil;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -31,7 +32,6 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
public class FloatValueSemanticsProviderAbstract
extends ValueSemanticsProviderAndFacetAbstract<Float>
implements FloatingPointValueFacet {
@@ -61,7 +61,7 @@ implements FloatingPointValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected Float doParse(final Object context, final String entry) {
+ protected Float doParse(final Parser.Context context, final String entry) {
try {
return Float.valueOf(format.parse(entry).floatValue());
} catch (final ParseException e) {
@@ -74,22 +74,17 @@ implements FloatingPointValueFacet {
return titleString(format, value);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Float object) {
+ public String toEncodedString(final Float object) {
return object.toString();
}
@Override
- protected Float doRestore(final String data) {
+ public Float fromEncodedString(final String data) {
return new Float(data);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/image/ImageValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/image/ImageValueSemanticsProviderAbstract.java
index f9e4017..7e84a34 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/image/ImageValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/image/ImageValueSemanticsProviderAbstract.java
@@ -44,7 +44,7 @@ implements ImageValueFacet {
}
@Override
- protected T doParse(final Object original, final String entry) {
+ protected T doParse(final Parser.Context context, final String entry) {
throw new UnexpectedCallException();
}
@@ -53,11 +53,6 @@ implements ImageValueFacet {
return "image";
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return "image";
- }
-
// -- toString
@Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/imageawt/JavaAwtImageValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/imageawt/JavaAwtImageValueSemanticsProvider.java
index ea98e28..bb473d6 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/imageawt/JavaAwtImageValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/imageawt/JavaAwtImageValueSemanticsProvider.java
@@ -53,7 +53,7 @@ extends ImageValueSemanticsProviderAbstract<BufferedImage> {
}
@Override @Nullable
- protected String doEncode(final @Nullable BufferedImage image) {
+ public String toEncodedString(final @Nullable BufferedImage image) {
if(image==null) {
return null;
}
@@ -61,7 +61,7 @@ extends ImageValueSemanticsProviderAbstract<BufferedImage> {
}
@Override @Nullable
- protected BufferedImage doRestore(final @Nullable String base64ImageData) {
+ public BufferedImage fromEncodedString(final @Nullable String base64ImageData) {
if(_Strings.isNullOrEmpty(base64ImageData)) {
return 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 92a3543..b665362 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
@@ -24,6 +24,7 @@ import java.text.ParseException;
import java.util.Locale;
import java.util.function.BiConsumer;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.core.metamodel.commons.LocaleUtil;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -31,7 +32,6 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
public abstract class IntValueSemanticsProviderAbstract
extends ValueSemanticsProviderAndFacetAbstract<Integer>
implements IntegerValueFacet {
@@ -65,7 +65,7 @@ implements IntegerValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected Integer doParse(final Object context, final String entry) {
+ protected Integer doParse(final Parser.Context context, final String entry) {
try {
return Integer.valueOf(format.parse(entry).intValue());
} catch (final ParseException e) {
@@ -78,22 +78,18 @@ implements IntegerValueFacet {
return titleString(format, value);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Integer object) {
+ public String toEncodedString(final Integer object) {
return object.toString();
}
@Override
- protected Integer doRestore(final String data) {
+ public Integer fromEncodedString(final String data) {
return Integer.parseInt(data);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/localrespath/LocalResourcePathValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/localrespath/LocalResourcePathValueSemanticsProvider.java
index f70f2bc..e420384 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/localrespath/LocalResourcePathValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/localrespath/LocalResourcePathValueSemanticsProvider.java
@@ -59,7 +59,7 @@ extends ValueSemanticsProviderAndFacetAbstract<LocalResourcePath> implements Loc
// //////////////////////////////////////////////////////////////////
@Override
- protected LocalResourcePath doParse(final Object context, final String entry) {
+ protected LocalResourcePath doParse(final Parser.Context context, final String entry) {
if (entry.trim().equals("")) {
return null;
}
@@ -78,24 +78,19 @@ extends ValueSemanticsProviderAndFacetAbstract<LocalResourcePath> implements Loc
: "";
}
- @Override
- public String titleStringWithMask(final Object object, final String usingMask) {
- return titleString(object);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final LocalResourcePath localResourcePath) {
+ public String toEncodedString(final LocalResourcePath localResourcePath) {
return localResourcePath != null
? localResourcePath.getValue()
: "NULL";
}
@Override
- protected LocalResourcePath doRestore(final String data) {
+ public LocalResourcePath fromEncodedString(final String data) {
if("NULL".equals(data)) {
return null;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/longs/LongValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/longs/LongValueSemanticsProviderAbstract.java
index 64085b1..0e4d114 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/longs/LongValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/longs/LongValueSemanticsProviderAbstract.java
@@ -24,6 +24,7 @@ import java.text.ParseException;
import java.util.Locale;
import java.util.function.BiConsumer;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.core.metamodel.commons.LocaleUtil;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -31,7 +32,6 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
public abstract class LongValueSemanticsProviderAbstract
extends ValueSemanticsProviderAndFacetAbstract<Long>
implements LongValueFacet {
@@ -61,7 +61,7 @@ implements LongValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected Long doParse(final Object context, final String entry) {
+ protected Long doParse(final Parser.Context context, final String entry) {
try {
return Long.valueOf(format.parse(entry).longValue());
} catch (final ParseException e) {
@@ -74,22 +74,17 @@ implements LongValueFacet {
return titleString(format, value);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Long object) {
+ public String toEncodedString(final Long object) {
return object.toString();
}
@Override
- protected Long doRestore(final String data) {
+ public Long fromEncodedString(final String data) {
return Long.parseLong(data);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/markup/MarkupValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/markup/MarkupValueSemanticsProvider.java
index 4cf9e03..c6bacde 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/markup/MarkupValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/markup/MarkupValueSemanticsProvider.java
@@ -55,8 +55,8 @@ implements MarkupValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected Markup doParse(final Object context, final String html) {
- return doRestore(html);
+ protected Markup doParse(final Parser.Context context, final String html) {
+ return fromEncodedString(html);
}
@Override
@@ -64,11 +64,6 @@ implements MarkupValueFacet {
return object != null? ((Markup)object).asHtml(): "[null]";
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
// //////////////////////////////////////////////////////////////////
// MarkupValueFacet
// //////////////////////////////////////////////////////////////////
@@ -93,12 +88,12 @@ implements MarkupValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Markup markup) {
+ public String toEncodedString(final Markup markup) {
return markup.asHtml();
}
@Override
- protected Markup doRestore(final String html) {
+ public Markup fromEncodedString(final String html) {
return new Markup(html);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/password/PasswordValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/password/PasswordValueSemanticsProvider.java
index 9484cd9..c636086 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/password/PasswordValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/password/PasswordValueSemanticsProvider.java
@@ -26,7 +26,6 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
public class PasswordValueSemanticsProvider
extends ValueSemanticsProviderAndFacetAbstract<Password>
implements PasswordValueFacet {
@@ -54,7 +53,7 @@ implements PasswordValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected Password doParse(final Object context, final String text) {
+ protected Password doParse(final Parser.Context context, final String text) {
return new Password(text);
}
@@ -63,22 +62,17 @@ implements PasswordValueFacet {
return object == null ? "" : password(object).toString();
}
- @Override
- public String titleStringWithMask(final Object object, final String usingMask) {
- return titleString(object);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Password object) {
+ public String toEncodedString(final Password object) {
return password(object).getPassword();
}
@Override
- protected Password doRestore(final String data) {
+ public Password fromEncodedString(final String data) {
return new Password(data);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/shortint/ShortValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/shortint/ShortValueSemanticsProviderAbstract.java
index ab1ac5e..1f78421 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/shortint/ShortValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/shortint/ShortValueSemanticsProviderAbstract.java
@@ -24,6 +24,7 @@ import java.text.ParseException;
import java.util.Locale;
import java.util.function.BiConsumer;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.core.metamodel.commons.LocaleUtil;
import org.apache.isis.core.metamodel.facetapi.Facet;
@@ -31,7 +32,6 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
public class ShortValueSemanticsProviderAbstract
extends ValueSemanticsProviderAndFacetAbstract<Short>
implements ShortValueFacet {
@@ -63,7 +63,7 @@ implements ShortValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected Short doParse(final Object context, final String entry) {
+ protected Short doParse(final Parser.Context context, final String entry) {
try {
return Short.valueOf(format.parse(entry).shortValue());
} catch (final ParseException e) {
@@ -76,22 +76,17 @@ implements ShortValueFacet {
return titleString(format, value);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(new DecimalFormat(usingMask), value);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final Short object) {
+ public String toEncodedString(final Short object) {
return object.toString();
}
@Override
- protected Short doRestore(final String data) {
+ public Short fromEncodedString(final String data) {
return Short.parseShort(data);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/string/StringValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/string/StringValueSemanticsProvider.java
index d22ef5c..59f2822 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/string/StringValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/string/StringValueSemanticsProvider.java
@@ -52,7 +52,7 @@ implements StringValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected String doParse(final Object context, final String entry) {
+ protected String doParse(final Parser.Context context, final String entry) {
if (entry.trim().equals("")) {
return null;
} else {
@@ -66,17 +66,12 @@ implements StringValueFacet {
return string;
}
- @Override
- public String titleStringWithMask(final Object object, final String usingMask) {
- return titleString(object);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final String text) {
+ public String toEncodedString(final String text) {
if (text.equals("NULL") || isEscaped(text)) {
return escapeText(text);
} else {
@@ -85,7 +80,7 @@ implements StringValueFacet {
}
@Override
- protected String doRestore(final String data) {
+ public String fromEncodedString(final String data) {
if (isEscaped(data)) {
return data.substring(1);
} else {
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/temporal/TemporalValueSemanticsProviderAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/temporal/TemporalValueSemanticsProviderAbstract.java
index cf436b9..9c06bb1 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/temporal/TemporalValueSemanticsProviderAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/temporal/TemporalValueSemanticsProviderAbstract.java
@@ -34,6 +34,7 @@ import java.util.stream.Stream;
import org.springframework.lang.Nullable;
import org.apache.isis.applib.adapters.EncodingException;
+import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.exceptions.recoverable.TextEntryParseException;
import org.apache.isis.commons.collections.Can;
import org.apache.isis.commons.internal.base._Casts;
@@ -80,15 +81,15 @@ implements TemporalValueFacet<T> {
protected final BiFunction<TemporalAdjust, T, T> adjuster;
public TemporalValueSemanticsProviderAbstract(
- Class<? extends Facet> adapterFacetType,
- TemporalCharacteristic temporalCharacteristic,
- OffsetCharacteristic offsetCharacteristic,
- FacetHolder holder,
- Class<T> valueType,
- int typicalLength,
- int maxLength,
- TemporalQuery<T> query,
- BiFunction<TemporalAdjust, T, T> adjuster) {
+ final Class<? extends Facet> adapterFacetType,
+ final TemporalCharacteristic temporalCharacteristic,
+ final OffsetCharacteristic offsetCharacteristic,
+ final FacetHolder holder,
+ final Class<T> valueType,
+ final int typicalLength,
+ final int maxLength,
+ final TemporalQuery<T> query,
+ final BiFunction<TemporalAdjust, T, T> adjuster) {
super(adapterFacetType, holder, valueType, typicalLength, maxLength,
Immutability.IMMUTABLE, EqualByContent.HONOURED, /*DEFAULT_VALUE*/ null);
@@ -111,15 +112,15 @@ implements TemporalValueFacet<T> {
visitor.accept("offsetCharacteristic", getOffsetCharacteristic());
}
- protected void setEncodingFormatter(DateTimeFormatter encodingFormatter) {
+ protected void setEncodingFormatter(final DateTimeFormatter encodingFormatter) {
this.encodingFormatter = encodingFormatter;
}
- protected void addNamedFormat(String name, String pattern) {
+ protected void addNamedFormat(final String name, final String pattern) {
namedFormatters.put(name, DateTimeFormatter.ofPattern(pattern, Locale.getDefault()));
}
- protected Optional<FormatStyle> lookupFormatStyle(String styleName) {
+ protected Optional<FormatStyle> lookupFormatStyle(final String styleName) {
if(styleName==null) {
return Optional.empty();
}
@@ -128,16 +129,16 @@ implements TemporalValueFacet<T> {
.findFirst();
}
- protected Optional<DateTimeFormatter> lookupNamedFormatter(String formatName) {
+ protected Optional<DateTimeFormatter> lookupNamedFormatter(final String formatName) {
return Optional.ofNullable(namedFormatters.get(formatName));
}
- protected DateTimeFormatter lookupNamedFormatterElseFail(String formatName) {
+ protected DateTimeFormatter lookupNamedFormatterElseFail(final String formatName) {
return lookupNamedFormatter(formatName)
.orElseThrow(()->_Exceptions.noSuchElement("unknown format name %s", formatName));
}
- protected Optional<DateTimeFormatter> formatterFromPattern(String pattern) {
+ protected Optional<DateTimeFormatter> formatterFromPattern(final String pattern) {
try {
return Optional.of(DateTimeFormatter.ofPattern(pattern, Locale.getDefault()));
} catch (Exception e) {
@@ -177,12 +178,12 @@ implements TemporalValueFacet<T> {
// -- ENCODER/DECODER
@Override
- protected String doEncode(final T temporal) {
+ public String toEncodedString(final T temporal) {
return encodingFormatter.format(temporal);
}
@Override
- protected T doRestore(final String data) {
+ public T fromEncodedString(final String data) {
try {
return encodingFormatter.parse(data, query);
} catch (final IllegalArgumentException e) {
@@ -194,8 +195,8 @@ implements TemporalValueFacet<T> {
@Override
protected T doParse(
- final String entry,
- final Object context) {
+ final Parser.Context context,
+ final String entry) {
T contextTemporal = _Casts.uncheckedCast(context);
@@ -210,7 +211,7 @@ implements TemporalValueFacet<T> {
return parse(temporalString, parsers);
}
- private T parse(String dateStr, Iterable<Function<String, T>> parsers) {
+ private T parse(final String dateStr, final Iterable<Function<String, T>> parsers) {
for(val parser: parsers) {
try {
return parser.apply(dateStr);
@@ -235,14 +236,7 @@ implements TemporalValueFacet<T> {
return titleString(titleFormatter, temporal);
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- val temporal = _Casts.<T>uncheckedCast(value);
- val formatter = DateTimeFormatter.ofPattern(usingMask, Locale.getDefault());
- return titleString(formatter, temporal);
- }
-
- private String titleString(@NonNull DateTimeFormatter formatter, @Nullable T temporal) {
+ private String titleString(@NonNull final DateTimeFormatter formatter, @Nullable final T temporal) {
return temporal != null ? formatter.format(temporal) : "";
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java
index 1b5f3ee..573c297 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/treenode/TreeNodeValueSemanticsProvider.java
@@ -21,9 +21,11 @@ package org.apache.isis.core.metamodel.facets.value.treenode;
import org.apache.isis.applib.adapters.DefaultsProvider;
import org.apache.isis.applib.adapters.EncoderDecoder;
import org.apache.isis.applib.adapters.Parser;
+import org.apache.isis.applib.adapters.Parser.Context;
import org.apache.isis.applib.graph.tree.TreeNode;
import org.apache.isis.applib.graph.tree.TreeState;
import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
+import org.apache.isis.applib.value.Blob;
import org.apache.isis.commons.internal.memento._Mementos;
import org.apache.isis.commons.internal.memento._Mementos.Memento;
import org.apache.isis.commons.internal.memento._Mementos.SerializingAdapter;
@@ -32,7 +34,8 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
@SuppressWarnings("rawtypes")
-public class TreeNodeValueSemanticsProvider extends ValueSemanticsProviderAndFacetAbstract<TreeNode>
+public class TreeNodeValueSemanticsProvider
+extends ValueSemanticsProviderAndFacetAbstract<TreeNode>
implements TreeNodeValueFacet {
private static final int TYPICAL_LENGTH = 0;
@@ -62,11 +65,6 @@ implements TreeNodeValueFacet {
return object != null ? ((TreeNode<?>)object).toString() : "[null]"; //TODO implement
}
- @Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
// //////////////////////////////////////////////////////////////////
// Parser
// //////////////////////////////////////////////////////////////////
@@ -76,6 +74,11 @@ implements TreeNodeValueFacet {
return null;
}
+ @Override
+ protected TreeNode doParse(final Context context, final String entry) {
+ return null;
+ }
+
// //////////////////////////////////////////////////////////////////
// DefaultsProvider
// //////////////////////////////////////////////////////////////////
@@ -90,7 +93,7 @@ implements TreeNodeValueFacet {
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final TreeNode treeNode) {
+ public String toEncodedString(final TreeNode treeNode) {
final Memento memento = newMemento();
memento.put("primaryValue", treeNode.getValue());
@@ -101,7 +104,7 @@ implements TreeNodeValueFacet {
@SuppressWarnings("unchecked")
@Override
- protected TreeNode<?> doRestore(final String input) {
+ public TreeNode<?> fromEncodedString(final String input) {
final Memento memento = parseMemento(input);
return TreeNode.of(
memento.get("primaryValue", Object.class),
@@ -124,7 +127,7 @@ implements TreeNodeValueFacet {
return _Mementos.create(codec, serializer);
}
- private _Mementos.Memento parseMemento(String input){
+ private _Mementos.Memento parseMemento(final String input){
final UrlEncodingService codec = getServiceRegistry().lookupServiceElseFail(UrlEncodingService.class);
final SerializingAdapter serializer = getServiceRegistry().lookupServiceElseFail(SerializingAdapter.class);
return _Mementos.parse(codec, serializer, input);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/url/URLValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/url/URLValueSemanticsProvider.java
index ae780b5..46b2850 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/url/URLValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/url/URLValueSemanticsProvider.java
@@ -27,7 +27,9 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-public class URLValueSemanticsProvider extends ValueSemanticsProviderAndFacetAbstract<java.net.URL> implements URLValueFacet {
+public class URLValueSemanticsProvider
+extends ValueSemanticsProviderAndFacetAbstract<java.net.URL>
+implements URLValueFacet {
private static final Class<? extends Facet> type() {
@@ -56,7 +58,7 @@ public class URLValueSemanticsProvider extends ValueSemanticsProviderAndFacetAbs
// //////////////////////////////////////////////////////////////////
@Override
- protected java.net.URL doParse(final Object context, final String entry) {
+ protected java.net.URL doParse(final Parser.Context context, final String entry) {
if (entry.trim().equals("")) {
return null;
}
@@ -74,22 +76,17 @@ public class URLValueSemanticsProvider extends ValueSemanticsProviderAndFacetAbs
return object != null? object.toString(): "";
}
- @Override
- public String titleStringWithMask(final Object object, final String usingMask) {
- return titleString(object);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final java.net.URL url) {
+ public String toEncodedString(final java.net.URL url) {
return url != null? url.toString(): "NULL";
}
@Override
- protected java.net.URL doRestore(final String data) {
+ public java.net.URL fromEncodedString(final String data) {
if("NULL".equals(data)) {
return null;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/uuid/UUIDValueSemanticsProvider.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/uuid/UUIDValueSemanticsProvider.java
index 7c1a99d..54ffd0f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/uuid/UUIDValueSemanticsProvider.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/value/uuid/UUIDValueSemanticsProvider.java
@@ -27,8 +27,9 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facets.object.value.vsp.ValueSemanticsProviderAndFacetAbstract;
import org.apache.isis.core.metamodel.spec.ManagedObject;
-
-public class UUIDValueSemanticsProvider extends ValueSemanticsProviderAndFacetAbstract<UUID> implements UUIDValueFacet {
+public class UUIDValueSemanticsProvider
+extends ValueSemanticsProviderAndFacetAbstract<UUID>
+implements UUIDValueFacet {
private static final Class<? extends Facet> type() {
return UUIDValueFacet.class;
@@ -55,7 +56,7 @@ public class UUIDValueSemanticsProvider extends ValueSemanticsProviderAndFacetAb
// //////////////////////////////////////////////////////////////////
@Override
- protected UUID doParse(final Object context, final String entry) {
+ protected UUID doParse(final Parser.Context context, final String entry) {
if (entry.trim().equals("")) {
return null;
} else {
@@ -68,22 +69,17 @@ public class UUIDValueSemanticsProvider extends ValueSemanticsProviderAndFacetAb
return object == null ? "" : object.toString();
}
- @Override
- public String titleStringWithMask(final Object object, final String usingMask) {
- return titleString(object);
- }
-
// //////////////////////////////////////////////////////////////////
// EncoderDecoder
// //////////////////////////////////////////////////////////////////
@Override
- protected String doEncode(final UUID object) {
+ public String toEncodedString(final UUID object) {
return object.toString();
}
@Override
- protected UUID doRestore(final String data) {
+ public UUID fromEncodedString(final String data) {
return UUID.fromString(data);
}
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProviderTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProviderTest.java
index 025c557..971b0f4 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProviderTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/value/datetimejodalocal/JodaLocalDateTimeValueSemanticsProviderTest.java
@@ -50,7 +50,7 @@ public class JodaLocalDateTimeValueSemanticsProviderTest {
metaModelContext = MetaModelContext_forTesting.builder()
.build();
-
+
metaModelContext.getConfiguration();
context.checking(new Expectations() {
@@ -61,7 +61,7 @@ public class JodaLocalDateTimeValueSemanticsProviderTest {
});
provider = new JodaLocalDateTimeValueSemanticsProvider(mockFacetHolder);
-
+
}
@@ -70,8 +70,8 @@ public class JodaLocalDateTimeValueSemanticsProviderTest {
final LocalDateTime t0 = LocalDateTime.now();
- final String encoded = provider.doEncode(t0);
- final LocalDateTime t1 = provider.doRestore(encoded);
+ final String encoded = provider.toEncodedString(t0);
+ final LocalDateTime t1 = provider.fromEncodedString(encoded);
assertThat(t0, is(equalTo(t1)));
}
diff --git a/valuetypes/markdown/metamodel/src/main/java/org/apache/isis/valuetypes/markdown/metamodel/facets/MarkdownValueSemanticsProvider.java b/valuetypes/markdown/metamodel/src/main/java/org/apache/isis/valuetypes/markdown/metamodel/facets/MarkdownValueSemanticsProvider.java
index 7f49342..271c4c2 100644
--- a/valuetypes/markdown/metamodel/src/main/java/org/apache/isis/valuetypes/markdown/metamodel/facets/MarkdownValueSemanticsProvider.java
+++ b/valuetypes/markdown/metamodel/src/main/java/org/apache/isis/valuetypes/markdown/metamodel/facets/MarkdownValueSemanticsProvider.java
@@ -52,8 +52,8 @@ implements MarkdownValueFacet {
@Override
- protected Markdown doParse(final Object context, final String html) {
- return doRestore(html);
+ protected Markdown doParse(final Parser.Context context, final String html) {
+ return fromEncodedString(html);
}
@Override
@@ -62,17 +62,12 @@ implements MarkdownValueFacet {
}
@Override
- public String titleStringWithMask(final Object value, final String usingMask) {
- return titleString(value);
- }
-
- @Override
- protected String doEncode(final Markdown markdown) {
+ public String toEncodedString(final Markdown markdown) {
return markdown.getMarkdown();
}
@Override
- protected Markdown doRestore(final String markdown) {
+ public Markdown fromEncodedString(final String markdown) {
return new Markdown(markdown);
}