From 59df35f43df44183ccf3ae0b651f169e4e6eace1 Mon Sep 17 00:00:00 2001 From: raoulvdberge Date: Sun, 12 Mar 2017 14:52:38 +0100 Subject: [PATCH] Cleanup inventory package --- .../network/node/NetworkNodeConstructor.java | 4 ++-- .../network/node/NetworkNodeCrafter.java | 4 ++-- .../network/node/NetworkNodeDestructor.java | 4 ++-- .../network/node/NetworkNodeDetector.java | 4 ++-- .../network/node/NetworkNodeExporter.java | 6 +++--- .../node/NetworkNodeFluidInterface.java | 4 ++-- .../apiimpl/network/node/NetworkNodeGrid.java | 6 +++--- .../network/node/NetworkNodeImporter.java | 2 +- .../network/node/NetworkNodeInterface.java | 8 ++++---- .../node/NetworkNodeNetworkTransmitter.java | 6 +++--- .../node/NetworkNodeSecurityManager.java | 10 +++++----- .../network/node/NetworkNodeSolderer.java | 10 +++++----- .../network/node/NetworkNodeStorage.java | 6 +++--- .../node/NetworkNodeStorageMonitor.java | 6 +++--- .../node/NetworkNodeWirelessTransmitter.java | 4 ++-- .../node/diskdrive/NetworkNodeDiskDrive.java | 17 ++++++++--------- .../NetworkNodeDiskManipulator.java | 14 +++++++++----- .../NetworkNodeExternalStorage.java | 6 +++--- .../inventory/IItemHandlerListener.java | 5 ----- .../inventory/IItemValidator.java | 10 ---------- .../ImportingBehaviorItemHandler.java | 4 ++-- ...HandlerBasic.java => ItemHandlerBase.java} | 19 +++++++++++-------- .../inventory/ItemHandlerFilter.java | 5 +++-- .../inventory/ItemHandlerFluid.java | 7 +++++-- .../ItemHandlerListenerNetworkNode.java | 6 ++++-- .../inventory/ItemHandlerListenerTile.java | 6 ++++-- .../inventory/ItemHandlerUpgrade.java | 17 ++++++++++------- .../inventory/ItemValidatorBasic.java | 16 +++++----------- .../tile/TileProcessingPatternEncoder.java | 10 +++++----- .../craftingmonitor/ICraftingMonitor.java | 4 ++-- .../WirelessCraftingMonitor.java | 4 ++-- .../refinedstorage/tile/grid/IGrid.java | 4 ++-- .../tile/grid/WirelessFluidGrid.java | 4 ++-- .../tile/grid/WirelessGrid.java | 4 ++-- 34 files changed, 121 insertions(+), 125 deletions(-) delete mode 100755 src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemHandlerListener.java delete mode 100755 src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemValidator.java rename src/main/java/com/raoulvdberge/refinedstorage/inventory/{ItemHandlerBasic.java => ItemHandlerBase.java} (68%) mode change 100755 => 100644 diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeConstructor.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeConstructor.java index e872b217e..08a59b328 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeConstructor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeConstructor.java @@ -5,7 +5,7 @@ import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.container.slot.SlotFilter; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; @@ -50,7 +50,7 @@ public class NetworkNodeConstructor extends NetworkNode implements IComparable, private static final int BASE_SPEED = 20; - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(1, new ItemHandlerListenerNetworkNode(this)) { + private ItemHandlerBase itemFilters = new ItemHandlerBase(1, new ItemHandlerListenerNetworkNode(this)) { @Override protected void onContentsChanged(int slot) { super.onContentsChanged(slot); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeCrafter.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeCrafter.java index 1965607bc..d4ad3ec02 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeCrafter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeCrafter.java @@ -7,7 +7,7 @@ import com.raoulvdberge.refinedstorage.api.autocrafting.ICraftingPatternContaine import com.raoulvdberge.refinedstorage.api.autocrafting.ICraftingPatternProvider; import com.raoulvdberge.refinedstorage.api.network.INetworkMaster; import com.raoulvdberge.refinedstorage.api.util.IComparer; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; import com.raoulvdberge.refinedstorage.item.ItemUpgrade; @@ -26,7 +26,7 @@ public class NetworkNodeCrafter extends NetworkNode implements ICraftingPatternC private static final String NBT_TRIGGERED_AUTOCRAFTING = "TriggeredAutocrafting"; private static final String NBT_BLOCKED = "Blocked"; - private ItemHandlerBasic patterns = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this), s -> { + private ItemHandlerBase patterns = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this), s -> { // We can only validate the crafting pattern if the world exists. // If the world doesn't exist, this is probably called while reading and in that case it doesn't matter. if (holder.world() != null) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDestructor.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDestructor.java index bbbdbf84b..525024563 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDestructor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDestructor.java @@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.apiimpl.network.node; import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.util.IComparer; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; @@ -49,7 +49,7 @@ public class NetworkNodeDestructor extends NetworkNode implements IComparable, I private static final int BASE_SPEED = 20; - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid fluidFilters = new ItemHandlerFluid(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ItemHandlerListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_SILK_TOUCH, ItemUpgrade.TYPE_FORTUNE); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDetector.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDetector.java index 8c8539163..6fc7d7cac 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDetector.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeDetector.java @@ -7,7 +7,7 @@ import com.raoulvdberge.refinedstorage.api.autocrafting.task.ICraftingTask; import com.raoulvdberge.refinedstorage.api.network.INetworkMaster; import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.API; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.tile.TileDetector; @@ -34,7 +34,7 @@ public class NetworkNodeDetector extends NetworkNode implements IComparable, ITy private static final String NBT_AMOUNT = "Amount"; private static final String NBT_TYPE = "Type"; - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(1, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase itemFilters = new ItemHandlerBase(1, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid fluidFilters = new ItemHandlerFluid(1, new ItemHandlerListenerNetworkNode(this)); private int compare = IComparer.COMPARE_NBT | IComparer.COMPARE_DAMAGE; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java index fa75c88fa..16902b385 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeExporter.java @@ -8,7 +8,7 @@ import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.API; import com.raoulvdberge.refinedstorage.integration.cyclopscore.IntegrationCyclopsCore; import com.raoulvdberge.refinedstorage.integration.cyclopscore.SlotlessItemHandlerHelper; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; @@ -34,7 +34,7 @@ public class NetworkNodeExporter extends NetworkNode implements IComparable, ITy private static final String NBT_REGULATOR = "Regulator"; private static final String NBT_CRAFT_ONLY = "CraftOnly"; - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid fluidFilters = new ItemHandlerFluid(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ItemHandlerListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING, ItemUpgrade.TYPE_STACK); @@ -301,7 +301,7 @@ public class NetworkNodeExporter extends NetworkNode implements IComparable, ITy return holder.world().isRemote ? TileExporter.REGULATOR.getValue() : regulator; } - public ItemHandlerBasic getItemFilters() { + public ItemHandlerBase getItemFilters() { return itemFilters; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java index 5db67f78b..32e41e296 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java @@ -55,7 +55,7 @@ public class NetworkNodeFluidInterface extends NetworkNode implements IComparabl private FluidHandlerFluidInterface tank = new FluidHandlerFluidInterface(tankIn, tankOut); - private ItemHandlerBasic in = new ItemHandlerBasic(1, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase in = new ItemHandlerBase(1, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid out = new ItemHandlerFluid(1, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ItemHandlerListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK); @@ -205,7 +205,7 @@ public class NetworkNodeFluidInterface extends NetworkNode implements IComparabl return upgrades; } - public ItemHandlerBasic getIn() { + public ItemHandlerBase getIn() { return in; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java index 827f11f6d..7e8b06841 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeGrid.java @@ -9,7 +9,7 @@ import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.API; import com.raoulvdberge.refinedstorage.block.BlockGrid; import com.raoulvdberge.refinedstorage.block.GridType; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFilter; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemValidatorBasic; @@ -81,7 +81,7 @@ public class NetworkNodeGrid extends NetworkNode implements IGrid { private InventoryCrafting matrix = new InventoryCrafting(craftingContainer, 3, 3); private InventoryCraftResult result = new InventoryCraftResult(); - private ItemHandlerBasic patterns = new ItemHandlerBasic(2, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.PATTERN)); + private ItemHandlerBase patterns = new ItemHandlerBase(2, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.PATTERN)); private List filters = new ArrayList<>(); private List tabs = new ArrayList<>(); private ItemHandlerFilter filter = new ItemHandlerFilter(filters, tabs, new ItemHandlerListenerNetworkNode(this)); @@ -178,7 +178,7 @@ public class NetworkNodeGrid extends NetworkNode implements IGrid { } @Override - public ItemHandlerBasic getFilter() { + public ItemHandlerBase getFilter() { return filter; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java index 1339af4de..1080acd0e 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeImporter.java @@ -25,7 +25,7 @@ public class NetworkNodeImporter extends NetworkNode implements IComparable, IFi private static final String NBT_MODE = "Mode"; private static final String NBT_TYPE = "Type"; - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid fluidFilters = new ItemHandlerFluid(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ItemHandlerListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeInterface.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeInterface.java index 01eda19ad..ae6d52524 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeInterface.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeInterface.java @@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.apiimpl.network.node; import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.util.IComparer; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerInterface; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; @@ -19,10 +19,10 @@ public class NetworkNodeInterface extends NetworkNode implements IComparable { private static final String NBT_COMPARE = "Compare"; - private ItemHandlerBasic importItems = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase importItems = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); - private ItemHandlerBasic exportSpecimenItems = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); - private ItemHandlerBasic exportItems = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase exportSpecimenItems = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase exportItems = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerInterface items = new ItemHandlerInterface(importItems, exportItems); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeNetworkTransmitter.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeNetworkTransmitter.java index 632c41bb9..ce738eb3b 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeNetworkTransmitter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeNetworkTransmitter.java @@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.apiimpl.network.node; import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.RSItems; import com.raoulvdberge.refinedstorage.RSUtils; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; import com.raoulvdberge.refinedstorage.inventory.ItemValidatorBasic; @@ -33,7 +33,7 @@ public class NetworkNodeNetworkTransmitter extends NetworkNode { } }; - private ItemHandlerBasic networkCard = new ItemHandlerBasic(1, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.NETWORK_CARD)) { + private ItemHandlerBase networkCard = new ItemHandlerBase(1, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.NETWORK_CARD)) { @Override protected void onContentsChanged(int slot) { super.onContentsChanged(slot); @@ -91,7 +91,7 @@ public class NetworkNodeNetworkTransmitter extends NetworkNode { ); } - public ItemHandlerBasic getNetworkCard() { + public ItemHandlerBase getNetworkCard() { return networkCard; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSecurityManager.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSecurityManager.java index abaa25c20..30ea33e58 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSecurityManager.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSecurityManager.java @@ -8,7 +8,7 @@ import com.raoulvdberge.refinedstorage.api.network.security.ISecurityCard; import com.raoulvdberge.refinedstorage.api.network.security.ISecurityCardContainer; import com.raoulvdberge.refinedstorage.api.network.security.Permission; import com.raoulvdberge.refinedstorage.apiimpl.network.security.SecurityCard; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemValidatorBasic; import com.raoulvdberge.refinedstorage.item.ItemSecurityCard; @@ -29,7 +29,7 @@ public class NetworkNodeSecurityManager extends NetworkNode implements ISecurity private List actualCards = new ArrayList<>(); - private ItemHandlerBasic cards = new ItemHandlerBasic(9 * 2, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.SECURITY_CARD)) { + private ItemHandlerBase cards = new ItemHandlerBase(9 * 2, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.SECURITY_CARD)) { @Override protected void onContentsChanged(int slot) { super.onContentsChanged(slot); @@ -43,7 +43,7 @@ public class NetworkNodeSecurityManager extends NetworkNode implements ISecurity } } }; - private ItemHandlerBasic editCard = new ItemHandlerBasic(1, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.SECURITY_CARD)); + private ItemHandlerBase editCard = new ItemHandlerBase(1, new ItemHandlerListenerNetworkNode(this), new ItemValidatorBasic(RSItems.SECURITY_CARD)); @Nullable private UUID owner; @@ -147,11 +147,11 @@ public class NetworkNodeSecurityManager extends NetworkNode implements ISecurity network.getSecurityManager().rebuild(); } - public ItemHandlerBasic getCardsItems() { + public ItemHandlerBase getCardsItems() { return cards; } - public ItemHandlerBasic getEditCard() { + public ItemHandlerBase getEditCard() { return editCard; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSolderer.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSolderer.java index 021d9c458..96a388a43 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSolderer.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeSolderer.java @@ -6,7 +6,7 @@ import com.raoulvdberge.refinedstorage.api.network.INetworkMaster; import com.raoulvdberge.refinedstorage.api.solderer.ISoldererRecipe; import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.API; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; import com.raoulvdberge.refinedstorage.item.ItemUpgrade; @@ -23,7 +23,7 @@ public class NetworkNodeSolderer extends NetworkNode { public static final String NBT_WORKING = "Working"; private static final String NBT_PROGRESS = "Progress"; - private ItemHandlerBasic items = new ItemHandlerBasic(3, new ItemHandlerListenerNetworkNode(this)) { + private ItemHandlerBase items = new ItemHandlerBase(3, new ItemHandlerListenerNetworkNode(this)) { @Override @Nonnull public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) { @@ -36,7 +36,7 @@ public class NetworkNodeSolderer extends NetworkNode { return stack; } }; - private ItemHandlerBasic result = new ItemHandlerBasic(1, new ItemHandlerListenerNetworkNode(this)) { + private ItemHandlerBase result = new ItemHandlerBase(1, new ItemHandlerListenerNetworkNode(this)) { @Override @Nonnull public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) { @@ -173,11 +173,11 @@ public class NetworkNodeSolderer extends NetworkNode { return tag; } - public ItemHandlerBasic getItems() { + public ItemHandlerBase getItems() { return items; } - public ItemHandlerBasic getResult() { + public ItemHandlerBase getResult() { return result; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorage.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorage.java index 78f239ca9..65a778c7c 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorage.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorage.java @@ -11,7 +11,7 @@ import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.storage.StorageDiskItem; import com.raoulvdberge.refinedstorage.block.BlockStorage; import com.raoulvdberge.refinedstorage.block.ItemStorageType; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.tile.TileStorage; import com.raoulvdberge.refinedstorage.tile.config.*; @@ -66,7 +66,7 @@ public class NetworkNodeStorage extends NetworkNode implements IGuiStorage, ISto private static final String NBT_MODE = "Mode"; private static final String NBT_VOID_EXCESS = "VoidExcess"; - private ItemHandlerBasic filters = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase filters = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private StorageItem storage = new StorageItem(StorageDiskItem.getTag()); private NBTTagCompound storageTagToRead = null; @@ -244,7 +244,7 @@ public class NetworkNodeStorage extends NetworkNode implements IGuiStorage, ISto return storage; } - public ItemHandlerBasic getFilters() { + public ItemHandlerBase getFilters() { return filters; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorageMonitor.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorageMonitor.java index 40ce294b6..24882bdc6 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorageMonitor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeStorageMonitor.java @@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.apiimpl.network.node; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.API; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.tile.TileStorageMonitor; @@ -29,7 +29,7 @@ public class NetworkNodeStorageMonitor extends NetworkNode implements IComparabl private static final String NBT_COMPARE = "Compare"; private static final String NBT_TYPE = "Type"; - private ItemHandlerBasic itemFilter = new ItemHandlerBasic(1, new ItemHandlerListenerNetworkNode(this)) { + private ItemHandlerBase itemFilter = new ItemHandlerBase(1, new ItemHandlerListenerNetworkNode(this)) { @Override public void onContentsChanged(int slot) { super.onContentsChanged(slot); @@ -188,7 +188,7 @@ public class NetworkNodeStorageMonitor extends NetworkNode implements IComparabl RSUtils.readItems(fluidFilter, 1, tag); } - public ItemHandlerBasic getItemFilter() { + public ItemHandlerBase getItemFilter() { return itemFilter; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeWirelessTransmitter.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeWirelessTransmitter.java index e63629897..c7b63ec8b 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeWirelessTransmitter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeWirelessTransmitter.java @@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.apiimpl.network.node; import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.network.IWirelessTransmitter; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; import com.raoulvdberge.refinedstorage.item.ItemUpgrade; @@ -64,7 +64,7 @@ public class NetworkNodeWirelessTransmitter extends NetworkNode implements IWire return holder.world().provider.getDimension(); } - public ItemHandlerBasic getUpgrades() { + public ItemHandlerBase getUpgrades() { return upgrades; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java index f157f94bb..16c785b79 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskdrive/NetworkNodeDiskDrive.java @@ -3,16 +3,12 @@ package com.raoulvdberge.refinedstorage.apiimpl.network.node.diskdrive; import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.network.INetworkMaster; -import com.raoulvdberge.refinedstorage.api.storage.AccessType; -import com.raoulvdberge.refinedstorage.api.storage.IStorage; -import com.raoulvdberge.refinedstorage.api.storage.IStorageDisk; -import com.raoulvdberge.refinedstorage.api.storage.IStorageProvider; +import com.raoulvdberge.refinedstorage.api.storage.*; import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.network.node.IGuiStorage; import com.raoulvdberge.refinedstorage.apiimpl.network.node.INetworkNodeHolder; import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNode; -import com.raoulvdberge.refinedstorage.inventory.IItemValidator; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.tile.TileDiskDrive; @@ -26,8 +22,11 @@ import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.items.IItemHandler; import java.util.List; +import java.util.function.Predicate; public class NetworkNodeDiskDrive extends NetworkNode implements IGuiStorage, IStorageProvider, IComparable, IFilterable, IPrioritizable, IType, IExcessVoidable, IAccessType { + public static final Predicate VALIDATOR_STORAGE_DISK = s -> s.getItem() instanceof IStorageDiskProvider && ((IStorageDiskProvider) s.getItem()).create(s).isValid(s); + public static final String ID = "disk_drive"; private static final String NBT_PRIORITY = "Priority"; @@ -36,7 +35,7 @@ public class NetworkNodeDiskDrive extends NetworkNode implements IGuiStorage, IS private static final String NBT_TYPE = "Type"; private static final String NBT_VOID_EXCESS = "VoidExcess"; - private ItemHandlerBasic disks = new ItemHandlerBasic(8, new ItemHandlerListenerNetworkNode(this), IItemValidator.STORAGE_DISK) { + private ItemHandlerBase disks = new ItemHandlerBase(8, new ItemHandlerListenerNetworkNode(this), VALIDATOR_STORAGE_DISK) { @Override protected void onContentsChanged(int slot) { super.onContentsChanged(slot); @@ -74,7 +73,7 @@ public class NetworkNodeDiskDrive extends NetworkNode implements IGuiStorage, IS } }; - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid fluidFilters = new ItemHandlerFluid(9, new ItemHandlerListenerNetworkNode(this)); private IStorageDisk[] itemStorages = new IStorageDisk[8]; @@ -374,7 +373,7 @@ public class NetworkNodeDiskDrive extends NetworkNode implements IGuiStorage, IS return getType() == IType.ITEMS ? itemFilters : fluidFilters; } - public ItemHandlerBasic getItemFilters() { + public ItemHandlerBase getItemFilters() { return itemFilters; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/NetworkNodeDiskManipulator.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/NetworkNodeDiskManipulator.java index f9bd5290c..a49d9c764 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/NetworkNodeDiskManipulator.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/diskmanipulator/NetworkNodeDiskManipulator.java @@ -6,7 +6,11 @@ import com.raoulvdberge.refinedstorage.api.storage.IStorageDisk; import com.raoulvdberge.refinedstorage.api.util.IComparer; import com.raoulvdberge.refinedstorage.apiimpl.network.node.INetworkNodeHolder; import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNode; -import com.raoulvdberge.refinedstorage.inventory.*; +import com.raoulvdberge.refinedstorage.apiimpl.network.node.diskdrive.NetworkNodeDiskDrive; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerUpgrade; import com.raoulvdberge.refinedstorage.item.ItemUpgrade; import com.raoulvdberge.refinedstorage.tile.config.IComparable; import com.raoulvdberge.refinedstorage.tile.config.IFilterable; @@ -43,7 +47,7 @@ public class NetworkNodeDiskManipulator extends NetworkNode implements IComparab private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(4, new ItemHandlerListenerNetworkNode(this), ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_STACK); - private ItemHandlerBasic inputDisks = new ItemHandlerBasic(3, new ItemHandlerListenerNetworkNode(this), IItemValidator.STORAGE_DISK) { + private ItemHandlerBase inputDisks = new ItemHandlerBase(3, new ItemHandlerListenerNetworkNode(this), NetworkNodeDiskDrive.VALIDATOR_STORAGE_DISK) { @Override protected void onContentsChanged(int slot) { super.onContentsChanged(slot); @@ -77,7 +81,7 @@ public class NetworkNodeDiskManipulator extends NetworkNode implements IComparab } }; - private ItemHandlerBasic outputDisks = new ItemHandlerBasic(3, new ItemHandlerListenerNetworkNode(this), IItemValidator.STORAGE_DISK) { + private ItemHandlerBase outputDisks = new ItemHandlerBase(3, new ItemHandlerListenerNetworkNode(this), NetworkNodeDiskDrive.VALIDATOR_STORAGE_DISK) { @Override protected void onContentsChanged(int slot) { super.onContentsChanged(slot); @@ -101,7 +105,7 @@ public class NetworkNodeDiskManipulator extends NetworkNode implements IComparab super(holder); } - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid fluidFilters = new ItemHandlerFluid(9, new ItemHandlerListenerNetworkNode(this)); @Override @@ -387,7 +391,7 @@ public class NetworkNodeDiskManipulator extends NetworkNode implements IComparab return outputDisks; } - public ItemHandlerBasic getItemFilters() { + public ItemHandlerBase getItemFilters() { return itemFilters; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/externalstorage/NetworkNodeExternalStorage.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/externalstorage/NetworkNodeExternalStorage.java index b481ecf1e..93c9e6e32 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/externalstorage/NetworkNodeExternalStorage.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/externalstorage/NetworkNodeExternalStorage.java @@ -13,7 +13,7 @@ import com.raoulvdberge.refinedstorage.apiimpl.network.node.IGuiStorage; import com.raoulvdberge.refinedstorage.apiimpl.network.node.INetworkNodeHolder; import com.raoulvdberge.refinedstorage.apiimpl.network.node.NetworkNode; import com.raoulvdberge.refinedstorage.integration.cyclopscore.IntegrationCyclopsCore; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFluid; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerNetworkNode; import com.raoulvdberge.refinedstorage.tile.TileExternalStorage; @@ -39,7 +39,7 @@ public class NetworkNodeExternalStorage extends NetworkNode implements IStorageP private static final String NBT_MODE = "Mode"; private static final String NBT_TYPE = "Type"; - private ItemHandlerBasic itemFilters = new ItemHandlerBasic(9, new ItemHandlerListenerNetworkNode(this)); + private ItemHandlerBase itemFilters = new ItemHandlerBase(9, new ItemHandlerListenerNetworkNode(this)); private ItemHandlerFluid fluidFilters = new ItemHandlerFluid(9, new ItemHandlerListenerNetworkNode(this)); private int priority = 0; @@ -333,7 +333,7 @@ public class NetworkNodeExternalStorage extends NetworkNode implements IStorageP return getType() == IType.ITEMS ? itemFilters : fluidFilters; } - public ItemHandlerBasic getItemFilters() { + public ItemHandlerBase getItemFilters() { return itemFilters; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemHandlerListener.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemHandlerListener.java deleted file mode 100755 index 689f7d893..000000000 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemHandlerListener.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.raoulvdberge.refinedstorage.inventory; - -public interface IItemHandlerListener { - void onChanged(int slot); -} diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemValidator.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemValidator.java deleted file mode 100755 index a12a93129..000000000 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/IItemValidator.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.raoulvdberge.refinedstorage.inventory; - -import com.raoulvdberge.refinedstorage.api.storage.IStorageDiskProvider; -import net.minecraft.item.ItemStack; - -public interface IItemValidator { - IItemValidator STORAGE_DISK = s -> s.getItem() instanceof IStorageDiskProvider && ((IStorageDiskProvider) s.getItem()).create(s).isValid(s); - - boolean isValid(ItemStack stack); -} diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ImportingBehaviorItemHandler.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ImportingBehaviorItemHandler.java index 6d650487d..361d79f3d 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ImportingBehaviorItemHandler.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ImportingBehaviorItemHandler.java @@ -27,12 +27,12 @@ public class ImportingBehaviorItemHandler implements IImportingBehavior { if (handler.getSlots() > 0) { ItemStack stack = handler.getStackInSlot(currentSlot); - if (stack == null || stack.isEmpty() || !IFilterable.canTake(itemFilters, mode, compare, stack)) { + if (stack.isEmpty() || !IFilterable.canTake(itemFilters, mode, compare, stack)) { currentSlot++; } else if (ticks % upgrades.getSpeed() == 0) { ItemStack result = handler.extractItem(currentSlot, upgrades.getItemInteractCount(), true); - if (result != null && !stack.isEmpty() && network.insertItem(result, result.getCount(), true) == null) { + if (!result.isEmpty() && network.insertItem(result, result.getCount(), true) == null) { network.insertItemTracked(result, result.getCount()); handler.extractItem(currentSlot, upgrades.getItemInteractCount(), false); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerBasic.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerBase.java old mode 100755 new mode 100644 similarity index 68% rename from src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerBasic.java rename to src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerBase.java index 9415aab7c..cc42a88a7 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerBasic.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerBase.java @@ -5,20 +5,23 @@ import net.minecraftforge.items.ItemStackHandler; import javax.annotation.Nonnull; import javax.annotation.Nullable; +import java.util.function.Consumer; +import java.util.function.Predicate; -public class ItemHandlerBasic extends ItemStackHandler { - private IItemHandlerListener listener; +public class ItemHandlerBase extends ItemStackHandler { + @Nullable + private Consumer listener; - protected IItemValidator[] validators; + protected Predicate[] validators; - public ItemHandlerBasic(int size, @Nullable IItemHandlerListener listener, IItemValidator... validators) { + public ItemHandlerBase(int size, @Nullable Consumer listener, Predicate... validators) { super(size); this.listener = listener; this.validators = validators; } - public ItemHandlerBasic(int size, IItemValidator... validators) { + public ItemHandlerBase(int size, Predicate... validators) { this(size, null, validators); } @@ -35,8 +38,8 @@ public class ItemHandlerBasic extends ItemStackHandler { @Nonnull public ItemStack insertItem(int slot, @Nonnull ItemStack stack, boolean simulate) { if (validators.length > 0) { - for (IItemValidator validator : validators) { - if (validator.isValid(stack)) { + for (Predicate validator : validators) { + if (validator.test(stack)) { return super.insertItem(slot, stack, simulate); } } @@ -52,7 +55,7 @@ public class ItemHandlerBasic extends ItemStackHandler { super.onContentsChanged(slot); if (listener != null) { - listener.onChanged(slot); + listener.accept(slot); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFilter.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFilter.java index eb88e1688..8d4a733a6 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFilter.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFilter.java @@ -12,12 +12,13 @@ import net.minecraftforge.fml.relauncher.Side; import javax.annotation.Nullable; import java.util.ArrayList; import java.util.List; +import java.util.function.Consumer; -public class ItemHandlerFilter extends ItemHandlerBasic { +public class ItemHandlerFilter extends ItemHandlerBase { private List filters; private List tabs; - public ItemHandlerFilter(List filters, List tabs, @Nullable IItemHandlerListener listener) { + public ItemHandlerFilter(List filters, List tabs, @Nullable Consumer listener) { super(4, listener, new ItemValidatorBasic(RSItems.FILTER)); this.filters = filters; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFluid.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFluid.java index e2e31ea83..5a9a9ac01 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFluid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerFluid.java @@ -5,10 +5,13 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.items.ItemHandlerHelper; -public class ItemHandlerFluid extends ItemHandlerBasic { +import javax.annotation.Nullable; +import java.util.function.Consumer; + +public class ItemHandlerFluid extends ItemHandlerBase { private FluidStack[] fluids; - public ItemHandlerFluid(int size, IItemHandlerListener listener) { + public ItemHandlerFluid(int size, @Nullable Consumer listener) { super(size, listener, s -> RSUtils.getFluidFromStack(ItemHandlerHelper.copyStackWithSize(s, 1), true).getValue() != null); this.fluids = new FluidStack[size]; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerNetworkNode.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerNetworkNode.java index cb739e6ea..b9d57a0af 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerNetworkNode.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerNetworkNode.java @@ -2,7 +2,9 @@ package com.raoulvdberge.refinedstorage.inventory; import com.raoulvdberge.refinedstorage.api.network.node.INetworkNode; -public class ItemHandlerListenerNetworkNode implements IItemHandlerListener { +import java.util.function.Consumer; + +public class ItemHandlerListenerNetworkNode implements Consumer { private INetworkNode node; public ItemHandlerListenerNetworkNode(INetworkNode node) { @@ -10,7 +12,7 @@ public class ItemHandlerListenerNetworkNode implements IItemHandlerListener { } @Override - public void onChanged(int slot) { + public void accept(Integer slot) { node.markDirty(); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerTile.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerTile.java index 09f40631c..983538590 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerTile.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerListenerTile.java @@ -2,7 +2,9 @@ package com.raoulvdberge.refinedstorage.inventory; import net.minecraft.tileentity.TileEntity; -public class ItemHandlerListenerTile implements IItemHandlerListener { +import java.util.function.Consumer; + +public class ItemHandlerListenerTile implements Consumer { private TileEntity tile; public ItemHandlerListenerTile(TileEntity tile) { @@ -10,7 +12,7 @@ public class ItemHandlerListenerTile implements IItemHandlerListener { } @Override - public void onChanged(int slot) { + public void accept(Integer slot) { tile.markDirty(); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerUpgrade.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerUpgrade.java index 2cf5f275d..0e9611039 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerUpgrade.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemHandlerUpgrade.java @@ -3,9 +3,12 @@ package com.raoulvdberge.refinedstorage.inventory; import com.raoulvdberge.refinedstorage.RSItems; import com.raoulvdberge.refinedstorage.item.ItemUpgrade; -public class ItemHandlerUpgrade extends ItemHandlerBasic { - public ItemHandlerUpgrade(int size, IItemHandlerListener listener, int... supportedUpgrades) { - super(size, listener, new IItemValidator[supportedUpgrades.length]); +import javax.annotation.Nullable; +import java.util.function.Consumer; + +public class ItemHandlerUpgrade extends ItemHandlerBase { + public ItemHandlerUpgrade(int size, @Nullable Consumer listener, int... supportedUpgrades) { + super(size, listener, new ItemValidatorBasic[supportedUpgrades.length]); for (int i = 0; i < supportedUpgrades.length; ++i) { this.validators[i] = new ItemValidatorBasic(RSItems.UPGRADE, supportedUpgrades[i]); @@ -64,12 +67,12 @@ public class ItemHandlerUpgrade extends ItemHandlerBasic { return 0; } + public int getItemInteractCount() { + return hasUpgrade(ItemUpgrade.TYPE_STACK) ? 64 : 1; + } + @Override public int getSlotLimit(int slot) { return 1; } - - public int getItemInteractCount() { - return hasUpgrade(ItemUpgrade.TYPE_STACK) ? 64 : 1; - } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemValidatorBasic.java b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemValidatorBasic.java index 6266f17fb..5730fa745 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemValidatorBasic.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/inventory/ItemValidatorBasic.java @@ -3,7 +3,9 @@ package com.raoulvdberge.refinedstorage.inventory; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -public class ItemValidatorBasic implements IItemValidator { +import java.util.function.Predicate; + +public class ItemValidatorBasic implements Predicate { private Item item; private int damage = -1; @@ -17,15 +19,7 @@ public class ItemValidatorBasic implements IItemValidator { } @Override - public boolean isValid(ItemStack stack) { - if (stack.getItem() == item) { - if (damage != -1 && stack.getItemDamage() != damage) { - return false; - } - - return true; - } - - return false; + public boolean test(ItemStack stack) { + return stack.getItem() == item && !(damage != -1 && stack.getItemDamage() != damage); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/TileProcessingPatternEncoder.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/TileProcessingPatternEncoder.java index 8079c4a35..d3ba62ee6 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/TileProcessingPatternEncoder.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/TileProcessingPatternEncoder.java @@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.tile; import com.raoulvdberge.refinedstorage.RSItems; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.gui.GuiProcessingPatternEncoder; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerListenerTile; import com.raoulvdberge.refinedstorage.inventory.ItemValidatorBasic; import com.raoulvdberge.refinedstorage.item.ItemPattern; @@ -61,8 +61,8 @@ public class TileProcessingPatternEncoder extends TileBase { } }); - private ItemHandlerBasic patterns = new ItemHandlerBasic(2, new ItemHandlerListenerTile(this), new ItemValidatorBasic(RSItems.PATTERN)); - private ItemHandlerBasic configuration = new ItemHandlerBasic(9 * 2, new ItemHandlerListenerTile(this)); + private ItemHandlerBase patterns = new ItemHandlerBase(2, new ItemHandlerListenerTile(this), new ItemValidatorBasic(RSItems.PATTERN)); + private ItemHandlerBase configuration = new ItemHandlerBase(9 * 2, new ItemHandlerListenerTile(this)); private boolean oredictPattern; private boolean blockingTask = false; @@ -141,11 +141,11 @@ public class TileProcessingPatternEncoder extends TileBase { return inputsFilled > 0 && outputsFilled > 0 && !patterns.getStackInSlot(0).isEmpty() && patterns.getStackInSlot(1).isEmpty(); } - public ItemHandlerBasic getPatterns() { + public ItemHandlerBase getPatterns() { return patterns; } - public ItemHandlerBasic getConfiguration() { + public ItemHandlerBase getConfiguration() { return configuration; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/ICraftingMonitor.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/ICraftingMonitor.java index 96f841ea5..e4ea2d53b 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/ICraftingMonitor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/ICraftingMonitor.java @@ -1,7 +1,7 @@ package com.raoulvdberge.refinedstorage.tile.craftingmonitor; import com.raoulvdberge.refinedstorage.api.autocrafting.task.ICraftingTask; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.item.filter.Filter; import com.raoulvdberge.refinedstorage.tile.data.TileDataParameter; import net.minecraft.entity.player.EntityPlayerMP; @@ -24,7 +24,7 @@ public interface ICraftingMonitor { List getFilters(); - ItemHandlerBasic getFilter(); + ItemHandlerBase getFilter(); boolean canViewAutomated(); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/WirelessCraftingMonitor.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/WirelessCraftingMonitor.java index 0592a4886..180cab75d 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/WirelessCraftingMonitor.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/craftingmonitor/WirelessCraftingMonitor.java @@ -3,7 +3,7 @@ package com.raoulvdberge.refinedstorage.tile.craftingmonitor; import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.autocrafting.task.ICraftingTask; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFilter; import com.raoulvdberge.refinedstorage.item.ItemWirelessCraftingMonitor; import com.raoulvdberge.refinedstorage.item.filter.Filter; @@ -102,7 +102,7 @@ public class WirelessCraftingMonitor implements ICraftingMonitor { } @Override - public ItemHandlerBasic getFilter() { + public ItemHandlerBase getFilter() { return filter; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/IGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/IGrid.java index 117e2d287..17dac85d3 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/IGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/IGrid.java @@ -2,7 +2,7 @@ package com.raoulvdberge.refinedstorage.tile.grid; import com.raoulvdberge.refinedstorage.api.network.INetworkMaster; import com.raoulvdberge.refinedstorage.block.GridType; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.item.filter.Filter; import com.raoulvdberge.refinedstorage.item.filter.FilterTab; import com.raoulvdberge.refinedstorage.tile.data.TileDataParameter; @@ -50,7 +50,7 @@ public interface IGrid { List getTabs(); - ItemHandlerBasic getFilter(); + ItemHandlerBase getFilter(); TileDataParameter getRedstoneModeConfig(); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessFluidGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessFluidGrid.java index f4ebdfdc0..b99eb5ff1 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessFluidGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessFluidGrid.java @@ -5,7 +5,7 @@ import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.api.network.INetworkMaster; import com.raoulvdberge.refinedstorage.block.GridType; import com.raoulvdberge.refinedstorage.gui.grid.GuiGrid; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.item.ItemWirelessFluidGrid; import com.raoulvdberge.refinedstorage.item.filter.Filter; import com.raoulvdberge.refinedstorage.item.filter.FilterTab; @@ -163,7 +163,7 @@ public class WirelessFluidGrid implements IGrid { } @Override - public ItemHandlerBasic getFilter() { + public ItemHandlerBase getFilter() { return null; } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessGrid.java b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessGrid.java index c4182f18e..0e1d9ed8d 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessGrid.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/tile/grid/WirelessGrid.java @@ -5,7 +5,7 @@ import com.raoulvdberge.refinedstorage.RSUtils; import com.raoulvdberge.refinedstorage.api.network.INetworkMaster; import com.raoulvdberge.refinedstorage.block.GridType; import com.raoulvdberge.refinedstorage.gui.grid.GuiGrid; -import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBasic; +import com.raoulvdberge.refinedstorage.inventory.ItemHandlerBase; import com.raoulvdberge.refinedstorage.inventory.ItemHandlerFilter; import com.raoulvdberge.refinedstorage.item.ItemWirelessGrid; import com.raoulvdberge.refinedstorage.item.filter.Filter; @@ -198,7 +198,7 @@ public class WirelessGrid implements IGrid { } @Override - public ItemHandlerBasic getFilter() { + public ItemHandlerBase getFilter() { return filter; }