Interface Container

All Superinterfaces:
BlockInventoryHolder, BlockState, InventoryHolder, Lockable, Metadatable, Nameable, PersistentDataHolder, TileState
All Known Subinterfaces:
Barrel, BlastFurnace, BrewingStand, Chest, Dispenser, Dropper, Furnace, Hopper, ShulkerBox, Smoker

public interface Container extends TileState, BlockInventoryHolder, Lockable, Nameable
Represents a captured state of a container block.
  • Method Details

    • getInventory

      @NotNull Inventory getInventory()
      Gets the inventory of the block represented by this block state.

      If the block was changed to a different type in the meantime, the returned inventory might no longer be valid.

      If this block state is not placed this will return the captured inventory snapshot instead.

      Specified by:
      getInventory in interface InventoryHolder
      Returns:
      the inventory
    • getSnapshotInventory

      @NotNull Inventory getSnapshotInventory()
      Gets the captured inventory snapshot of this container.

      The returned inventory is not linked to any block. Any modifications to the returned inventory will not be applied to the block represented by this block state up until BlockState.update(boolean, boolean) has been called.

      Returns:
      the captured inventory snapshot