aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/api/java/moe/nea/firmament/api/v1/FirmamentExtension.java11
-rw-r--r--src/main/kotlin/impl/v1/FirmamentAPIImpl.kt2
2 files changed, 12 insertions, 1 deletions
diff --git a/src/api/java/moe/nea/firmament/api/v1/FirmamentExtension.java b/src/api/java/moe/nea/firmament/api/v1/FirmamentExtension.java
index 1fa3c11..89547cb 100644
--- a/src/api/java/moe/nea/firmament/api/v1/FirmamentExtension.java
+++ b/src/api/java/moe/nea/firmament/api/v1/FirmamentExtension.java
@@ -6,9 +6,20 @@ import net.minecraft.client.gui.screens.Screen;
import java.util.Collection;
import java.util.List;
+/**
+ * An extension to firmament, allowing you to hook into firmaments functions.
+ *
+ * <p>To register, set the entrypoint {@code firmament:v1} to an implementation of this class.</p>
+ * @see #ENTRYPOINT_NAME
+ */
public interface FirmamentExtension {
/**
+ * Name of the entry point that should be used registering firmament extensions.
+ */
+ String ENTRYPOINT_NAME = "firmament:v1";
+
+ /**
* This method gets called during client initialization, if firmament is installed. Can be used as an alternative to
* checking {@code FabricLoader.getInstance().isModLoaded("firmament")}.
*/
diff --git a/src/main/kotlin/impl/v1/FirmamentAPIImpl.kt b/src/main/kotlin/impl/v1/FirmamentAPIImpl.kt
index 3ca4778..8c6b732 100644
--- a/src/main/kotlin/impl/v1/FirmamentAPIImpl.kt
+++ b/src/main/kotlin/impl/v1/FirmamentAPIImpl.kt
@@ -54,7 +54,7 @@ object FirmamentAPIImpl : FirmamentAPI() {
fun loadExtensions() {
for (container in FabricLoader.getInstance()
- .getEntrypointContainers("firmament:v1", FirmamentExtension::class.java)) {
+ .getEntrypointContainers(FirmamentExtension.ENTRYPOINT_NAME, FirmamentExtension::class.java)) {
Firmament.logger.info("Loading extension ${container.entrypoint} from ${container.provider.metadata.name}")
loadExtension(container.entrypoint)
}