aboutsummaryrefslogtreecommitdiff
path: root/api/src/main/java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2023-08-09 03:23:39 +0800
committershedaniel <daniel@shedaniel.me>2023-08-09 03:24:28 +0800
commitebbf6cf8687671e1d34109d984e929dbcfcf8edc (patch)
treee27be2446e95bd2116996f5f372cef70923d6ba2 /api/src/main/java
parent6232ce38195920d183574854e177eb1d761966a9 (diff)
downloadRoughlyEnoughItems-ebbf6cf8687671e1d34109d984e929dbcfcf8edc.tar.gz
RoughlyEnoughItems-ebbf6cf8687671e1d34109d984e929dbcfcf8edc.tar.bz2
RoughlyEnoughItems-ebbf6cf8687671e1d34109d984e929dbcfcf8edc.zip
Fix concurrency issues with recipe lookup
Diffstat (limited to 'api/src/main/java')
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/common/registry/ParentReloadable.java14
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/common/registry/Reloadable.java6
2 files changed, 20 insertions, 0 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/common/registry/ParentReloadable.java b/api/src/main/java/me/shedaniel/rei/api/common/registry/ParentReloadable.java
index eef0ae964..f128673ef 100644
--- a/api/src/main/java/me/shedaniel/rei/api/common/registry/ParentReloadable.java
+++ b/api/src/main/java/me/shedaniel/rei/api/common/registry/ParentReloadable.java
@@ -61,6 +61,20 @@ public interface ParentReloadable<P extends REIPlugin<?>> extends Reloadable<P>
}
@Override
+ default void preStage(ReloadStage stage) {
+ for (Reloadable<P> reloadable : getReloadables()) {
+ reloadable.preStage(stage);
+ }
+ }
+
+ @Override
+ default void postStage(ReloadStage stage) {
+ for (Reloadable<P> reloadable : getReloadables()) {
+ reloadable.postStage(stage);
+ }
+ }
+
+ @Override
default void beforeReloadable(ReloadStage stage, Reloadable<P> other) {
for (Reloadable<P> reloadable : getReloadables()) {
reloadable.beforeReloadable(stage, other);
diff --git a/api/src/main/java/me/shedaniel/rei/api/common/registry/Reloadable.java b/api/src/main/java/me/shedaniel/rei/api/common/registry/Reloadable.java
index 100a054d6..62d0df7b7 100644
--- a/api/src/main/java/me/shedaniel/rei/api/common/registry/Reloadable.java
+++ b/api/src/main/java/me/shedaniel/rei/api/common/registry/Reloadable.java
@@ -49,6 +49,12 @@ public interface Reloadable<P extends REIPlugin<?>> {
}
@ApiStatus.Experimental
+ default void preStage(ReloadStage stage) {}
+
+ @ApiStatus.Experimental
+ default void postStage(ReloadStage stage) {}
+
+ @ApiStatus.Experimental
default void beforeReloadable(ReloadStage stage, Reloadable<P> other) {}
@ApiStatus.Experimental