From d51ec9fd6cde3ad393d4d0c91e30cc5d03945eaf Mon Sep 17 00:00:00 2001 From: SHsuperCM Date: Sat, 12 Feb 2022 09:21:09 +0200 Subject: More work on type registry/api --- .../fabric/citresewn/api/CITDisposable.java | 8 ++++++++ .../fabric/citresewn/api/CITGlobalProperties.java | 10 ++++++++++ .../fabric/citresewn/api/CITTypeContainer.java | 22 ++++++++++++++++++++++ .../shsupercm/fabric/citresewn/api/Disposable.java | 8 -------- .../citresewn/api/GlobalPropertiesHandler.java | 10 ---------- 5 files changed, 40 insertions(+), 18 deletions(-) create mode 100644 src/main/java/shcm/shsupercm/fabric/citresewn/api/CITDisposable.java create mode 100644 src/main/java/shcm/shsupercm/fabric/citresewn/api/CITGlobalProperties.java create mode 100644 src/main/java/shcm/shsupercm/fabric/citresewn/api/CITTypeContainer.java delete mode 100644 src/main/java/shcm/shsupercm/fabric/citresewn/api/Disposable.java delete mode 100644 src/main/java/shcm/shsupercm/fabric/citresewn/api/GlobalPropertiesHandler.java (limited to 'src/main/java/shcm/shsupercm/fabric/citresewn/api') diff --git a/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITDisposable.java b/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITDisposable.java new file mode 100644 index 0000000..240f197 --- /dev/null +++ b/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITDisposable.java @@ -0,0 +1,8 @@ +package shcm.shsupercm.fabric.citresewn.api; + +@FunctionalInterface +public interface CITDisposable { + String ENTRYPOINT = "citresewn:dispose"; + + void dispose(); +} diff --git a/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITGlobalProperties.java b/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITGlobalProperties.java new file mode 100644 index 0000000..ada5147 --- /dev/null +++ b/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITGlobalProperties.java @@ -0,0 +1,10 @@ +package shcm.shsupercm.fabric.citresewn.api; + +import shcm.shsupercm.fabric.citresewn.pack.format.PropertyValue; + +@FunctionalInterface +public interface CITGlobalProperties { + String ENTRYPOINT = "citresewn:global_property"; + + void globalProperty(String key, PropertyValue value) throws Exception; +} diff --git a/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITTypeContainer.java b/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITTypeContainer.java new file mode 100644 index 0000000..d691ab2 --- /dev/null +++ b/src/main/java/shcm/shsupercm/fabric/citresewn/api/CITTypeContainer.java @@ -0,0 +1,22 @@ +package shcm.shsupercm.fabric.citresewn.api; + +import shcm.shsupercm.fabric.citresewn.pack.cit.CIT; +import shcm.shsupercm.fabric.citresewn.pack.cit.CITType; + +import java.util.Collection; +import java.util.function.Supplier; + +public abstract class CITTypeContainer implements CITDisposable { + public static final String ENTRYPOINT = "citresewn:type"; + public final Class type; + public final Supplier createType; + public final String id; + + public CITTypeContainer(Class type, Supplier createType, String id) { + this.type = type; + this.createType = createType; + this.id = id; + } + + public abstract void load(Collection parsedCITs); +} diff --git a/src/main/java/shcm/shsupercm/fabric/citresewn/api/Disposable.java b/src/main/java/shcm/shsupercm/fabric/citresewn/api/Disposable.java deleted file mode 100644 index 85b8849..0000000 --- a/src/main/java/shcm/shsupercm/fabric/citresewn/api/Disposable.java +++ /dev/null @@ -1,8 +0,0 @@ -package shcm.shsupercm.fabric.citresewn.api; - -@FunctionalInterface -public interface Disposable { - String ENTRYPOINT = "citresewn:dispose"; - - void dispose(); -} diff --git a/src/main/java/shcm/shsupercm/fabric/citresewn/api/GlobalPropertiesHandler.java b/src/main/java/shcm/shsupercm/fabric/citresewn/api/GlobalPropertiesHandler.java deleted file mode 100644 index ac8228a..0000000 --- a/src/main/java/shcm/shsupercm/fabric/citresewn/api/GlobalPropertiesHandler.java +++ /dev/null @@ -1,10 +0,0 @@ -package shcm.shsupercm.fabric.citresewn.api; - -import shcm.shsupercm.fabric.citresewn.pack.format.PropertyValue; - -@FunctionalInterface -public interface GlobalPropertiesHandler { - String ENTRYPOINT = "citresewn:global_property"; - - void globalProperty(String key, PropertyValue value) throws Exception; -} -- cgit