Improvements to BlockStates

* Update Javadoc of block state classes to better match implementation behaviour.
* Add Container interface which provides access to the snapshot inventory.

By: Lukas Hennig <lukas@wirsindwir.de>
This commit is contained in:
Bukkit/Spigot
2017-08-05 14:35:40 +10:00
parent 5727987ab3
commit 2ab655238c
25 changed files with 186 additions and 82 deletions
@@ -2,18 +2,25 @@ package org.bukkit.block;
import org.bukkit.Nameable;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.InventoryHolder;
/**
* Represents a chest.
* Represents a captured state of a chest.
*/
public interface Chest extends BlockState, InventoryHolder, Lockable, Nameable {
public interface Chest extends Container, Nameable {
/**
* Returns the chest's inventory. If this is a double chest, it returns
* just the portion of the inventory linked to this half of the chest.
* Gets the inventory of the chest block represented by this block state.
* <p>
* If the chest is a double chest, it returns just the portion of the
* inventory linked to the half of the chest corresponding to this block state.
* <p>
* If the block was changed to a different type in the meantime, the
* returned inventory might no longer be valid.
* <p>
* If this block state is not placed this will return the captured
* inventory snapshot instead.
*
* @return The inventory.
* @return the inventory
*/
Inventory getBlockInventory();
}