Class SingleFluidTank
- All Implemented Interfaces:
- FluidExtractable,- FluidInsertable,- FluidTransferable,- LimitedConsumer<FluidVolume>,- Reference<FluidVolume>
FixedFluidInv.- 
Method SummaryModifier and TypeMethodDescriptionattemptExtraction(FluidFilter filter, int maxAmount, Simulation simulation) Deprecated, for removal: This API element is subject to removal in a future version.attemptExtraction(FluidFilter filter, FluidAmount maxAmount, Simulation simulation) attemptInsertion(FluidVolume fluid, Simulation simulation) Inserts the given stack into this insertable, and returns the excess.final voidforceSet(FluidVolume to) Sets the stack in the given slot to the given stack, or throws an exception if it was not permitted.final FixedFluidInvReturns anFluidFilterto determine ifFluidInsertable.attemptInsertion(FluidVolume, Simulation)could ever accept a fluid.booleanisValid(FluidVolume value) final voidmodify(Function<FluidVolume, FluidVolume> function) Applies the given function to the stack held in the slot, and usesforceSet(FluidVolume)on the result (Which will throw an exception if the returned stack is not valid for this tank).booleanset(FluidVolume value) final booleanset(FluidVolume to, Simulation simulation) Delegates toReference.set(Object)if the simulation isSimulation.ACTION, otherwise it delegates toReference.isValid(Object).Methods inherited from class alexiil.mc.lib.attributes.fluid.SingleFluidTankViewaddListener, get, getFilter, getIndex, getMaxAmount, getMaxAmount_F, getSpace, isValidMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface alexiil.mc.lib.attributes.fluid.FluidExtractableattemptAnyExtraction, attemptAnyExtraction, couldExtractAnything, extract, extract, extract, extract, extract, extract, getPureExtractableMethods inherited from interface alexiil.mc.lib.attributes.fluid.FluidInsertablegetMinimumAcceptedAmount, getPureInsertable, insert, offer, offer, wouldAcceptMethods inherited from interface alexiil.mc.lib.attributes.fluid.FluidTransferablefilteredMethods inherited from interface alexiil.mc.lib.attributes.misc.ReferenceasDestroyable, get
- 
Method Details- 
getBackingInv- Overrides:
- getBackingInvin class- SingleFluidTankView
 
- 
setDescription copied from interface:ReferenceDelegates toReference.set(Object)if the simulation isSimulation.ACTION, otherwise it delegates toReference.isValid(Object).- Specified by:
- setin interface- Reference<FluidVolume>
 
- 
forceSetSets the stack in the given slot to the given stack, or throws an exception if it was not permitted.
- 
modifyApplies the given function to the stack held in the slot, and usesforceSet(FluidVolume)on the result (Which will throw an exception if the returned stack is not valid for this tank).
- 
attemptInsertionDescription copied from interface:FluidInsertableInserts the given stack into this insertable, and returns the excess.- Specified by:
- attemptInsertionin interface- FluidInsertable
- Parameters:
- fluid- The incoming fluid. Must not be modified by this call.
- simulation- If- Simulation.SIMULATEthen this shouldn't modify anything.
- Returns:
- the excess FluidVolumethat wasn't accepted. This will be independent of this insertable, however it might be the given object instead of a completely new object.
 
- 
attemptExtraction@Deprecated(since="0.6.0", forRemoval=true) public FluidVolume attemptExtraction(FluidFilter filter, int maxAmount, Simulation simulation) Deprecated, for removal: This API element is subject to removal in a future version.Description copied from interface:FluidExtractable- Specified by:
- attemptExtractionin interface- FluidExtractable
- maxAmount- The maximum amount of fluid that can be extracted. Negative numbers throw an exception.
- simulation- If- Simulation.SIMULATEthen this should return the same result that the exact same call with- Simulation.ACTIONwould do, except that the filter can be made more specific between calls if the previously simulated extracted fluid is used as a filter.- For example the following code snippet should never throw an exception: - FluidExtractablefrom = // Some extractable
 - FluidVolumeattempted = from.- attemptAnyExtraction(- Integer.MAX_VALUE,- Simulation.SIMULATE);
 if (attempted.- isEmpty()) return;
 - FluidVolumeextracted = from.- extract(attempted.- getFluidKey(), attempted.- getAmount());
 assert !extracted.- isEmpty;
 assert attempted.- getAmount()== extracted.- getAmount();
 assert attempted.- getFluidKet()== extracted.- getFluidKet();
 assert attempted.- equals(extracted);
- Returns:
- A new, independent FluidVolumethat was extracted.
 
- 
attemptExtractionpublic FluidVolume attemptExtraction(FluidFilter filter, FluidAmount maxAmount, Simulation simulation) Description copied from interface:FluidExtractable- Specified by:
- attemptExtractionin interface- FluidExtractable
- maxAmount- The maximum amount of fluid that can be extracted. Negative numbers throw an exception.
- simulation- If- Simulation.SIMULATEthen this should return the same result that the exact same call with- Simulation.ACTIONwould do, except that the filter can be made more specific between calls if the previously simulated extracted fluid is used as a filter.- For example the following code snippet should never throw an exception: - FluidExtractablefrom = // Some extractable
 - FluidVolumeattempted = from.- attemptAnyExtraction(- Integer.MAX_VALUE,- Simulation.SIMULATE);
 if (attempted.- isEmpty()) return;
 - FluidVolumeextracted = from.- extract(attempted.- getFluidKey(), attempted.- getAmount());
 assert !extracted.- isEmpty;
 assert attempted.- getAmount()== extracted.- getAmount();
 assert attempted.- getFluidKet()== extracted.- getFluidKet();
 assert attempted.- equals(extracted);
- Returns:
- A new, independent FluidVolumethat was extracted.
 
- 
getInsertionFilterDescription copied from interface:FluidInsertableReturns anFluidFilterto determine ifFluidInsertable.attemptInsertion(FluidVolume, Simulation)could ever accept a fluid. The default implementation is to returnConstantFluidFilter.ANYTHING, and so it is recommended that custom insertables override this to return a more accurate filter.- Specified by:
- getInsertionFilterin interface- FluidInsertable
- Returns:
- A filter to determine if the given fluid could ever be inserted.
 
- 
set- Specified by:
- setin interface- Reference<FluidVolume>
- Returns:
- True if the new value was accepted, false otherwise.
 
- 
isValid- Specified by:
- isValidin interface- Reference<FluidVolume>
- Returns:
- True if Reference.set(Object)was called with the same value.
 
 
- 
attemptExtraction(FluidFilter, FluidAmount, Simulation).