Class IngredientComponentStorageSlottedWrapped<T,M> 
java.lang.Object
org.cyclops.cyclopscore.ingredient.storage.IngredientComponentStorageWrapped<T,M>
 
org.cyclops.cyclopscore.ingredient.storage.IngredientComponentStorageSlottedWrapped<T,M> 
- Type Parameters:
 T- The instance type.M- The matching condition parameter.
- All Implemented Interfaces:
 Iterable<T>,IIngredientComponentStorage<T,,M> IIngredientComponentStorageSlotted<T,M> 
public class IngredientComponentStorageSlottedWrapped<T,M> 
extends IngredientComponentStorageWrapped<T,M>
implements IIngredientComponentStorageSlotted<T,M>  
An ingredient storage wrapper.
- 
Constructor Summary
ConstructorsConstructorDescriptionIngredientComponentStorageSlottedWrapped(IIngredientComponentStorageSlotted<T, M> ingredientComponentStorageSlotted, boolean iterate, boolean insert, boolean extract)  - 
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.protected IIngredientComponentStorageSlotted<T, M> 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.cyclopscore.ingredient.storage.IngredientComponentStorageWrapped
extract, extract, getComponent, getMaxQuantity, insert, isExtract, isInsert, isRead, 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
- 
IngredientComponentStorageSlottedWrapped
public IngredientComponentStorageSlottedWrapped(IIngredientComponentStorageSlotted<T, M> ingredientComponentStorageSlotted, boolean iterate, boolean insert, boolean extract)  
 - 
 - 
Method Details
- 
getIngredientComponentStorage
- Overrides:
 getIngredientComponentStoragein classIngredientComponentStorageWrapped<T,M> 
 - 
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 
 
 -