Class CartridgeAgitator
java.lang.Object
com.tccc.kos.commons.util.ready.ReadyBean
com.tccc.kos.ext.freestyle.service.cartridgeagitation.CartridgeAgitator
- All Implemented Interfaces:
com.tccc.kos.commons.core.service.config.ConfigAware<CartridgeAgitatorConfig>
,com.tccc.kos.commons.core.service.handle.HandleAware
,com.tccc.kos.commons.core.service.state.StateAware<CartridgeAgitatorState>
,com.tccc.kos.commons.util.ready.Ready
,com.tccc.kos.commons.util.ready.ReadyAndReadyListener
,com.tccc.kos.commons.util.ready.ReadyListener
,com.tccc.kos.ext.dispense.service.insertion.InsertionHolderListener
,com.tccc.kos.ext.dispense.service.insertion.InsertionListener
,com.tccc.kos.ext.dispense.service.pumpevent.PumpListener
,com.tccc.kos.ext.dispense.service.pumpevent.PumpLockListener
@ApiController(base="@path",
title="Cartridge agitator",
desc="Services for a particular cartridge agitator.")
public class CartridgeAgitator
extends com.tccc.kos.commons.util.ready.ReadyBean
implements com.tccc.kos.commons.core.service.config.ConfigAware<CartridgeAgitatorConfig>, com.tccc.kos.commons.core.service.state.StateAware<CartridgeAgitatorState>, com.tccc.kos.ext.dispense.service.pumpevent.PumpLockListener, com.tccc.kos.ext.dispense.service.insertion.InsertionHolderListener
Agitator for a cartridge shelf or tower.
- Version:
- 2024-09-30
-
Constructor Summary
ConstructorsConstructorDescriptionCartridgeAgitator
(String name, CartridgeAgitatorAware board, boolean homeSensor) Create an agitator for the specified board -
Method Summary
Modifier and TypeMethodDescriptioncom.tccc.kos.commons.core.service.handle.Handle
com.tccc.kos.commons.util.ListenerList<CartridgeAgitatorListener>
getState()
boolean
isHomed()
Return true if the agitator is properly homed.boolean
void
onConfigChanged
(com.tccc.kos.commons.core.service.config.BeanChanges changes) void
onContainerInsertStart
(com.tccc.kos.ext.dispense.Container container, com.tccc.kos.ext.dispense.Holder[] holders) void
onContainerRemove
(com.tccc.kos.ext.dispense.Container container, com.tccc.kos.ext.dispense.Holder[] holders) void
onPumpLock
(com.tccc.kos.ext.dispense.service.nozzle.NozzlePipeline pipeline, com.tccc.kos.ext.dispense.Pump<?> pump) void
onPumpUnlock
(com.tccc.kos.ext.dispense.service.nozzle.NozzlePipeline pipeline, com.tccc.kos.ext.dispense.Pump<?> pump) void
Pause the agitator for the specified reason.void
Resume the agitator by removing the pause reason.void
setConfig
(CartridgeAgitatorConfig config) com.tccc.kos.commons.util.concurrent.future.FutureWork
Perform a test agitation.Methods inherited from class com.tccc.kos.commons.util.ready.ReadyBean
getReady
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
Methods inherited from interface com.tccc.kos.commons.util.ready.Ready
isReady, setReady
Methods inherited from interface com.tccc.kos.commons.util.ready.ReadyAndReadyListener
onBeanReady, onDependenciesReady
Methods inherited from interface com.tccc.kos.commons.util.ready.ReadyListener
onDependenciesGroupReady
-
Constructor Details
-
CartridgeAgitator
Create an agitator for the specified board- Parameters:
name
- the name of the agitatorboard
- the board with the associated hardwarehomeSensor
- true if the hardware has a home sensor
-
-
Method Details
-
pause
Pause the agitator for the specified reason.- Parameters:
reason
- the pause reasonhome
- if true, home when pausing
-
resume
Resume the agitator by removing the pause reason. The callback will be used to actually trigger the start. -
isHomed
public boolean isHomed()Return true if the agitator is properly homed.- Returns:
- true if properly homed
-
testAgitation
@ApiEndpoint(POST="/test", desc="Run an agitation test.") public com.tccc.kos.commons.util.concurrent.future.FutureWork testAgitation()Perform a test agitation. -
onConfigChanged
public void onConfigChanged(com.tccc.kos.commons.core.service.config.BeanChanges changes) - Specified by:
onConfigChanged
in interfacecom.tccc.kos.commons.core.service.config.ConfigAware<CartridgeAgitatorConfig>
-
getState
- Specified by:
getState
in interfacecom.tccc.kos.commons.core.service.state.StateAware<CartridgeAgitatorState>
-
onPumpLock
public void onPumpLock(com.tccc.kos.ext.dispense.service.nozzle.NozzlePipeline pipeline, com.tccc.kos.ext.dispense.Pump<?> pump) - Specified by:
onPumpLock
in interfacecom.tccc.kos.ext.dispense.service.pumpevent.PumpLockListener
-
onPumpUnlock
public void onPumpUnlock(com.tccc.kos.ext.dispense.service.nozzle.NozzlePipeline pipeline, com.tccc.kos.ext.dispense.Pump<?> pump) - Specified by:
onPumpUnlock
in interfacecom.tccc.kos.ext.dispense.service.pumpevent.PumpLockListener
-
onContainerInsertStart
public void onContainerInsertStart(com.tccc.kos.ext.dispense.Container container, com.tccc.kos.ext.dispense.Holder[] holders) - Specified by:
onContainerInsertStart
in interfacecom.tccc.kos.ext.dispense.service.insertion.InsertionHolderListener
-
onContainerRemove
public void onContainerRemove(com.tccc.kos.ext.dispense.Container container, com.tccc.kos.ext.dispense.Holder[] holders) - Specified by:
onContainerRemove
in interfacecom.tccc.kos.ext.dispense.service.insertion.InsertionHolderListener
-
getConfig
- Specified by:
getConfig
in interfacecom.tccc.kos.commons.core.service.config.ConfigAware<CartridgeAgitatorConfig>
-
setConfig
- Specified by:
setConfig
in interfacecom.tccc.kos.commons.core.service.config.ConfigAware<CartridgeAgitatorConfig>
-
getHandle
public com.tccc.kos.commons.core.service.handle.Handle getHandle()- Specified by:
getHandle
in interfacecom.tccc.kos.commons.core.service.handle.HandleAware
-
getListeners
-
isHomeSensor
public boolean isHomeSensor()
-