aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/recipe/check
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/recipe/check')
-rw-r--r--src/main/java/gregtech/api/recipe/check/CheckRecipeResult.java7
-rw-r--r--src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java16
-rw-r--r--src/main/java/gregtech/api/recipe/check/ResultInsufficientHeat.java20
-rw-r--r--src/main/java/gregtech/api/recipe/check/ResultInsufficientMachineTier.java17
-rw-r--r--src/main/java/gregtech/api/recipe/check/ResultInsufficientPower.java20
-rw-r--r--src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPower.java17
-rw-r--r--src/main/java/gregtech/api/recipe/check/SimpleCheckRecipeResult.java12
7 files changed, 85 insertions, 24 deletions
diff --git a/src/main/java/gregtech/api/recipe/check/CheckRecipeResult.java b/src/main/java/gregtech/api/recipe/check/CheckRecipeResult.java
index eeb01077de..8af5c58f5e 100644
--- a/src/main/java/gregtech/api/recipe/check/CheckRecipeResult.java
+++ b/src/main/java/gregtech/api/recipe/check/CheckRecipeResult.java
@@ -1,5 +1,7 @@
package gregtech.api.recipe.check;
+import javax.annotation.Nonnull;
+
import net.minecraft.network.PacketBuffer;
/**
@@ -13,6 +15,7 @@ public interface CheckRecipeResult {
/**
* @return Unique registry ID
*/
+ @Nonnull
String getID();
/**
@@ -23,17 +26,19 @@ public interface CheckRecipeResult {
/**
* @return Actual text to show on client GUI
*/
+ @Nonnull
String getDisplayString();
/**
* Create new instance to receive packet.
*/
+ @Nonnull
CheckRecipeResult newInstance();
/**
* Encode value to sync.
*/
- void encode(PacketBuffer buffer);
+ void encode(@Nonnull PacketBuffer buffer);
/**
* Decode synced value.
diff --git a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java
index 4c089c7203..e141c39a67 100644
--- a/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java
+++ b/src/main/java/gregtech/api/recipe/check/CheckRecipeResultRegistry.java
@@ -3,6 +3,8 @@ package gregtech.api.recipe.check;
import java.util.HashMap;
import java.util.Map;
+import javax.annotation.Nonnull;
+
public final class CheckRecipeResultRegistry {
private static final Map<String, CheckRecipeResult> registry = new HashMap<>();
@@ -39,14 +41,17 @@ public final class CheckRecipeResultRegistry {
/**
* Successfully found recipe.
*/
+ @Nonnull
public static final CheckRecipeResult SUCCESSFUL = SimpleCheckRecipeResult.ofSuccess("success");
/**
* All requirements met to generator power.
*/
+ @Nonnull
public static final CheckRecipeResult GENERATING = SimpleCheckRecipeResult.ofSuccess("generating");
/**
* Cannot find recipe.
*/
+ @Nonnull
public static final CheckRecipeResult NO_RECIPE = SimpleCheckRecipeResult.ofFailure("no_recipe");
/**
* Cannot process recipe because item output is full.
@@ -59,6 +64,7 @@ public final class CheckRecipeResultRegistry {
/**
* Default unknown state.
*/
+ @Nonnull
public static final CheckRecipeResult NONE = SimpleCheckRecipeResult.ofFailure("none");
/**
* Code crashed.
@@ -67,26 +73,32 @@ public final class CheckRecipeResultRegistry {
/**
* Cannot find valid fuel for generator.
*/
+ @Nonnull
public static final CheckRecipeResult NO_FUEL_FOUND = SimpleCheckRecipeResult.ofFailure("no_fuel");
/**
* Cannot find valid turbine.
*/
+ @Nonnull
public static final CheckRecipeResult NO_TURBINE_FOUND = SimpleCheckRecipeResult.ofFailure("no_turbine");
/**
* No data sticks found for Assembly Line.
*/
+ @Nonnull
public static final CheckRecipeResult NO_DATA_STICKS = SimpleCheckRecipeResult.ofFailure("no_data_sticks");
/**
* EU/t overflowed.
*/
+ @Nonnull
public static final CheckRecipeResult POWER_OVERFLOW = SimpleCheckRecipeResult.ofFailure("power_overflow");
/**
* Progress time overflowed.
*/
+ @Nonnull
public static final CheckRecipeResult DURATION_OVERFLOW = SimpleCheckRecipeResult.ofFailure("duration_overflow");
/**
* Machine had an internal error
*/
+ @Nonnull
public static final CheckRecipeResult INTERNAL_ERROR = SimpleCheckRecipeResult.ofFailure("internal_error");
/** Multiblock ore drill has no drilling fluid */
public static final CheckRecipeResult NO_DRILLING_FLUID = SimpleCheckRecipeResult.ofFailure("no_drilling_fluid");
@@ -99,6 +111,7 @@ public final class CheckRecipeResultRegistry {
/**
* Cannot process recipe because the machine cannot handle required EUt.
*/
+ @Nonnull
public static CheckRecipeResult insufficientPower(long required) {
return new ResultInsufficientPower(required);
}
@@ -106,6 +119,7 @@ public final class CheckRecipeResultRegistry {
/**
* Cannot process recipe because the machine cannot handle its heat.
*/
+ @Nonnull
public static CheckRecipeResult insufficientHeat(int required) {
return new ResultInsufficientHeat(required);
}
@@ -113,6 +127,7 @@ public final class CheckRecipeResultRegistry {
/**
* Cannot process recipe because the machine is tiered and its tier is too low.
*/
+ @Nonnull
public static CheckRecipeResult insufficientMachineTier(int required) {
return new ResultInsufficientMachineTier(required);
}
@@ -120,6 +135,7 @@ public final class CheckRecipeResultRegistry {
/**
* Cannot process recipe because the machine doesn't have enough startup power.
*/
+ @Nonnull
public static CheckRecipeResult insufficientStartupPower(int required) {
return new ResultInsufficientStartupPower(required);
}
diff --git a/src/main/java/gregtech/api/recipe/check/ResultInsufficientHeat.java b/src/main/java/gregtech/api/recipe/check/ResultInsufficientHeat.java
index 96c8955130..26c3530ba3 100644
--- a/src/main/java/gregtech/api/recipe/check/ResultInsufficientHeat.java
+++ b/src/main/java/gregtech/api/recipe/check/ResultInsufficientHeat.java
@@ -1,5 +1,9 @@
package gregtech.api.recipe.check;
+import java.util.Objects;
+
+import javax.annotation.Nonnull;
+
import net.minecraft.network.PacketBuffer;
import net.minecraft.util.StatCollector;
@@ -15,6 +19,7 @@ public class ResultInsufficientHeat implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getID() {
return "insufficient_heat";
}
@@ -25,25 +30,28 @@ public class ResultInsufficientHeat implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getDisplayString() {
- return StatCollector.translateToLocalFormatted(
- "GT5U.gui.text.insufficient_heat",
- GT_Utility.formatNumbers(required),
- HeatingCoilLevel.getDisplayNameFromHeat(required, true));
+ return Objects.requireNonNull(
+ StatCollector.translateToLocalFormatted(
+ "GT5U.gui.text.insufficient_heat",
+ GT_Utility.formatNumbers(required),
+ HeatingCoilLevel.getDisplayNameFromHeat(required, true)));
}
@Override
+ @Nonnull
public CheckRecipeResult newInstance() {
return new ResultInsufficientHeat(0);
}
@Override
- public void encode(PacketBuffer buffer) {
+ public void encode(@Nonnull PacketBuffer buffer) {
buffer.writeVarIntToBuffer(required);
}
@Override
- public void decode(PacketBuffer buffer) {
+ public void decode(@Nonnull PacketBuffer buffer) {
required = buffer.readVarIntFromBuffer();
}
diff --git a/src/main/java/gregtech/api/recipe/check/ResultInsufficientMachineTier.java b/src/main/java/gregtech/api/recipe/check/ResultInsufficientMachineTier.java
index 1e00e791d1..742eb3ef7a 100644
--- a/src/main/java/gregtech/api/recipe/check/ResultInsufficientMachineTier.java
+++ b/src/main/java/gregtech/api/recipe/check/ResultInsufficientMachineTier.java
@@ -1,5 +1,9 @@
package gregtech.api.recipe.check;
+import java.util.Objects;
+
+import javax.annotation.Nonnull;
+
import net.minecraft.network.PacketBuffer;
import net.minecraft.util.StatCollector;
@@ -14,6 +18,7 @@ public class ResultInsufficientMachineTier implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getID() {
return "insufficient_machine_tier";
}
@@ -24,23 +29,27 @@ public class ResultInsufficientMachineTier implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getDisplayString() {
- return StatCollector
- .translateToLocalFormatted("GT5U.gui.text.insufficient_machine_tier", GT_Utility.formatNumbers(required));
+ return Objects.requireNonNull(
+ StatCollector.translateToLocalFormatted(
+ "GT5U.gui.text.insufficient_machine_tier",
+ GT_Utility.formatNumbers(required)));
}
@Override
+ @Nonnull
public CheckRecipeResult newInstance() {
return new ResultInsufficientMachineTier(0);
}
@Override
- public void encode(PacketBuffer buffer) {
+ public void encode(@Nonnull PacketBuffer buffer) {
buffer.writeVarIntToBuffer(required);
}
@Override
- public void decode(PacketBuffer buffer) {
+ public void decode(@Nonnull PacketBuffer buffer) {
required = buffer.readVarIntFromBuffer();
}
diff --git a/src/main/java/gregtech/api/recipe/check/ResultInsufficientPower.java b/src/main/java/gregtech/api/recipe/check/ResultInsufficientPower.java
index ca6b31ccef..fdc06c0c07 100644
--- a/src/main/java/gregtech/api/recipe/check/ResultInsufficientPower.java
+++ b/src/main/java/gregtech/api/recipe/check/ResultInsufficientPower.java
@@ -1,5 +1,9 @@
package gregtech.api.recipe.check;
+import java.util.Objects;
+
+import javax.annotation.Nonnull;
+
import net.minecraft.network.PacketBuffer;
import net.minecraft.util.StatCollector;
@@ -14,6 +18,7 @@ public class ResultInsufficientPower implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getID() {
return "insufficient_power";
}
@@ -24,25 +29,28 @@ public class ResultInsufficientPower implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getDisplayString() {
- return StatCollector.translateToLocalFormatted(
- "GT5U.gui.text.insufficient_power",
- GT_Utility.formatNumbers(required),
- GT_Utility.getColoredTierNameFromVoltage(required));
+ return Objects.requireNonNull(
+ StatCollector.translateToLocalFormatted(
+ "GT5U.gui.text.insufficient_power",
+ GT_Utility.formatNumbers(required),
+ GT_Utility.getColoredTierNameFromVoltage(required)));
}
@Override
+ @Nonnull
public CheckRecipeResult newInstance() {
return new ResultInsufficientPower(0);
}
@Override
- public void encode(PacketBuffer buffer) {
+ public void encode(@Nonnull PacketBuffer buffer) {
buffer.writeLong(required);
}
@Override
- public void decode(PacketBuffer buffer) {
+ public void decode(@Nonnull PacketBuffer buffer) {
required = buffer.readLong();
}
diff --git a/src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPower.java b/src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPower.java
index 42b352563d..62d2dd1fb2 100644
--- a/src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPower.java
+++ b/src/main/java/gregtech/api/recipe/check/ResultInsufficientStartupPower.java
@@ -1,5 +1,9 @@
package gregtech.api.recipe.check;
+import java.util.Objects;
+
+import javax.annotation.Nonnull;
+
import net.minecraft.network.PacketBuffer;
import net.minecraft.util.StatCollector;
@@ -14,6 +18,7 @@ public class ResultInsufficientStartupPower implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getID() {
return "insufficient_startup_power";
}
@@ -24,23 +29,27 @@ public class ResultInsufficientStartupPower implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getDisplayString() {
- return StatCollector
- .translateToLocalFormatted("GT5U.gui.text.insufficient_startup_power", GT_Utility.formatNumbers(required));
+ return Objects.requireNonNull(
+ StatCollector.translateToLocalFormatted(
+ "GT5U.gui.text.insufficient_startup_power",
+ GT_Utility.formatNumbers(required)));
}
@Override
+ @Nonnull
public CheckRecipeResult newInstance() {
return new ResultInsufficientStartupPower(0);
}
@Override
- public void encode(PacketBuffer buffer) {
+ public void encode(@Nonnull PacketBuffer buffer) {
buffer.writeVarIntToBuffer(required);
}
@Override
- public void decode(PacketBuffer buffer) {
+ public void decode(@Nonnull PacketBuffer buffer) {
required = buffer.readVarIntFromBuffer();
}
diff --git a/src/main/java/gregtech/api/recipe/check/SimpleCheckRecipeResult.java b/src/main/java/gregtech/api/recipe/check/SimpleCheckRecipeResult.java
index ed4c95f880..58c85bbe9d 100644
--- a/src/main/java/gregtech/api/recipe/check/SimpleCheckRecipeResult.java
+++ b/src/main/java/gregtech/api/recipe/check/SimpleCheckRecipeResult.java
@@ -2,6 +2,8 @@ package gregtech.api.recipe.check;
import java.util.Objects;
+import javax.annotation.Nonnull;
+
import net.minecraft.network.PacketBuffer;
import net.minecraft.util.StatCollector;
@@ -33,24 +35,26 @@ public class SimpleCheckRecipeResult implements CheckRecipeResult {
}
@Override
+ @Nonnull
public String getDisplayString() {
- return StatCollector.translateToLocal("GT5U.gui.text." + key);
+ return Objects.requireNonNull(StatCollector.translateToLocal("GT5U.gui.text." + key));
}
@Override
+ @Nonnull
public CheckRecipeResult newInstance() {
return new SimpleCheckRecipeResult(false, "", false);
}
@Override
- public void encode(PacketBuffer buffer) {
+ public void encode(@Nonnull PacketBuffer buffer) {
buffer.writeBoolean(success);
NetworkUtils.writeStringSafe(buffer, key);
buffer.writeBoolean(persistsOnShutdown);
}
@Override
- public void decode(PacketBuffer buffer) {
+ public void decode(@Nonnull PacketBuffer buffer) {
success = buffer.readBoolean();
key = NetworkUtils.readStringSafe(buffer);
persistsOnShutdown = buffer.readBoolean();
@@ -74,6 +78,7 @@ public class SimpleCheckRecipeResult implements CheckRecipeResult {
* Creates new result with successful state. Add your localized description with `GT5U.gui.text.{key}`.
* This is already registered to registry.
*/
+ @Nonnull
public static CheckRecipeResult ofSuccess(String key) {
return new SimpleCheckRecipeResult(true, key, false);
}
@@ -82,6 +87,7 @@ public class SimpleCheckRecipeResult implements CheckRecipeResult {
* Creates new result with failed state. Add your localized description with `GT5U.gui.text.{key}`.
* This is already registered to registry.
*/
+ @Nonnull
public static CheckRecipeResult ofFailure(String key) {
return new SimpleCheckRecipeResult(false, key, false);
}