From 5b1877bc1f4b5121ecd5befdc9ebb5e36da5c847 Mon Sep 17 00:00:00 2001 From: sowgro Date: Fri, 14 Nov 2025 17:05:51 -0500 Subject: more robust map serializer should be working --- src/main/java/design/persistence/JSONPersonalDatabase.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/main/java/design/persistence/JSONPersonalDatabase.java') diff --git a/src/main/java/design/persistence/JSONPersonalDatabase.java b/src/main/java/design/persistence/JSONPersonalDatabase.java index 30c280a..a2908f3 100644 --- a/src/main/java/design/persistence/JSONPersonalDatabase.java +++ b/src/main/java/design/persistence/JSONPersonalDatabase.java @@ -36,7 +36,7 @@ public class JSONPersonalDatabase implements PersonalDatabase { private JSONPersonalDatabase(String filename) { this.file = new File(filename); this.cache = new HashMap<>(); - this.mapper = JsonMapper.builder().enable(StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION).build();; + this.mapper = JsonMapper.builder().enable(StreamReadFeature.INCLUDE_SOURCE_IN_LOCATION).build(); // TODO: Once the saved JSON matches the model, consider removing. // TEMP: tolerate unknown props while the model stabilizes @@ -47,6 +47,8 @@ public class JSONPersonalDatabase implements PersonalDatabase { module.addSerializer(Course.class, new Serializers.CourseIdSerializer()); module.addSerializer(League.class, new Serializers.LeagueIDSerializer()); module.addDeserializer(League.class, new Serializers.LeagueIDDeserializer()); + module.addSerializer(Map.class, new Serializers.MapListSerializer()); + module.addDeserializer(Map.class, new Serializers.MapListDeserializer()); mapper.registerModule(module); mapper.setVisibility(PropertyAccessor.FIELD, JsonAutoDetect.Visibility.ANY); mapper.registerModule(new ParameterNamesModule(JsonCreator.Mode.PROPERTIES)); -- cgit v1.2.3