diff --git a/orebfuscator-core/src/main/java/dev/imprex/orebfuscator/cache/AbstractRegionFileCache.java b/orebfuscator-core/src/main/java/dev/imprex/orebfuscator/cache/AbstractRegionFileCache.java index 28023587..46609b35 100644 --- a/orebfuscator-core/src/main/java/dev/imprex/orebfuscator/cache/AbstractRegionFileCache.java +++ b/orebfuscator-core/src/main/java/dev/imprex/orebfuscator/cache/AbstractRegionFileCache.java @@ -10,11 +10,27 @@ import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; import dev.imprex.orebfuscator.config.api.CacheConfig; +import dev.imprex.orebfuscator.reflect.Reflector; +import dev.imprex.orebfuscator.reflect.accessor.MethodAccessor; import dev.imprex.orebfuscator.util.ChunkCacheKey; import dev.imprex.orebfuscator.util.SimpleCache; public abstract class AbstractRegionFileCache { + private static MethodAccessor serverGetServer; + + protected static T serverHandle(Object server, Class targetClass) { + if (serverGetServer == null) { + serverGetServer = Reflector.of(server.getClass()).method() + .banStatic() + .nameIs("getServer") + .returnType().is(targetClass) + .parameterCount(0) + .firstOrThrow(); + } + return targetClass.cast(serverGetServer.invoke(server)); + } + protected final ReadWriteLock lock = new ReentrantReadWriteLock(true); protected final Map regionFiles; diff --git a/orebfuscator-nms/orebfuscator-nms-v1_16_R1/src/main/java/net/imprex/orebfuscator/nms/v1_16_R1/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_16_R1/src/main/java/net/imprex/orebfuscator/nms/v1_16_R1/RegionFileCache.java index 5cfee178..b9b1c1c3 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_16_R1/src/main/java/net/imprex/orebfuscator/nms/v1_16_R1/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_16_R1/src/main/java/net/imprex/orebfuscator/nms/v1_16_R1/RegionFileCache.java @@ -6,12 +6,12 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_16_R1.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; import net.minecraft.server.v1_16_R1.ChunkCoordIntPair; +import net.minecraft.server.v1_16_R1.DedicatedServer; import net.minecraft.server.v1_16_R1.RegionFile; import net.minecraft.server.v1_16_R1.RegionFileCompression; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().isSyncChunkWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).isSyncChunkWrites(); return new RegionFile(path, path.getParent(), RegionFileCompression.c, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_16_R2/src/main/java/net/imprex/orebfuscator/nms/v1_16_R2/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_16_R2/src/main/java/net/imprex/orebfuscator/nms/v1_16_R2/RegionFileCache.java index 409b594c..72800adf 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_16_R2/src/main/java/net/imprex/orebfuscator/nms/v1_16_R2/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_16_R2/src/main/java/net/imprex/orebfuscator/nms/v1_16_R2/RegionFileCache.java @@ -6,12 +6,12 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_16_R2.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; import net.minecraft.server.v1_16_R2.ChunkCoordIntPair; +import net.minecraft.server.v1_16_R2.DedicatedServer; import net.minecraft.server.v1_16_R2.RegionFile; import net.minecraft.server.v1_16_R2.RegionFileCompression; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().isSyncChunkWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).isSyncChunkWrites(); return new RegionFile(path, path.getParent(), RegionFileCompression.c, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_16_R3/src/main/java/net/imprex/orebfuscator/nms/v1_16_R3/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_16_R3/src/main/java/net/imprex/orebfuscator/nms/v1_16_R3/RegionFileCache.java index eadd2b02..2791a238 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_16_R3/src/main/java/net/imprex/orebfuscator/nms/v1_16_R3/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_16_R3/src/main/java/net/imprex/orebfuscator/nms/v1_16_R3/RegionFileCache.java @@ -6,12 +6,12 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_16_R3.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; import net.minecraft.server.v1_16_R3.ChunkCoordIntPair; +import net.minecraft.server.v1_16_R3.DedicatedServer; import net.minecraft.server.v1_16_R3.RegionFile; import net.minecraft.server.v1_16_R3.RegionFileCompression; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().isSyncChunkWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).isSyncChunkWrites(); return new RegionFile(path, path.getParent(), RegionFileCompression.c, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_17_R1/src/main/java/net/imprex/orebfuscator/nms/v1_17_R1/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_17_R1/src/main/java/net/imprex/orebfuscator/nms/v1_17_R1/RegionFileCache.java index 354bd840..7e2724c9 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_17_R1/src/main/java/net/imprex/orebfuscator/nms/v1_17_R1/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_17_R1/src/main/java/net/imprex/orebfuscator/nms/v1_17_R1/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_17_R1.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_18_R1/src/main/java/net/imprex/orebfuscator/nms/v1_18_R1/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_18_R1/src/main/java/net/imprex/orebfuscator/nms/v1_18_R1/RegionFileCache.java index b8afa5d2..a6a4b47a 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_18_R1/src/main/java/net/imprex/orebfuscator/nms/v1_18_R1/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_18_R1/src/main/java/net/imprex/orebfuscator/nms/v1_18_R1/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_18_R1.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_18_R2/src/main/java/net/imprex/orebfuscator/nms/v1_18_R2/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_18_R2/src/main/java/net/imprex/orebfuscator/nms/v1_18_R2/RegionFileCache.java index 504acc27..4780508b 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_18_R2/src/main/java/net/imprex/orebfuscator/nms/v1_18_R2/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_18_R2/src/main/java/net/imprex/orebfuscator/nms/v1_18_R2/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_18_R2.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_19_R1/src/main/java/net/imprex/orebfuscator/nms/v1_19_R1/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_19_R1/src/main/java/net/imprex/orebfuscator/nms/v1_19_R1/RegionFileCache.java index c4fb0197..89beb5f2 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_19_R1/src/main/java/net/imprex/orebfuscator/nms/v1_19_R1/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_19_R1/src/main/java/net/imprex/orebfuscator/nms/v1_19_R1/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_19_R1.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_19_R2/src/main/java/net/imprex/orebfuscator/nms/v1_19_R2/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_19_R2/src/main/java/net/imprex/orebfuscator/nms/v1_19_R2/RegionFileCache.java index bb89ae60..202c568a 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_19_R2/src/main/java/net/imprex/orebfuscator/nms/v1_19_R2/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_19_R2/src/main/java/net/imprex/orebfuscator/nms/v1_19_R2/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_19_R2.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_19_R3/src/main/java/net/imprex/orebfuscator/nms/v1_19_R3/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_19_R3/src/main/java/net/imprex/orebfuscator/nms/v1_19_R3/RegionFileCache.java index 9ce4ed7d..43f958d5 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_19_R3/src/main/java/net/imprex/orebfuscator/nms/v1_19_R3/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_19_R3/src/main/java/net/imprex/orebfuscator/nms/v1_19_R3/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_19_R3.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_20_R1/src/main/java/net/imprex/orebfuscator/nms/v1_20_R1/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_20_R1/src/main/java/net/imprex/orebfuscator/nms/v1_20_R1/RegionFileCache.java index b25d0f11..c9d9189a 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_20_R1/src/main/java/net/imprex/orebfuscator/nms/v1_20_R1/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_20_R1/src/main/java/net/imprex/orebfuscator/nms/v1_20_R1/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R1.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_20_R2/src/main/java/net/imprex/orebfuscator/nms/v1_20_R2/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_20_R2/src/main/java/net/imprex/orebfuscator/nms/v1_20_R2/RegionFileCache.java index a5715230..0f65e500 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_20_R2/src/main/java/net/imprex/orebfuscator/nms/v1_20_R2/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_20_R2/src/main/java/net/imprex/orebfuscator/nms/v1_20_R2/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R2.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_20_R3/src/main/java/net/imprex/orebfuscator/nms/v1_20_R3/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_20_R3/src/main/java/net/imprex/orebfuscator/nms/v1_20_R3/RegionFileCache.java index 2daadffb..5c1a773e 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_20_R3/src/main/java/net/imprex/orebfuscator/nms/v1_20_R3/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_20_R3/src/main/java/net/imprex/orebfuscator/nms/v1_20_R3/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R3.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_20_R4/src/main/java/net/imprex/orebfuscator/nms/v1_20_R4/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_20_R4/src/main/java/net/imprex/orebfuscator/nms/v1_20_R4/RegionFileCache.java index 45ae90c2..b7032b0e 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_20_R4/src/main/java/net/imprex/orebfuscator/nms/v1_20_R4/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_20_R4/src/main/java/net/imprex/orebfuscator/nms/v1_20_R4/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_20_R4.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(null, path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_21_R1/src/main/java/net/imprex/orebfuscator/nms/v1_21_R1/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_21_R1/src/main/java/net/imprex/orebfuscator/nms/v1_21_R1/RegionFileCache.java index 96c7d72e..f3f23166 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_21_R1/src/main/java/net/imprex/orebfuscator/nms/v1_21_R1/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_21_R1/src/main/java/net/imprex/orebfuscator/nms/v1_21_R1/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_21_R1.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(null, path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_21_R2/src/main/java/net/imprex/orebfuscator/nms/v1_21_R2/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_21_R2/src/main/java/net/imprex/orebfuscator/nms/v1_21_R2/RegionFileCache.java index 17075158..2ffe052e 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_21_R2/src/main/java/net/imprex/orebfuscator/nms/v1_21_R2/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_21_R2/src/main/java/net/imprex/orebfuscator/nms/v1_21_R2/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_21_R2.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(null, path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_21_R3/src/main/java/net/imprex/orebfuscator/nms/v1_21_R3/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_21_R3/src/main/java/net/imprex/orebfuscator/nms/v1_21_R3/RegionFileCache.java index 3daccd5b..148f1a8e 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_21_R3/src/main/java/net/imprex/orebfuscator/nms/v1_21_R3/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_21_R3/src/main/java/net/imprex/orebfuscator/nms/v1_21_R3/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_21_R3.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(null, path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_21_R4/src/main/java/net/imprex/orebfuscator/nms/v1_21_R4/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_21_R4/src/main/java/net/imprex/orebfuscator/nms/v1_21_R4/RegionFileCache.java index fdf878ae..011c5f4f 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_21_R4/src/main/java/net/imprex/orebfuscator/nms/v1_21_R4/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_21_R4/src/main/java/net/imprex/orebfuscator/nms/v1_21_R4/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_21_R4.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(null, path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_21_R5/src/main/java/net/imprex/orebfuscator/nms/v1_21_R5/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_21_R5/src/main/java/net/imprex/orebfuscator/nms/v1_21_R5/RegionFileCache.java index 76e58153..365fcb44 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_21_R5/src/main/java/net/imprex/orebfuscator/nms/v1_21_R5/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_21_R5/src/main/java/net/imprex/orebfuscator/nms/v1_21_R5/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_21_R5.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(null, path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); } diff --git a/orebfuscator-nms/orebfuscator-nms-v1_21_R6/src/main/java/net/imprex/orebfuscator/nms/v1_21_R6/RegionFileCache.java b/orebfuscator-nms/orebfuscator-nms-v1_21_R6/src/main/java/net/imprex/orebfuscator/nms/v1_21_R6/RegionFileCache.java index ba41bf92..da91ac3b 100644 --- a/orebfuscator-nms/orebfuscator-nms-v1_21_R6/src/main/java/net/imprex/orebfuscator/nms/v1_21_R6/RegionFileCache.java +++ b/orebfuscator-nms/orebfuscator-nms-v1_21_R6/src/main/java/net/imprex/orebfuscator/nms/v1_21_R6/RegionFileCache.java @@ -6,11 +6,11 @@ import java.nio.file.Path; import org.bukkit.Bukkit; -import org.bukkit.craftbukkit.v1_21_R6.CraftServer; import dev.imprex.orebfuscator.cache.AbstractRegionFileCache; import dev.imprex.orebfuscator.config.api.CacheConfig; import dev.imprex.orebfuscator.util.ChunkCacheKey; +import net.minecraft.server.dedicated.DedicatedServer; import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.chunk.storage.RegionFile; import net.minecraft.world.level.chunk.storage.RegionFileVersion; @@ -23,7 +23,7 @@ public class RegionFileCache extends AbstractRegionFileCache { @Override protected RegionFile createRegionFile(Path path) throws IOException { - boolean isSyncChunkWrites = ((CraftServer) Bukkit.getServer()).getServer().forceSynchronousWrites(); + boolean isSyncChunkWrites = serverHandle(Bukkit.getServer(), DedicatedServer.class).forceSynchronousWrites(); return new RegionFile(null, path, path.getParent(), RegionFileVersion.VERSION_NONE, isSyncChunkWrites); }