From 77c231f5797f17d867bf9394aca3fb8e9b2d16c8 Mon Sep 17 00:00:00 2001 From: Guus Lieben Date: Tue, 19 Dec 2023 13:10:15 +0100 Subject: [PATCH] #1034 Minor improvements --- .../properties/ConfigurationObjectPostProcessor.java | 2 +- .../config/properties/StandardURIConfigProcessor.java | 8 ++++---- .../main/java/org/dockbox/hartshorn/util/TypeUtils.java | 5 +++++ 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/ConfigurationObjectPostProcessor.java b/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/ConfigurationObjectPostProcessor.java index e98f3f8795..6a33afabf6 100644 --- a/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/ConfigurationObjectPostProcessor.java +++ b/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/ConfigurationObjectPostProcessor.java @@ -50,7 +50,7 @@ private T createOrUpdate(ComponentKey key, T instance, ConfigurationObjec Option configuration; Class type = instance == null ? key.type() - : TypeUtils.adjustWildcards(instance.getClass(), Class.class); + : TypeUtils.getClass(instance); if (instance == null) { configuration = this.propertyHolder.get(configurationObject.prefix(), type); diff --git a/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/StandardURIConfigProcessor.java b/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/StandardURIConfigProcessor.java index af35c8205b..3e8a962458 100644 --- a/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/StandardURIConfigProcessor.java +++ b/hartshorn-config/src/main/java/org/dockbox/hartshorn/config/properties/StandardURIConfigProcessor.java @@ -28,7 +28,7 @@ import org.dockbox.hartshorn.config.FileFormats; import org.dockbox.hartshorn.config.ObjectMapper; import org.dockbox.hartshorn.config.ObjectMappingException; -import org.dockbox.hartshorn.util.TypeUtils; +import org.dockbox.hartshorn.util.GenericType; import jakarta.inject.Singleton; @@ -49,10 +49,10 @@ public void process(ApplicationContext context, Set con } try { - Map cache = TypeUtils.adjustWildcards(context.get(ObjectMapper.class) + Map cache = context.get(ObjectMapper.class) .fileType(format) - .read(uri, Map.class) - .orElseGet(HashMap::new), Map.class); + .read(uri, new GenericType>() {}) + .orElseGet(HashMap::new); context.log().debug("Located " + cache.size() + " properties in " + uri.getPath()); context.get(PropertyHolder.class).set(cache); diff --git a/hartshorn-util/src/main/java/org/dockbox/hartshorn/util/TypeUtils.java b/hartshorn-util/src/main/java/org/dockbox/hartshorn/util/TypeUtils.java index 1c62659f7d..561cd70a7e 100644 --- a/hartshorn-util/src/main/java/org/dockbox/hartshorn/util/TypeUtils.java +++ b/hartshorn-util/src/main/java/org/dockbox/hartshorn/util/TypeUtils.java @@ -197,4 +197,9 @@ public static boolean isAssignable(Class source, Class target) { } return source.isPrimitive() && TypeUtils.isPrimitiveWrapper(target, source); } + + public static Class getClass(T instance) { + //noinspection unchecked + return (Class) instance.getClass(); + } }