diff --git a/plugin/src/main/java/lol/pyr/znpcsplus/util/LazyLoader.java b/plugin/src/main/java/lol/pyr/znpcsplus/util/LazyLoader.java index e39d16a..509022f 100644 --- a/plugin/src/main/java/lol/pyr/znpcsplus/util/LazyLoader.java +++ b/plugin/src/main/java/lol/pyr/znpcsplus/util/LazyLoader.java @@ -1,24 +1,21 @@ package lol.pyr.znpcsplus.util; +import java.util.function.Supplier; + public class LazyLoader { - private final ObjectProvider provider; + private final Supplier supplier; private T value; - private LazyLoader(ObjectProvider provider) { - this.provider = provider; + private LazyLoader(Supplier supplier) { + this.supplier = supplier; } public T get() { - if (value == null) value = provider.provide(); + if (value == null) value = supplier.get(); return value; } - public static LazyLoader of(ObjectProvider provider) { - return new LazyLoader<>(provider); - } - - @FunctionalInterface - public interface ObjectProvider { - T provide(); + public static LazyLoader of(Supplier supplier) { + return new LazyLoader<>(supplier); } }