Class FreestyleBeveragePourEngine
java.lang.Object
com.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine<FreestyleBeveragePourEngineConfig>
com.tccc.kos.ext.freestyle.pipeline.beverage.FreestyleBeveragePourEngine
- All Implemented Interfaces:
com.tccc.kos.commons.core.service.config.ConfigAware<FreestyleBeveragePourEngineConfig>
,com.tccc.kos.commons.core.service.handle.HandleAware
,com.tccc.kos.core.service.time.TimeChangeListener
,com.tccc.kos.core.service.time.TimeListener
,com.tccc.kos.ext.dispense.service.ingredient.IngredientChangeListener
,com.tccc.kos.ext.dispense.service.insertion.InsertionListener
,com.tccc.kos.ext.dispense.service.insertion.InsertionPumpListener
,com.tccc.kos.ext.dispense.service.nozzle.NozzleAvailabilityListener
,BrandSetServiceListener
,GrantPropertiesListener
@ApiController(base="/engine",
title="Pour engine",
desc="Pour engine specific endpoints.")
public class FreestyleBeveragePourEngine
extends com.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine<FreestyleBeveragePourEngineConfig>
implements com.tccc.kos.core.service.time.TimeChangeListener, GrantPropertiesListener
Freestyle implementation of BeveragePourEngine.
- Since:
- 1.0
- Version:
- 2023-07-29
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new pour engine that uses the specified FSM and VM. -
Method Summary
Modifier and TypeMethodDescriptioncom.tccc.kos.commons.util.concurrent.future.FutureWork
buildFuture
(com.tccc.kos.ext.dispense.pipeline.beverage.Pourable pourable, com.tccc.kos.ext.dispense.pipeline.beverage.BeveragePumpEventInitiator initiator) com.tccc.kos.ext.dispense.pipeline.beverage.Pourable
getPourable
(String definition) getWaterType
(com.tccc.kos.ext.dispense.pipeline.beverage.Pourable pourable) Return the water type of the specified pourable.void
hideCarbWaterBeverage
(boolean hide) Hide carb water as a beverage.void
hidePlainWaterBeverage
(boolean hide) Hide plain water as a beverage.boolean
isPourable
(com.tccc.kos.ext.dispense.pipeline.beverage.Pourable pourable) void
onGrantPropertiesChange
(BrandSetService service) Called whenBrandSetService
is provided with new grant properties, which can be accessed bygetGrantProperties()
.void
void
rebuildGraph
(com.tccc.kos.ext.dispense.pipeline.beverage.graph.BevGraphBuilder builder) void
start()
void
stop()
Methods inherited from class com.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine
addOverride, addOverride, asyncRebuildGraph, getBeverageNode, getConfig, getGraph, getHandle, getIngredientNode, getIngredientService, getNozzle, getPipeline, isAvailable, isAvailable, notifyChanges, onAvailabilityChange, onConfigChanged, onContainerInserted, onContainerRemoved, onIngredientChange, onNozzleAvailabilityChange, onRebuildGraph, removeOverride, removeOverride, setConfig
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.tccc.kos.commons.core.service.config.ConfigAware
onConfigSet
Methods inherited from interface com.tccc.kos.commons.core.service.handle.HandleAware
addHandleChild, getName, getPath
-
Field Details
-
BEV_ID_WATER
- See Also:
-
BEV_ID_CARB
- See Also:
-
-
Constructor Details
-
FreestyleBeveragePourEngine
Create a new pour engine that uses the specified FSM and VM.
-
-
Method Details
-
start
public void start()- Specified by:
start
in classcom.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine<FreestyleBeveragePourEngineConfig>
-
stop
public void stop()- Specified by:
stop
in classcom.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine<FreestyleBeveragePourEngineConfig>
-
rebuildGraph
public void rebuildGraph(com.tccc.kos.ext.dispense.pipeline.beverage.graph.BevGraphBuilder builder) - Specified by:
rebuildGraph
in classcom.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine<FreestyleBeveragePourEngineConfig>
-
getPourable
public com.tccc.kos.ext.dispense.pipeline.beverage.Pourable getPourable(String definition) throws Exception - Specified by:
getPourable
in classcom.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine<FreestyleBeveragePourEngineConfig>
- Throws:
Exception
-
isPourable
public boolean isPourable(com.tccc.kos.ext.dispense.pipeline.beverage.Pourable pourable) - Specified by:
isPourable
in classcom.tccc.kos.ext.dispense.pipeline.beverage.BeveragePourEngine<FreestyleBeveragePourEngineConfig>
-
buildFuture
public com.tccc.kos.commons.util.concurrent.future.FutureWork buildFuture(com.tccc.kos.ext.dispense.pipeline.beverage.Pourable pourable, com.tccc.kos.ext.dispense.pipeline.beverage.BeveragePumpEventInitiator initiator) -
onTimeChanged
public void onTimeChanged()- Specified by:
onTimeChanged
in interfacecom.tccc.kos.core.service.time.TimeChangeListener
-
onGrantPropertiesChange
Description copied from interface:GrantPropertiesListener
Called whenBrandSetService
is provided with new grant properties, which can be accessed bygetGrantProperties()
.- Specified by:
onGrantPropertiesChange
in interfaceGrantPropertiesListener
- Parameters:
service
- theBrandSetService
-
getWaterType
Return the water type of the specified pourable.- Parameters:
pourable
- theFreestylePourable
to check
-
hidePlainWaterBeverage
public void hidePlainWaterBeverage(boolean hide) Hide plain water as a beverage. When hidden, the plain water beverage will not be visible. When not hidden, plain water will be visible based on standard visibility logic. -
hideCarbWaterBeverage
public void hideCarbWaterBeverage(boolean hide) Hide carb water as a beverage. When hidden, the carb water beverage will not be visible. When not hidden, carb water will be visible based on standard visibility logic.
-