From 4f4ac722b1ba8bf4e7d13057fca480ce98794f1c Mon Sep 17 00:00:00 2001 From: Frank Date: Sat, 4 Jun 2022 13:55:49 +0200 Subject: [PATCH] Fixed Concurrency Issue --- .../bclib/api/features/BCLFeatureBuilder.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/betterx/bclib/api/features/BCLFeatureBuilder.java b/src/main/java/org/betterx/bclib/api/features/BCLFeatureBuilder.java index 7950458c..6e12f3d7 100644 --- a/src/main/java/org/betterx/bclib/api/features/BCLFeatureBuilder.java +++ b/src/main/java/org/betterx/bclib/api/features/BCLFeatureBuilder.java @@ -17,15 +17,17 @@ import org.betterx.bclib.api.features.placement.*; import java.util.ArrayList; import java.util.List; +import java.util.Optional; public class BCLFeatureBuilder> { - private static final BCLFeatureBuilder INSTANCE = new BCLFeatureBuilder(); - private final List modifications = new ArrayList<>(16); + private final List modifications = new ArrayList<>(5); private ResourceLocation featureID; - private Decoration decoration; - private F feature; + private Decoration decoration = Decoration.VEGETAL_DECORATION; + private final F feature; - private BCLFeatureBuilder() { + private BCLFeatureBuilder(ResourceLocation featureID, F feature) { + this.featureID = featureID; + this.feature = feature; } /** @@ -36,11 +38,7 @@ public class BCLFeatureBuilder feature) { - INSTANCE.decoration = Decoration.VEGETAL_DECORATION; - INSTANCE.modifications.clear(); - INSTANCE.featureID = featureID; - INSTANCE.feature = feature; - return INSTANCE; + return new BCLFeatureBuilder(featureID, feature); } /** @@ -265,7 +263,11 @@ public class BCLFeatureBuilder