diff --git a/common/src/main/java/org/embeddedt/modernfix/FileWalker.java b/common/src/main/java/org/embeddedt/modernfix/FileWalker.java deleted file mode 100644 index 1d0e1b01..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/FileWalker.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.embeddedt.modernfix; - -import com.google.common.cache.CacheLoader; -import org.apache.commons.lang3.tuple.Pair; - -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.List; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -public class FileWalker extends CacheLoader, List> { - public static final FileWalker INSTANCE = new FileWalker(); - - @Override - public List load(Pair key) throws Exception { - try(Stream stream = Files.walk(key.getLeft(), key.getRight())) { - return stream.collect(Collectors.toList()); - } - } -} diff --git a/common/src/main/java/org/embeddedt/modernfix/sound/SoundBufferCache.java b/common/src/main/java/org/embeddedt/modernfix/sound/SoundBufferCache.java deleted file mode 100644 index 36a10300..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/sound/SoundBufferCache.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.embeddedt.modernfix.sound; - -import com.mojang.blaze3d.audio.SoundBuffer; -import net.minecraft.resources.ResourceLocation; - -import java.util.LinkedHashMap; -import java.util.Map; -import java.util.concurrent.CompletableFuture; - -public class SoundBufferCache extends LinkedHashMap> { - @Override - protected boolean removeEldestEntry(Map.Entry> eldest) { - return super.removeEldestEntry(eldest); - } -} diff --git a/common/src/main/java/org/embeddedt/modernfix/tickables/LoadableTickableObject.java b/common/src/main/java/org/embeddedt/modernfix/tickables/LoadableTickableObject.java deleted file mode 100644 index 8cb32cd5..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/tickables/LoadableTickableObject.java +++ /dev/null @@ -1,47 +0,0 @@ -package org.embeddedt.modernfix.tickables; - -import org.jetbrains.annotations.Nullable; - -import java.util.function.Consumer; -import java.util.function.Supplier; - -public class LoadableTickableObject implements TickableObject { - private volatile int ticksInactive = 0; - private final int timeout; - private final Supplier loader; - private final Consumer finalizer; - private volatile T theObject = null; - - public LoadableTickableObject(int timeout, Supplier loader, Consumer finalizer) { - this(timeout, loader, finalizer, null); - } - - public LoadableTickableObject(int timeout, Supplier loader, Consumer finalizer, @Nullable T initialValue) { - this.timeout = timeout; - this.loader = loader; - this.finalizer = finalizer; - this.theObject = initialValue; - } - - public T get() { - synchronized (this) { - ticksInactive++; - T obj = theObject; - if(obj == null) { - obj = loader.get(); - theObject = obj; - } - return obj; - } - } - - public final void tick() { - synchronized (this) { - ticksInactive++; - if(ticksInactive >= this.timeout) { - finalizer.accept(theObject); - theObject = null; - } - } - } -} diff --git a/common/src/main/java/org/embeddedt/modernfix/tickables/TickableObject.java b/common/src/main/java/org/embeddedt/modernfix/tickables/TickableObject.java deleted file mode 100644 index cc31c47f..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/tickables/TickableObject.java +++ /dev/null @@ -1,5 +0,0 @@ -package org.embeddedt.modernfix.tickables; - -public interface TickableObject { - void tick(); -} diff --git a/common/src/main/java/org/embeddedt/modernfix/tickables/TickableObjectManager.java b/common/src/main/java/org/embeddedt/modernfix/tickables/TickableObjectManager.java deleted file mode 100644 index 4ec5f8e8..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/tickables/TickableObjectManager.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.embeddedt.modernfix.tickables; - -import java.util.List; -import java.util.concurrent.CopyOnWriteArrayList; - -public class TickableObjectManager { - private static final List TICKABLE_OBJECT_LIST = new CopyOnWriteArrayList<>(); - - public static void register(TickableObject object) { - TICKABLE_OBJECT_LIST.add(object); - } - - public static void runTick() { - for(TickableObject o : TICKABLE_OBJECT_LIST) { - o.tick(); - } - } -} diff --git a/common/src/main/java/org/embeddedt/modernfix/util/BakeReason.java b/common/src/main/java/org/embeddedt/modernfix/util/BakeReason.java deleted file mode 100644 index e7074389..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/util/BakeReason.java +++ /dev/null @@ -1,25 +0,0 @@ -package org.embeddedt.modernfix.util; - -import org.embeddedt.modernfix.ModernFix; - -public enum BakeReason { - FREEZE, - REMOTE_SNAPSHOT_INJECT, - LOCAL_SNAPSHOT_INJECT, - REVERT, - UNKNOWN; - private static BakeReason currentBakeReason = null; - private static boolean bakeReasonWarned = false; - - public static BakeReason getCurrentBakeReason() { - if(currentBakeReason == null && !bakeReasonWarned) { - ModernFix.LOGGER.warn("No bake reason found, mixin probably not applied correctly", new IllegalStateException()); - bakeReasonWarned = false; - } - return currentBakeReason; - } - - public static void setCurrentBakeReason(BakeReason reason) { - currentBakeReason = reason; - } -} diff --git a/common/src/main/java/org/embeddedt/modernfix/util/CanonizingStringMap.java b/common/src/main/java/org/embeddedt/modernfix/util/CanonizingStringMap.java deleted file mode 100644 index 015e74a4..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/util/CanonizingStringMap.java +++ /dev/null @@ -1,48 +0,0 @@ -package org.embeddedt.modernfix.util; - -import com.google.common.base.Function; -import com.google.common.collect.Interner; -import com.google.common.collect.Interners; -import com.google.common.collect.Maps; - -import java.util.HashMap; -import java.util.Map; - -/** - * Replacement backing map for CompoundTags that interns keys. - */ -public class CanonizingStringMap extends HashMap { - private static final Interner KEY_INTERNER = Interners.newWeakInterner(); - - private static String intern(String key) { - return key != null ? KEY_INTERNER.intern(key) : null; - } - - public CanonizingStringMap() { - super(); - } - - @Override - public T put(String key, T value) { - return super.put(intern(key), value); - } - - @Override - public void putAll(Map m) { - if(m.isEmpty()) - return; - HashMap tmp = new HashMap<>(); - m.forEach((k, v) -> tmp.put(intern(k), v)); - super.putAll(tmp); - } - - private void putAllWithoutInterning(Map m) { - super.putAll(m); - } - - public static CanonizingStringMap deepCopy(CanonizingStringMap incomingMap, Function deepCopier) { - CanonizingStringMap newMap = new CanonizingStringMap<>(); - newMap.putAllWithoutInterning(Maps.transformValues(incomingMap, deepCopier)); - return newMap; - } -} diff --git a/common/src/main/java/org/embeddedt/modernfix/util/DummyServerConfiguration.java b/common/src/main/java/org/embeddedt/modernfix/util/DummyServerConfiguration.java deleted file mode 100644 index 8b50b073..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/util/DummyServerConfiguration.java +++ /dev/null @@ -1,162 +0,0 @@ -package org.embeddedt.modernfix.util; - -import com.google.common.collect.ImmutableSet; -import com.mojang.serialization.Lifecycle; -import net.minecraft.nbt.CompoundTag; -import net.minecraft.world.level.*; -import net.minecraft.core.RegistryAccess; -import net.minecraft.world.Difficulty; -import net.minecraft.world.level.dimension.end.EndDragonFight; -import net.minecraft.world.level.levelgen.WorldOptions; -import net.minecraft.world.level.storage.WorldData; -import net.minecraft.world.level.storage.ServerLevelData; - -import java.util.Collections; -import java.util.Set; - -public class DummyServerConfiguration implements WorldData { - @Override - public WorldDataConfiguration getDataConfiguration() { - return null; - } - - @Override - public void setDataConfiguration(WorldDataConfiguration arg) { - - } - - @Override - public Set getRemovedFeatureFlags() { - return Collections.emptySet(); - } - - @Override - public boolean wasModded() { - return true; - } - - @Override - public Set getKnownServerBrands() { - return ImmutableSet.of("forge"); - } - - @Override - public void setModdedInfo(String name, boolean isModded) { - - } - - @Override - public CompoundTag getCustomBossEvents() { - return null; - } - - @Override - public void setCustomBossEvents(CompoundTag nbt) { - - } - - @Override - public ServerLevelData overworldData() { - return null; - } - - @Override - public LevelSettings getLevelSettings() { - return null; - } - - @Override - public CompoundTag createTag(RegistryAccess registries, CompoundTag hostPlayerNBT) { - return null; - } - - @Override - public boolean isHardcore() { - return false; - } - - @Override - public int getVersion() { - return 0; - } - - @Override - public String getLevelName() { - return null; - } - - @Override - public GameType getGameType() { - return null; - } - - @Override - public void setGameType(GameType type) { - - } - - @Override - public boolean getAllowCommands() { - return false; - } - - @Override - public Difficulty getDifficulty() { - return null; - } - - @Override - public void setDifficulty(Difficulty difficulty) { - - } - - @Override - public boolean isDifficultyLocked() { - return false; - } - - @Override - public void setDifficultyLocked(boolean locked) { - - } - - @Override - public GameRules getGameRules() { - return null; - } - - @Override - public CompoundTag getLoadedPlayerTag() { - return null; - } - - @Override - public EndDragonFight.Data endDragonFightData() { - return EndDragonFight.Data.DEFAULT; - } - - @Override - public void setEndDragonFightData(EndDragonFight.Data data) { - - } - - @Override - public WorldOptions worldGenOptions() { - return null; - } - - @Override - public boolean isFlatWorld() { - return false; - } - - @Override - public boolean isDebugWorld() { - return false; - } - - @Override - public Lifecycle worldGenSettingsLifecycle() { - return Lifecycle.stable(); - } -} diff --git a/common/src/main/java/org/embeddedt/modernfix/util/LayeredForwardingMap.java b/common/src/main/java/org/embeddedt/modernfix/util/LayeredForwardingMap.java deleted file mode 100644 index cf9f3528..00000000 --- a/common/src/main/java/org/embeddedt/modernfix/util/LayeredForwardingMap.java +++ /dev/null @@ -1,132 +0,0 @@ -package org.embeddedt.modernfix.util; - -import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.*; - -/** - * Simple forwarding map implementation that allows layering multiple maps together. - */ -public class LayeredForwardingMap implements Map { - private final Map[] layers; - - public LayeredForwardingMap(Map[] layers) { - if(layers.length < 1) - throw new IllegalArgumentException(); - for(Map layer : layers) { - if(layer == null) - throw new IllegalArgumentException(); - } - this.layers = layers; - } - - @Override - public int size() { - return 1; - } - - @Override - public boolean isEmpty() { - for(Map map : layers) { - if(!map.isEmpty()) - return false; - } - return true; - } - - @Override - public boolean containsKey(Object key) { - for(Map map : layers) { - if(map.containsKey(key)) - return true; - } - return false; - } - - @Override - public boolean containsValue(Object value) { - for(Map map : layers) { - if(map.containsValue(value)) - return true; - } - return false; - } - - @Override - public V get(Object key) { - for(Map map : layers) { - V value = map.get(key); - if(value != null) - return value; - } - return null; - } - - @Nullable - @Override - public V put(K key, V value) { - if(value == null) - throw new IllegalArgumentException(); - V originalValue = null; - for(Map map : layers) { - V oldVal = map.remove(key); - if(originalValue == null) - originalValue = oldVal; - map.put(key, value); - } - return originalValue; - } - - @Override - public V remove(Object key) { - for(Map map : layers) { - map.remove(key); - } - return null; - } - - @Override - public void putAll(@NotNull Map m) { - for(V value : m.values()) { - if(value == null) - throw new IllegalArgumentException(); - } - for(Map map : layers) { - map.putAll(m); - } - } - - @Override - public void clear() { - throw new UnsupportedOperationException(); - } - - @NotNull - @Override - public Set keySet() { - Set keys = new ObjectOpenHashSet<>(); - for(Map map : layers) { - keys.addAll(map.keySet()); - } - return Collections.unmodifiableSet(keys); - } - - @NotNull - @Override - public Collection values() { - Set keys = keySet(); - List vals = new ArrayList<>(); - for(K key : keys) { - vals.add(get(key)); - } - return vals; - } - - @NotNull - @Override - public Set> entrySet() { - throw new UnsupportedOperationException(); - } -} diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/reduce_blockstate_cache_rebuilds/GameDataMixin.java b/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/reduce_blockstate_cache_rebuilds/GameDataMixin.java deleted file mode 100644 index 1bf49444..00000000 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/mixin/perf/reduce_blockstate_cache_rebuilds/GameDataMixin.java +++ /dev/null @@ -1,47 +0,0 @@ -package org.embeddedt.modernfix.forge.mixin.perf.reduce_blockstate_cache_rebuilds; - -import com.google.common.collect.Multimap; -import net.minecraft.resources.ResourceLocation; -import net.minecraftforge.registries.ForgeRegistry; -import net.minecraftforge.registries.GameData; -import org.embeddedt.modernfix.util.BakeReason; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; - -import java.util.Map; - -@Mixin(GameData.class) -public class GameDataMixin { - @Inject(method = "freezeData", at = @At(value = "INVOKE", target = "Lcom/google/common/collect/BiMap;forEach(Ljava/util/function/BiConsumer;)V", ordinal = 1), remap = false) - private static void markFreezeBakeReason(CallbackInfo ci) { - BakeReason.setCurrentBakeReason(BakeReason.FREEZE); - } - - @Inject(method = "freezeData", at = @At(value = "INVOKE", target = "Lnet/minecraftforge/registries/GameData;fireRemapEvent(Ljava/util/Map;Z)V"), remap = false) - private static void markEmptyBakeReason1(CallbackInfo ci) { - BakeReason.setCurrentBakeReason(null); - } - - @Inject(method = "revertTo", at = @At(value = "INVOKE", target = "Lcom/google/common/collect/BiMap;forEach(Ljava/util/function/BiConsumer;)V", ordinal = 1), remap = false) - private static void markRevertBakeReason(CallbackInfo ci) { - BakeReason.setCurrentBakeReason(BakeReason.REVERT); - } - - @Inject(method = "revertTo", at = @At(value = "INVOKE", target = "Lcom/google/common/collect/BiMap;forEach(Ljava/util/function/BiConsumer;)V", ordinal = 1, shift = At.Shift.AFTER), remap = false) - private static void markEmptyBakeReason2(CallbackInfo ci) { - BakeReason.setCurrentBakeReason(null); - } - - @Inject(method = "injectSnapshot", at = @At("HEAD"), remap = false) - private static void markSnapshotInjectBakeReason(Map snapshot, boolean injectFrozenData, boolean isLocalWorld, CallbackInfoReturnable> cir) { - BakeReason.setCurrentBakeReason(isLocalWorld ? BakeReason.LOCAL_SNAPSHOT_INJECT : BakeReason.REMOTE_SNAPSHOT_INJECT); - } - - @Inject(method = "injectSnapshot", at = @At("RETURN"), remap = false) - private static void markEmptyBakeReason2(Map snapshot, boolean injectFrozenData, boolean isLocalWorld, CallbackInfoReturnable> cir) { - BakeReason.setCurrentBakeReason(null); - } -}