From 38c51cbf7b106bee5e151efd6de96f1795623144 Mon Sep 17 00:00:00 2001 From: Michael Hoennig Date: Thu, 14 Nov 2024 16:09:27 +0100 Subject: [PATCH] fix a FIXME regarding Object->String --- .../config/JsonObjectMapperConfiguration.java | 2 -- .../hs/office/scenarios/TemplateResolver.java | 12 ++++++------ 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/main/java/net/hostsharing/hsadminng/config/JsonObjectMapperConfiguration.java b/src/main/java/net/hostsharing/hsadminng/config/JsonObjectMapperConfiguration.java index d7d535c3..d5ff80d9 100644 --- a/src/main/java/net/hostsharing/hsadminng/config/JsonObjectMapperConfiguration.java +++ b/src/main/java/net/hostsharing/hsadminng/config/JsonObjectMapperConfiguration.java @@ -3,7 +3,6 @@ package net.hostsharing.hsadminng.config; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.SerializationFeature; -import com.fasterxml.jackson.databind.module.SimpleModule; import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; import org.openapitools.jackson.nullable.JsonNullableModule; import org.springframework.context.annotation.Bean; @@ -11,7 +10,6 @@ import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; -import java.math.BigDecimal; @Configuration public class JsonObjectMapperConfiguration { diff --git a/src/test/java/net/hostsharing/hsadminng/hs/office/scenarios/TemplateResolver.java b/src/test/java/net/hostsharing/hsadminng/hs/office/scenarios/TemplateResolver.java index b6fac263..7197e900 100644 --- a/src/test/java/net/hostsharing/hsadminng/hs/office/scenarios/TemplateResolver.java +++ b/src/test/java/net/hostsharing/hsadminng/hs/office/scenarios/TemplateResolver.java @@ -22,25 +22,25 @@ public class TemplateResolver { enum PlaceholderPrefix { RAW('%') { @Override - String convert(final Object value, final Resolver resolver) { + String convert(final String value, final Resolver resolver) { return value != null ? value.toString() : ""; } }, JSON_QUOTED('$'){ @Override - String convert(final Object value, final Resolver resolver) { + String convert(final String value, final Resolver resolver) { return jsonQuoted(value); } }, URI_ENCODED('&'){ @Override - String convert(final Object value, final Resolver resolver) { + String convert(final String value, final Resolver resolver) { return value != null ? URLEncoder.encode(value.toString(), StandardCharsets.UTF_8) : ""; } }, COMMENT('#'){ @Override - String convert(final Object value, final Resolver resolver) { + String convert(final String value, final Resolver resolver) { return resolver == DROP_COMMENTS ? "" : value.toString(); } }; @@ -59,7 +59,7 @@ public class TemplateResolver { return Arrays.stream(values()).filter(p -> p.prefixChar == givenChar).findFirst().orElseThrow(); } - abstract String convert(final Object value, final Resolver resolver); // FIXME: why Object and not String? + abstract String convert(final String value, final Resolver resolver); // FIXME: why Object and not String? } private final static Pattern pattern = Pattern.compile(",(\\s*})", Pattern.MULTILINE); @@ -136,7 +136,7 @@ public class TemplateResolver { } } final var content = new TemplateResolver(placeholder.toString(), properties).resolve(resolver); - final var value = intro != '#' ? propVal(content) : content; + final var value = intro != '#' ? propVal(content).toString() : content; resolved.append( PlaceholderPrefix.ofPrefixChar(intro).convert(value, resolver) );