JoinPolicy

interface JoinPolicy<T>

Policy for selecting sources in a join node (many-to-one merging). Determines which source channel provides the next entity when the destination pulls.

Parameters

T

the type of entities being merged

Inheritors

Functions

Link copied to clipboard
context(_: Simulator)
open fun initialize(sources: List<PullInputChannel<T>>, destination: PullOutputChannel<T>)

Initializes the policy with the source and destination channels. Sets up initial state and event listeners for channel readiness events.

Link copied to clipboard
abstract fun noneReady(): Boolean

Checks if no source channels are ready.

Link copied to clipboard
abstract fun onChannelNotReady(channel: PullInputChannel<T>)

Called when a source channel is no longer ready (has no data available).

Link copied to clipboard
abstract fun onChannelReady(channel: PullInputChannel<T>)

Called when a source channel becomes ready (has data available).

Link copied to clipboard

Selects the source channel to pull from.