ConnectablePullOutputChannel

A pull output channel that can be manually connected to an input channel.

Properties

Link copied to clipboard

The input channel connected downstream.

Link copied to clipboard
abstract val transmissionCount: Int

Total number of data transmissions through this channel.

Link copied to clipboard
abstract val upstreamNode: Node

The Node that sends data through this output channel.

Functions

Link copied to clipboard
abstract fun connectTo(downstream: ConnectableInputChannel<in T, ChannelType.Pull>)

Connects this output channel to a downstream input channel.

Link copied to clipboard

Checks if this push output channel is open.

Link copied to clipboard

Checks if this output channel uses pull semantics.

Link copied to clipboard

Checks if this output channel uses push semantics.

Link copied to clipboard

Marks this pull output channel as no longer ready to receive requests.

Link copied to clipboard

Marks this pull output channel as ready to receive requests.

Link copied to clipboard
fun <T> PullOutputChannel<T>.onPull(callback: context(Simulator) () -> T)

Sets the pull callback that generates data on demand.

Link copied to clipboard
context(_: Simulator)
fun <T> PushOutputChannel<T>.send(data: T)

Sends data through this push output channel.

Link copied to clipboard
fun PushOutputChannel<*>.whenClosed(callback: context(Simulator) () -> Unit)

Registers a callback to be invoked when this channel closes.

Link copied to clipboard
fun PushOutputChannel<*>.whenOpened(callback: context(Simulator) () -> Unit)

Registers a callback to be invoked when this channel opens.