refactor implementation

This commit is contained in:
dfsek
2021-07-10 21:44:38 -07:00
parent d09ef5052a
commit 519956dc11
21 changed files with 44 additions and 37 deletions
@@ -21,7 +21,7 @@ import com.dfsek.terra.api.command.exception.SwitchFormatException;
import com.dfsek.terra.api.command.tab.TabCompleter; import com.dfsek.terra.api.command.tab.TabCompleter;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.entity.Player; import com.dfsek.terra.api.entity.Player;
import com.dfsek.terra.api.inject.InjectorImpl; import com.dfsek.terra.inject.InjectorImpl;
import com.dfsek.terra.api.injection.exception.InjectionException; import com.dfsek.terra.api.injection.exception.InjectionException;
import com.dfsek.terra.api.util.ReflectionUtil; import com.dfsek.terra.api.util.ReflectionUtil;
import net.jafama.FastMath; import net.jafama.FastMath;
@@ -4,7 +4,7 @@ import com.dfsek.tectonic.config.Configuration;
import com.dfsek.tectonic.exception.ConfigException; import com.dfsek.tectonic.exception.ConfigException;
import com.dfsek.terra.api.config.Loader; import com.dfsek.terra.api.config.Loader;
import com.dfsek.terra.api.util.function.ExceptionalConsumer; import com.dfsek.terra.api.util.function.ExceptionalConsumer;
import com.dfsek.terra.api.util.GlueList; import com.dfsek.terra.util.GlueList;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@@ -2,7 +2,7 @@ package com.dfsek.terra.config.loaders.config;
import com.dfsek.tectonic.loading.ConfigLoader; import com.dfsek.tectonic.loading.ConfigLoader;
import com.dfsek.tectonic.loading.TypeLoader; import com.dfsek.tectonic.loading.TypeLoader;
import com.dfsek.terra.api.math.GridSpawn; import com.dfsek.terra.math.GridSpawn;
import com.dfsek.terra.api.structure.StructureSpawn; import com.dfsek.terra.api.structure.StructureSpawn;
import java.lang.reflect.Type; import java.lang.reflect.Type;
@@ -1,7 +1,9 @@
package com.dfsek.terra.api.event; package com.dfsek.terra.event;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.addon.TerraAddon; import com.dfsek.terra.api.addon.TerraAddon;
import com.dfsek.terra.api.event.EventListener;
import com.dfsek.terra.api.event.EventManager;
import com.dfsek.terra.api.event.annotations.Global; import com.dfsek.terra.api.event.annotations.Global;
import com.dfsek.terra.api.event.annotations.Priority; import com.dfsek.terra.api.event.annotations.Priority;
import com.dfsek.terra.api.event.events.Cancellable; import com.dfsek.terra.api.event.events.Cancellable;
@@ -1,4 +1,4 @@
package com.dfsek.terra.api.inject; package com.dfsek.terra.inject;
import com.dfsek.terra.api.injection.Injector; import com.dfsek.terra.api.injection.Injector;
import com.dfsek.terra.api.injection.annotations.Inject; import com.dfsek.terra.api.injection.annotations.Inject;
@@ -1,7 +1,7 @@
package com.dfsek.terra.api.math; package com.dfsek.terra.math;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.util.FastRandom;
import com.dfsek.terra.api.util.GlueList; import com.dfsek.terra.util.GlueList;
import com.dfsek.terra.api.util.PopulationUtil; import com.dfsek.terra.api.util.PopulationUtil;
import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.vector.Vector3;
@@ -6,7 +6,7 @@ import com.dfsek.terra.addon.PreLoadAddon;
import com.dfsek.terra.addon.exception.AddonLoadException; import com.dfsek.terra.addon.exception.AddonLoadException;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.addon.TerraAddon; import com.dfsek.terra.api.addon.TerraAddon;
import com.dfsek.terra.api.inject.InjectorImpl; import com.dfsek.terra.inject.InjectorImpl;
import com.dfsek.terra.api.injection.exception.InjectionException; import com.dfsek.terra.api.injection.exception.InjectionException;
import com.dfsek.terra.api.registry.exception.DuplicateEntryException; import com.dfsek.terra.api.registry.exception.DuplicateEntryException;
import com.dfsek.terra.registry.OpenRegistryImpl; import com.dfsek.terra.registry.OpenRegistryImpl;
@@ -1,5 +1,6 @@
package com.dfsek.terra.api.transform; package com.dfsek.terra.transform;
import com.dfsek.terra.api.transform.Transform;
import com.dfsek.terra.api.transform.exception.TransformException; import com.dfsek.terra.api.transform.exception.TransformException;
import java.util.HashMap; import java.util.HashMap;
@@ -1,5 +1,8 @@
package com.dfsek.terra.api.transform; package com.dfsek.terra.transform;
import com.dfsek.terra.api.transform.Transform;
import com.dfsek.terra.api.transform.Transformer;
import com.dfsek.terra.api.transform.Validator;
import com.dfsek.terra.api.transform.exception.AttemptsFailedException; import com.dfsek.terra.api.transform.exception.AttemptsFailedException;
import com.dfsek.terra.api.transform.exception.TransformException; import com.dfsek.terra.api.transform.exception.TransformException;
@@ -1,4 +1,4 @@
package com.dfsek.terra.api.util; package com.dfsek.terra.util;
import org.apache.commons.rng.core.source64.XoRoShiRo128PlusPlus; import org.apache.commons.rng.core.source64.XoRoShiRo128PlusPlus;
@@ -13,8 +13,9 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
package com.dfsek.terra.api.util; package com.dfsek.terra.util;
import net.jafama.FastMath;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import java.io.IOException; import java.io.IOException;
@@ -709,11 +710,11 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
public Object clone() { public Object clone() {
try { try {
com.dfsek.terra.api.util.GlueList<T> clone = (com.dfsek.terra.api.util.GlueList<T>) super.clone(); GlueList<T> clone = (GlueList<T>) super.clone();
clone.first = clone.last = null; clone.first = clone.last = null;
int capacity = min(MAX_ARRAY_SIZE, max(clone.size, max(clone.initialCapacity, DEFAULT_CAPACITY))); int capacity = FastMath.min(MAX_ARRAY_SIZE, FastMath.max(clone.size, FastMath.max(clone.initialCapacity, DEFAULT_CAPACITY)));
Node<T> initNode = new Node<>(null, null, 0, capacity); Node<T> initNode = new Node<>(null, null, 0, capacity);
@@ -902,7 +903,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
checkForComodification(); checkForComodification();
try { try {
com.dfsek.terra.api.util.GlueList.this.set(lastReturn, t); GlueList.this.set(lastReturn, t);
} catch(IndexOutOfBoundsException e) { } catch(IndexOutOfBoundsException e) {
throw new ConcurrentModificationException(); throw new ConcurrentModificationException();
} }
@@ -916,7 +917,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
try { try {
int temp = j; int temp = j;
com.dfsek.terra.api.util.GlueList.this.add(temp, t); GlueList.this.add(temp, t);
j = temp + 1; j = temp + 1;
@@ -1025,7 +1026,7 @@ public class GlueList<T> extends AbstractList<T> implements List<T>, Cloneable,
checkForComodification(); checkForComodification();
try { try {
com.dfsek.terra.api.util.GlueList.this.remove(lastReturn); GlueList.this.remove(lastReturn);
j = lastReturn; j = lastReturn;
@@ -1,4 +1,4 @@
package com.dfsek.terra.api.util.logging; package com.dfsek.terra.util.logging;
import com.dfsek.terra.api.Logger; import com.dfsek.terra.api.Logger;
@@ -1,4 +1,4 @@
package com.dfsek.terra.api.util.logging; package com.dfsek.terra.util.logging;
import com.dfsek.terra.api.Logger; import com.dfsek.terra.api.Logger;
@@ -14,15 +14,15 @@ import com.dfsek.terra.api.command.exception.MalformedCommandException;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.config.PluginConfig; import com.dfsek.terra.api.config.PluginConfig;
import com.dfsek.terra.api.event.EventManager; import com.dfsek.terra.api.event.EventManager;
import com.dfsek.terra.api.event.EventManagerImpl; import com.dfsek.terra.event.EventManagerImpl;
import com.dfsek.terra.api.handle.ItemHandle; import com.dfsek.terra.api.handle.ItemHandle;
import com.dfsek.terra.api.handle.WorldHandle; import com.dfsek.terra.api.handle.WorldHandle;
import com.dfsek.terra.api.lang.Language; import com.dfsek.terra.api.lang.Language;
import com.dfsek.terra.api.profiler.Profiler; import com.dfsek.terra.api.profiler.Profiler;
import com.dfsek.terra.api.registry.CheckedRegistry; import com.dfsek.terra.api.registry.CheckedRegistry;
import com.dfsek.terra.api.registry.Registry; import com.dfsek.terra.api.registry.Registry;
import com.dfsek.terra.api.util.logging.DebugLogger; import com.dfsek.terra.util.logging.DebugLogger;
import com.dfsek.terra.api.util.logging.JavaLogger; import com.dfsek.terra.util.logging.JavaLogger;
import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.Biome; import com.dfsek.terra.api.world.biome.Biome;
@@ -2,9 +2,9 @@ package com.dfsek.terra.bukkit.listeners;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.config.WorldConfig; import com.dfsek.terra.api.config.WorldConfig;
import com.dfsek.terra.api.transform.MapTransform; import com.dfsek.terra.transform.MapTransform;
import com.dfsek.terra.api.transform.TransformerImpl; import com.dfsek.terra.transform.TransformerImpl;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.util.FastRandom;
import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.Tree; import com.dfsek.terra.api.world.Tree;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
@@ -2,7 +2,7 @@ package com.dfsek.terra.bukkit.population;
import com.dfsek.terra.api.TerraPlugin; import com.dfsek.terra.api.TerraPlugin;
import com.dfsek.terra.api.profiler.ProfileFrame; import com.dfsek.terra.api.profiler.ProfileFrame;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.util.FastRandom;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.Chunkified; import com.dfsek.terra.api.world.generator.Chunkified;
@@ -10,8 +10,8 @@ import com.dfsek.terra.api.block.state.properties.enums.RedstoneConnection;
import com.dfsek.terra.api.entity.CommandSender; import com.dfsek.terra.api.entity.CommandSender;
import com.dfsek.terra.api.inventory.ItemStack; import com.dfsek.terra.api.inventory.ItemStack;
import com.dfsek.terra.api.inventory.item.Enchantment; import com.dfsek.terra.api.inventory.item.Enchantment;
import com.dfsek.terra.api.transform.MapTransform; import com.dfsek.terra.transform.MapTransform;
import com.dfsek.terra.api.transform.TransformerImpl; import com.dfsek.terra.transform.TransformerImpl;
import com.dfsek.terra.api.vector.Vector3; import com.dfsek.terra.api.vector.Vector3;
import com.dfsek.terra.api.world.Chunk; import com.dfsek.terra.api.world.Chunk;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
@@ -19,7 +19,7 @@ import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.config.PluginConfig; import com.dfsek.terra.api.config.PluginConfig;
import com.dfsek.terra.api.event.EventListener; import com.dfsek.terra.api.event.EventListener;
import com.dfsek.terra.api.event.EventManager; import com.dfsek.terra.api.event.EventManager;
import com.dfsek.terra.api.event.EventManagerImpl; import com.dfsek.terra.event.EventManagerImpl;
import com.dfsek.terra.api.event.annotations.Global; import com.dfsek.terra.api.event.annotations.Global;
import com.dfsek.terra.api.event.annotations.Priority; import com.dfsek.terra.api.event.annotations.Priority;
import com.dfsek.terra.api.event.events.config.ConfigPackPostLoadEvent; import com.dfsek.terra.api.event.events.config.ConfigPackPostLoadEvent;
@@ -31,7 +31,7 @@ import com.dfsek.terra.api.profiler.Profiler;
import com.dfsek.terra.api.registry.CheckedRegistry; import com.dfsek.terra.api.registry.CheckedRegistry;
import com.dfsek.terra.api.registry.exception.DuplicateEntryException; import com.dfsek.terra.api.registry.exception.DuplicateEntryException;
import com.dfsek.terra.api.util.generic.pair.Pair; import com.dfsek.terra.api.util.generic.pair.Pair;
import com.dfsek.terra.api.util.logging.DebugLogger; import com.dfsek.terra.util.logging.DebugLogger;
import com.dfsek.terra.api.util.seeded.BiomeBuilder; import com.dfsek.terra.api.util.seeded.BiomeBuilder;
import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.Tree; import com.dfsek.terra.api.world.Tree;
@@ -1,7 +1,7 @@
package com.dfsek.terra.fabric.generation; package com.dfsek.terra.fabric.generation;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.util.FastRandom; import com.dfsek.terra.util.FastRandom;
import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.generator.ChunkData; import com.dfsek.terra.api.world.generator.ChunkData;
@@ -7,15 +7,15 @@ import com.dfsek.terra.api.block.state.BlockState;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.config.PluginConfig; import com.dfsek.terra.api.config.PluginConfig;
import com.dfsek.terra.api.event.EventManager; import com.dfsek.terra.api.event.EventManager;
import com.dfsek.terra.api.event.EventManagerImpl; import com.dfsek.terra.event.EventManagerImpl;
import com.dfsek.terra.api.handle.ItemHandle; import com.dfsek.terra.api.handle.ItemHandle;
import com.dfsek.terra.api.handle.WorldHandle; import com.dfsek.terra.api.handle.WorldHandle;
import com.dfsek.terra.api.lang.Language; import com.dfsek.terra.api.lang.Language;
import com.dfsek.terra.api.profiler.Profiler; import com.dfsek.terra.api.profiler.Profiler;
import com.dfsek.terra.api.registry.CheckedRegistry; import com.dfsek.terra.api.registry.CheckedRegistry;
import com.dfsek.terra.api.registry.Registry; import com.dfsek.terra.api.registry.Registry;
import com.dfsek.terra.api.util.logging.DebugLogger; import com.dfsek.terra.util.logging.DebugLogger;
import com.dfsek.terra.api.util.logging.JavaLogger; import com.dfsek.terra.util.logging.JavaLogger;
import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.api.world.biome.Biome; import com.dfsek.terra.api.world.biome.Biome;
@@ -6,14 +6,14 @@ import com.dfsek.terra.api.addon.TerraAddon;
import com.dfsek.terra.api.config.ConfigPack; import com.dfsek.terra.api.config.ConfigPack;
import com.dfsek.terra.api.config.PluginConfig; import com.dfsek.terra.api.config.PluginConfig;
import com.dfsek.terra.api.event.EventManager; import com.dfsek.terra.api.event.EventManager;
import com.dfsek.terra.api.event.EventManagerImpl; import com.dfsek.terra.event.EventManagerImpl;
import com.dfsek.terra.api.handle.ItemHandle; import com.dfsek.terra.api.handle.ItemHandle;
import com.dfsek.terra.api.handle.WorldHandle; import com.dfsek.terra.api.handle.WorldHandle;
import com.dfsek.terra.api.lang.Language; import com.dfsek.terra.api.lang.Language;
import com.dfsek.terra.api.profiler.Profiler; import com.dfsek.terra.api.profiler.Profiler;
import com.dfsek.terra.api.registry.CheckedRegistry; import com.dfsek.terra.api.registry.CheckedRegistry;
import com.dfsek.terra.api.registry.LockedRegistry; import com.dfsek.terra.api.registry.LockedRegistry;
import com.dfsek.terra.api.util.logging.DebugLogger; import com.dfsek.terra.util.logging.DebugLogger;
import com.dfsek.terra.api.world.TerraWorld; import com.dfsek.terra.api.world.TerraWorld;
import com.dfsek.terra.api.world.World; import com.dfsek.terra.api.world.World;
import com.dfsek.terra.config.PluginConfigImpl; import com.dfsek.terra.config.PluginConfigImpl;