diff options
author | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2024-03-24 23:14:42 -0400 |
---|---|---|
committer | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2024-04-26 16:23:20 -0400 |
commit | 8832d144aab8cf3ce0b42766d1945a5d1e39a27c (patch) | |
tree | 6732431ee5852618e14b1efaba87415cf1904003 /src | |
parent | e2cb2a17ec680fd80925bec205b8b4aaa45c885d (diff) | |
download | Skyblocker-8832d144aab8cf3ce0b42766d1945a5d1e39a27c.tar.gz Skyblocker-8832d144aab8cf3ce0b42766d1945a5d1e39a27c.tar.bz2 Skyblocker-8832d144aab8cf3ce0b42766d1945a5d1e39a27c.zip |
Use Object2ObjectOpenHashMap
Diffstat (limited to 'src')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/item/MuseumItemCache.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/MuseumItemCache.java b/src/main/java/de/hysky/skyblocker/skyblock/item/MuseumItemCache.java index 0a3eec5c..e790c401 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/MuseumItemCache.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/MuseumItemCache.java @@ -160,7 +160,11 @@ public class MuseumItemCache { .fieldOf("collectedItemIds") .forGetter(i -> new ObjectOpenHashSet<String>(i.collectedItemIds()))) .apply(instance, ProfileMuseumData::new)); - private static final Codec<Map<String, Map<String, ProfileMuseumData>>> SERIALIZATION_CODEC = Codec.unboundedMap(Codec.STRING, Codec.unboundedMap(Codec.STRING, CODEC)); + //Mojang's internal Codec implementation uses ImmutableMaps so we'll just xmap those away and type safety while we're at it :') + @SuppressWarnings({ "unchecked", "rawtypes" }) + private static final Codec<Map<String, Map<String, ProfileMuseumData>>> SERIALIZATION_CODEC = Codec.unboundedMap(Codec.STRING, Codec.unboundedMap(Codec.STRING, CODEC) + .xmap(Object2ObjectOpenHashMap::new, Object2ObjectOpenHashMap::new)) + .xmap(Object2ObjectOpenHashMap::new, m -> (Map) new Object2ObjectOpenHashMap(m)); private boolean stale() { return System.currentTimeMillis() > lastUpdated + MAX_AGE; |