Class IngredientComponentStorageSlottedEmpty<T,M>
java.lang.Object
org.cyclops.commoncapabilities.api.ingredient.storage.IngredientComponentStorageEmpty<T,M>
org.cyclops.commoncapabilities.api.ingredient.storage.IngredientComponentStorageSlottedEmpty<T,M>
- All Implemented Interfaces:
Iterable<T>,IIngredientComponentStorage<T,,M> IIngredientComponentStorageSlotted<T,M>
public class IngredientComponentStorageSlottedEmpty<T,M>
extends IngredientComponentStorageEmpty<T,M>
implements IIngredientComponentStorageSlotted<T,M>
A dummy slotted ingredient component storage that is empty.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionextract(int slot, long maxQuantity, boolean simulate) Extract the at most the given quantity from the ingredient from the given slot in the storage.longgetMaxQuantity(int slot) Get the maximum allowed quantity in the given slot.getSlotContents(int slot) Get the ingredient that is contained in the given slot.intgetSlots()Inserts an ingredient into the storage in the given slot and return the remainder.Methods inherited from class org.cyclops.commoncapabilities.api.ingredient.storage.IngredientComponentStorageEmpty
extract, extract, getComponent, getMaxQuantity, insert, iterator, iteratorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.cyclops.commoncapabilities.api.ingredient.storage.IIngredientComponentStorage
extract, extract, getComponent, getMaxQuantity, insert, iterator, iteratorMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
IngredientComponentStorageSlottedEmpty
-
-
Method Details
-
getSlots
public int getSlots()- Specified by:
getSlotsin interfaceIIngredientComponentStorageSlotted<T,M> - Returns:
- The number of available slots.
-
getSlotContents
Description copied from interface:IIngredientComponentStorageSlottedGet the ingredient that is contained in the given slot. Note: The returned ingredient MUST NOT not be modified by the caller.- Specified by:
getSlotContentsin interfaceIIngredientComponentStorageSlotted<T,M> - Parameters:
slot- A slot number.- Returns:
- The contained ingredient.
-
getMaxQuantity
public long getMaxQuantity(int slot) Description copied from interface:IIngredientComponentStorageSlottedGet the maximum allowed quantity in the given slot.- Specified by:
getMaxQuantityin interfaceIIngredientComponentStorageSlotted<T,M> - Parameters:
slot- A slot number.- Returns:
- The maximum allowed in the given slot.
-
insert
Description copied from interface:IIngredientComponentStorageSlottedInserts an ingredient into the storage in the given slot and return the remainder. The ingredient should not be modified in this function!- Specified by:
insertin interfaceIIngredientComponentStorageSlotted<T,M> - Parameters:
slot- A slot number to insert to.ingredient- Ingredient to insert.simulate- If true, the insertion is only simulated.- Returns:
- The remaining ingredient that was not inserted (if the entire ingredient is accepted,
then return
IIngredientMatcher.getEmptyInstance()). May be the same as the input ingredient if unchanged, otherwise a new ingredient.
-
extract
Description copied from interface:IIngredientComponentStorageSlottedExtract the at most the given quantity from the ingredient from the given slot in the storage.- Specified by:
extractin interfaceIIngredientComponentStorageSlotted<T,M> - Parameters:
slot- A slot number to extract from.maxQuantity- The maximum amount to extract.simulate- If true, the insertion is only simulated- Returns:
- Ingredient extracted from the slot, must be
IIngredientMatcher.getEmptyInstance(), if nothing can be extracted
-