diff options
| author | shedaniel <daniel@shedaniel.me> | 2020-08-27 19:47:47 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2020-08-27 19:47:47 +0800 |
| commit | 5bf10e476366e9aff291d55c050a324734bae911 (patch) | |
| tree | b056d52c273c55d6e4e6d86da3abd971e6cdbf1e | |
| parent | 6104964f60bac00a4ac1359bd244d361e50786bd (diff) | |
| download | RoughlyEnoughItems-5bf10e476366e9aff291d55c050a324734bae911.tar.gz RoughlyEnoughItems-5bf10e476366e9aff291d55c050a324734bae911.tar.bz2 RoughlyEnoughItems-5bf10e476366e9aff291d55c050a324734bae911.zip | |
Some Nullable and NotNull annotations
Signed-off-by: shedaniel <daniel@shedaniel.me>
36 files changed, 173 insertions, 123 deletions
diff --git a/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/REIHelper.java b/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/REIHelper.java index f6df5ab92..126358513 100644 --- a/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/REIHelper.java +++ b/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/REIHelper.java @@ -32,6 +32,7 @@ import net.minecraft.client.gui.screens.inventory.AbstractContainerScreen; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.List; @@ -59,11 +60,15 @@ public interface REIHelper { boolean isDarkThemeEnabled(); + @Nullable TextFieldWidget getSearchTextField(); + @NotNull + @ApiStatus.Internal List<ItemStack> getInventoryStacks(); void queueTooltip(@Nullable Tooltip tooltip); + @NotNull ResourceLocation getDefaultDisplayTexture(); } diff --git a/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeCategory.java b/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeCategory.java index 4136f3aa9..87e243e85 100644 --- a/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeCategory.java +++ b/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeCategory.java @@ -32,6 +32,7 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; import java.util.Collections; import java.util.List; @@ -44,6 +45,7 @@ public interface RecipeCategory<T extends RecipeDisplay> { * * @return the unique identifier of the category */ + @NotNull ResourceLocation getIdentifier(); /** @@ -51,6 +53,7 @@ public interface RecipeCategory<T extends RecipeDisplay> { * * @return the renderer of the icon */ + @NotNull default EntryStack getLogo() { return EntryStack.empty(); } @@ -60,6 +63,7 @@ public interface RecipeCategory<T extends RecipeDisplay> { * * @return the name */ + @NotNull String getCategoryName(); /** @@ -69,6 +73,7 @@ public interface RecipeCategory<T extends RecipeDisplay> { * @return the recipe renderer */ @ApiStatus.OverrideOnly + @NotNull default RecipeEntry getSimpleRenderer(T recipe) { return SimpleRecipeEntry.from(recipe::getInputEntries, recipe::getResultingEntries); } @@ -81,6 +86,7 @@ public interface RecipeCategory<T extends RecipeDisplay> { * @return the list of widgets */ @ApiStatus.OverrideOnly + @NotNull default List<Widget> setupDisplay(T recipeDisplay, Rectangle bounds) { return Collections.singletonList(Widgets.createCategoryBase(bounds)); } diff --git a/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java b/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java index a22dea125..44e655da4 100644 --- a/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java +++ b/RoughlyEnoughItems-api/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java @@ -26,6 +26,7 @@ package me.shedaniel.rei.api; import me.shedaniel.rei.utils.CollectionUtils; import net.minecraft.resources.ResourceLocation; import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; import java.util.Collections; import java.util.List; @@ -36,6 +37,7 @@ public interface RecipeDisplay { /** * @return a list of inputs */ + @NotNull List<List<EntryStack>> getInputEntries(); /** @@ -43,6 +45,7 @@ public interface RecipeDisplay { */ @Deprecated @ApiStatus.ScheduledForRemoval + @NotNull default List<EntryStack> getOutputEntries() { return Collections.emptyList(); } @@ -50,6 +53,7 @@ public interface RecipeDisplay { /** * @return a list of outputs */ + @NotNull default List<List<EntryStack>> getResultingEntries() { return CollectionUtils.map(getOutputEntries(), Collections::singletonList); } @@ -59,6 +63,7 @@ public interface RecipeDisplay { * * @return the list of required items */ + @NotNull default List<List<EntryStack>> getRequiredEntries() { return Collections.emptyList(); } @@ -68,6 +73,7 @@ public interface RecipeDisplay { * * @return the identifier of the category */ + @NotNull ResourceLocation getRecipeCategory(); /** @@ -75,6 +81,7 @@ public interface RecipeDisplay { * * @return the recipe location */ + @NotNull default Optional<ResourceLocation> getRecipeLocation() { return Optional.empty(); } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseCategory.java index 0d584b1af..4f7f64963 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseCategory.java @@ -53,22 +53,22 @@ import java.util.Objects; public class DefaultBeaconBaseCategory implements RecipeCategory<DefaultBeaconBaseDisplay> { @Override - public ResourceLocation getIdentifier() { + public @NotNull ResourceLocation getIdentifier() { return DefaultPlugin.BEACON; } @Override - public String getCategoryName() { + public @NotNull String getCategoryName() { return I18n.get("category.rei.beacon_base"); } @Override - public EntryStack getLogo() { + public @NotNull EntryStack getLogo() { return EntryStack.create(Blocks.BEACON); } @Override - public RecipeEntry getSimpleRenderer(DefaultBeaconBaseDisplay recipe) { + public @NotNull RecipeEntry getSimpleRenderer(DefaultBeaconBaseDisplay recipe) { String name = getCategoryName(); return new RecipeEntry() { @Override @@ -84,7 +84,7 @@ public class DefaultBeaconBaseCategory implements RecipeCategory<DefaultBeaconBa } @Override - public List<Widget> setupDisplay(DefaultBeaconBaseDisplay display, Rectangle bounds) { + public @NotNull List<Widget> setupDisplay(DefaultBeaconBaseDisplay display, Rectangle bounds) { List<Widget> widgets = Lists.newArrayList(); widgets.add(Widgets.createSlot(new Point(bounds.getCenterX() - 8, bounds.y + 3)).entry(getLogo())); Rectangle rectangle = new Rectangle(bounds.getCenterX() - (bounds.width / 2) - 1, bounds.y + 23, bounds.width + 2, bounds.height - 28); diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java index d19ecb9aa..603ef2dea 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/beacon/DefaultBeaconBaseDisplay.java @@ -30,6 +30,7 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; +import org.jetbrains.annotations.NotNull; import java.util.Collections; import java.util.List; @@ -44,7 +45,7 @@ public class DefaultBeaconBaseDisplay implements RecipeDisplay { } @Override - public List<List<EntryStack>> getInputEntries() { + public @NotNull List<List<EntryStack>> getInputEntries() { return Collections.singletonList(entries); } @@ -53,12 +54,12 @@ public class DefaultBeaconBaseDisplay implements RecipeDisplay { } @Override - public List<List<EntryStack>> getResultingEntries() { + public @NotNull List<List<EntryStack>> getResultingEntries() { return Collections.emptyList(); } @Override - public ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getRecipeCategory() { return DefaultPlugin.BEACON; } } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java index 1336166e2..132aa61d1 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/blasting/DefaultBlastingDisplay.java @@ -29,6 +29,7 @@ import net.fabricmc.api.EnvType; import net.fabricmc.api.Environment; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.crafting.BlastingRecipe; +import org.jetbrains.annotations.NotNull; @Environment(EnvType.CLIENT) public class DefaultBlastingDisplay extends DefaultCookingDisplay { @@ -38,7 +39,7 @@ public class DefaultBlastingDisplay extends DefaultCookingDisplay { } @Override - public ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getRecipeCategory() { return DefaultPlugin.BLASTING; } } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java index e4bc9a64c..37d418fa8 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java @@ -40,6 +40,7 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.item.Items; import net.minecraft.world.level.block.Blocks; +import org.jetbrains.annotations.NotNull; import java.util.List; @@ -47,22 +48,22 @@ import java.util.List; public class DefaultBrewingCategory implements RecipeCategory<DefaultBrewingDisplay> { @Override - public ResourceLocation getIdentifier() { + public @NotNull ResourceLocation getIdentifier() { return DefaultPlugin.BREWING; } @Override - public EntryStack getLogo() { + public @NotNull EntryStack getLogo() { return EntryStack.create(Blocks.BREWING_STAND); } @Override - public String getCategoryName() { + public @NotNull String getCategoryName() { return I18n.get("category.rei.brewing"); } @Override - public List<Widget> setupDisplay(DefaultBrewingDisplay display, Rectangle bounds) { + public @NotNull List<Widget> setupDisplay(DefaultBrewingDisplay display, Rectangle bounds) { Point startPoint = new Point(bounds.getCenterX() - 52, bounds.getCenterY() - 29); List<Widget> widgets = Lists.newArrayList(); widgets.add(Widgets.createRecipeBase(bounds)); diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java index 1d096ab1a..1a882ad3e 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java @@ -35,6 +35,7 @@ import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; import java.util.ArrayList; import java.util.Collections; @@ -60,17 +61,17 @@ public class DefaultBrewingDisplay implements RecipeDisplay { } @Override - public List<List<EntryStack>> getInputEntries() { + public @NotNull List<List<EntryStack>> getInputEntries() { return Lists.newArrayList(Collections.singletonList(input), reactant); } @Override - public List<List<EntryStack>> getResultingEntries() { + public @NotNull List<List<EntryStack>> getResultingEntries() { return Collections.singletonList(Collections.singletonList(output)); } @Override - public ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getRecipeCategory() { return DefaultPlugin.BREWING; } @@ -84,7 +85,7 @@ public class DefaultBrewingDisplay implements RecipeDisplay { } @Override - public List<List<EntryStack>> getRequiredEntries() { + public @NotNull List<List<EntryStack>> getRequiredEntries() { return getInputEntries(); } } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java index 2f3da489b..5192dc7d9 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java @@ -35,6 +35,7 @@ import net.minecraft.client.resources.language.I18n; import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.Blocks; +import org.jetbrains.annotations.NotNull; import java.text.DecimalFormat; import java.util.List; @@ -42,22 +43,22 @@ import java.util.List; public class DefaultCampfireCategory implements RecipeCategory<DefaultCampfireDisplay> { @Override - public ResourceLocation getIdentifier() { + public @NotNull ResourceLocation getIdentifier() { return DefaultPlugin.CAMPFIRE; } @Override - public EntryStack getLogo() { + public @NotNull EntryStack getLogo() { return EntryStack.create(Blocks.CAMPFIRE); } @Override - public String getCategoryName() { + public @NotNull String getCategoryName() { return I18n.get("category.rei.campfire"); } @Override - public List<Widget> setupDisplay(DefaultCampfireDisplay display, Rectangle bounds) { + public @NotNull List<Widget> setupDisplay(DefaultCampfireDisplay display, Rectangle bounds) { Point startPoint = new Point(bounds.getCenterX() - 41, bounds.y + 10); final double cookingTime = display.getCookTime(); DecimalFormat df = new DecimalFormat("###.##"); diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java index 1dd6b1c8d..fa50fb918 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java @@ -34,6 +34,7 @@ import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.AbstractCookingRecipe; import net.minecraft.world.item.crafting.CampfireCookingRecipe; import net.minecraft.world.item.crafting.Ingredient; +import org.jetbrains.annotations.NotNull; import java.util.Collections; import java.util.List; @@ -63,27 +64,27 @@ public class DefaultCampfireDisplay implements RecipeDisplay { } @Override - public Optional<ResourceLocation> getRecipeLocation() { + public @NotNull Optional<ResourceLocation> getRecipeLocation() { return Optional.ofNullable(display).map(AbstractCookingRecipe::getId); } @Override - public List<List<EntryStack>> getInputEntries() { + public @NotNull List<List<EntryStack>> getInputEntries() { return inputs; } @Override - public List<List<EntryStack>> getResultingEntries() { + public @NotNull List<List<EntryStack>> getResultingEntries() { return Collections.singletonList(output); } @Override - public List<List<EntryStack>> getRequiredEntries() { + public @NotNull List<List<EntryStack>> getRequiredEntries() { return inputs; } @Override - public ResourceLocation getRecipeCategory() { + public @NotNull ResourceLocation getRecipeCategory() { return DefaultPlugin.CAMPFIRE; } diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java index 148dcdba7..56447b60f 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java @@ -43,6 +43,7 @@ import net.minecraft.network.chat.TranslatableComponent; import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; import net.minecraft.world.level.block.Blocks; +import org.jetbrains.annotations.NotNull; import java.util.*; @@ -50,22 +51,22 @@ import java.util.*; public class DefaultCompostingCategory implements RecipeCategory<DefaultCompostingDisplay> { @Override - public ResourceLocation getIdentifier() { + public @NotNull ResourceLocation getIdentifier() { return DefaultPlugin.COMPOSTING; } @Override - public EntryStack getLogo() { + public @NotNull EntryStack getLogo() { return EntryStack.create(Blocks.COMPOSTER); } @Override - public String getCategoryName() { + public @NotNull String getCategoryName() { return I18n.get("category.rei.composting"); } @Override - public RecipeEntry getSimpleRenderer(DefaultCompostingDisplay recipe) { + public @NotNull RecipeEntry getSimpleRenderer(DefaultCompostingDisplay recipe) { return new RecipeEntry() { private Component text = new TranslatableComponent("text.rei.composting.page", recipe.getPage() + 1); @@ -82,7 +83,7 @@ public class DefaultCompostingCategory implements RecipeCategory<DefaultComposti } @Override - public List<Widget> setupDisplay(DefaultCompostingDisplay display, Rectangle bounds) { + public @NotNull List<Widget> setupDisplay(DefaultCompostingDisplay display, Rectangle bounds) { List<Widget> widgets = Lists.newArrayList(); Point startingPoint = new Point(bounds.x + bounds.width - 55, bounds.y + 110); List<EntryStack> stacks = new ArrayList<>(display.getRequiredEntries().get(0)); diff --git a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java index 1f166c3a2..f5f1df2f6 100644 --- a/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java +++ b/RoughlyEnoughItems-default-plugin/src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingDisplay.java @@ -32,6 +32,7 @@ import net.fabricmc.api.Environment; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.ItemLike; +import org.jetbrains.annotations.NotNull; import java.util.Collections; import java.util.List; @@ -56,7 +57,7 @@ public class DefaultCompostingDisplay implements RecipeDisplay { |
