Package io.deephaven.engine.updategraph
Class OneShotUpdateCombiner
java.lang.Object
io.deephaven.engine.updategraph.OneShotUpdateCombiner
- All Implemented Interfaces:
LogOutputAppendable
,NotificationQueue.Dependency
,UpdateSourceRegistrar
,Runnable
Update source that combines multiple sources. Each registered source is invoked exactly once on the next
run()
and then automatically de-registered.-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a source to this registrar.void
removeSource
(@NotNull Runnable updateSource) Remove a source from this registrar.void
Passes through to theupdate graph
associated with the current update context.void
run()
boolean
satisfied
(long step) Is this ancestor satisfied? Note that this method must be safe to call on any thread.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.deephaven.engine.updategraph.NotificationQueue.Dependency
getUpdateGraph
Methods inherited from interface io.deephaven.engine.updategraph.UpdateSourceRegistrar
removeSources
-
Constructor Details
-
OneShotUpdateCombiner
-
-
Method Details
-
run
public void run() -
addSource
Description copied from interface:UpdateSourceRegistrar
Add a source to this registrar.- Specified by:
addSource
in interfaceUpdateSourceRegistrar
- Parameters:
updateSource
- The table to add
-
removeSource
Description copied from interface:UpdateSourceRegistrar
Remove a source from this registrar.- Specified by:
removeSource
in interfaceUpdateSourceRegistrar
- Parameters:
updateSource
- The table to remove
-
requestRefresh
public void requestRefresh()Passes through to theupdate graph
associated with the current update context.- Specified by:
requestRefresh
in interfaceUpdateSourceRegistrar
-
satisfied
public boolean satisfied(long step) Description copied from interface:NotificationQueue.Dependency
Is this ancestor satisfied? Note that this method must be safe to call on any thread.- Specified by:
satisfied
in interfaceNotificationQueue.Dependency
- Parameters:
step
- The step for which we are testing satisfaction- Returns:
- Whether the dependency is satisfied on
step
(and will not fire subsequent notifications)
-
getUpdateGraph
- Specified by:
getUpdateGraph
in interfaceNotificationQueue.Dependency
- Returns:
- the update graph that this dependency is a part of
-
append
- Specified by:
append
in interfaceLogOutputAppendable
-