AsyncCallback

org.apache.pekko.stream.stage.AsyncCallback
trait AsyncCallback[T]

An asynchronous callback holder that is attached to a GraphStageLogic. Initializing AsyncCallback#invoke will eventually lead to the registered handler being called.

This holder has the same lifecycle as a stream and cannot be used before materialization is done.

Typical use cases are exchanging messages between stream and substreams or invoking from external world sending event to a stream

Attributes

Source
GraphStage.scala
Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Abstract methods

def invoke(t: T): Unit

Dispatch an asynchronous notification. This method is thread-safe and may be invoked from external execution contexts.

Dispatch an asynchronous notification. This method is thread-safe and may be invoked from external execution contexts.

For cases where it is important to know if the notification was ever processed or not see AsyncCallback#invokeWithFeedback

Attributes

Source
GraphStage.scala

Dispatch an asynchronous notification. This method is thread-safe and may be invoked from external execution contexts.

Dispatch an asynchronous notification. This method is thread-safe and may be invoked from external execution contexts.

The method returns directly and the returned future is then completed once the event has been handled by the operator, if the event triggers an exception from the handler the future is failed with that exception and finally if the operator was stopped before the event has been handled the future is failed with StreamDetachedException.

The handling of the returned future incurs a slight overhead, so for cases where it does not matter to the invoking logic see AsyncCallback#invoke

Attributes

Source
GraphStage.scala