Base class for an actor publishing events.
Base class for an actor publishing events.
Concrete subclasses must implement receiveEvent which becomes part of
the initial behavior, i.e. gets called by the provided receive implementation. Typically receiveEvent would
be implemented simply be invoking onEvent which fist appends the received event (message) to the buffer which
is limited by the bufferSize parameter and then publishes the buffered events up to the total demand if this
publisher is active.
ActorPublisherMessage.Request is handled by publishing the buffered events up to the requested demand and
other ActorPublisherMessages (e.g. Cancel) stop this actor.
If the heartbeatInterval is defined, a ServerSentEvent.heartbeat will be published if no other event has
been received within that interval.
Attention: An implicit view A => ServerSentEvent has to be in scope!
Mixing in this trait lets an akka.stream.scaladsl.Source of
ServerSentEvents be marshallable to an akka.http.model.HttpResponse.
Mixing in this trait lets an akka.stream.scaladsl.Source of
ServerSentEvents be marshallable to an akka.http.model.HttpResponse.
Attention: An implicit scala.concurrent.ExecutionContext has to be in scope!
Mixing in this trait lets an akka.http.model.HttpEntity
with a text/event-stream media type be unmarshallable to an akka.stream.scaladsl.Source[ServerSentEvent].
Mixing in this trait lets an akka.http.model.HttpEntity
with a text/event-stream media type be unmarshallable to an akka.stream.scaladsl.Source[ServerSentEvent].
Attention: An implicit scala.concurrent.ExecutionContext has to be in scope!
Representation of a Server-Sent Event.
Representation of a Server-Sent Event.
data which may be empty or span multiple lines
optional event type, must not contain \n or \r
Importing EventStreamMarshalling.toResponseMarshaller lets an akka.stream.scaladsl.Source of
ServerSentEvents be marshallable to an akka.http.model.HttpResponse.
Importing EventStreamMarshalling.toResponseMarshaller lets an akka.stream.scaladsl.Source of
ServerSentEvents be marshallable to an akka.http.model.HttpResponse.
: An implicit Attentionscala.concurrent.ExecutionContext has to be in scope!
Importing EventStreamUnmarshalling.fromEntityUnmarshaller lets an akka.http.model.HttpEntity
with a text/event-stream media type be unmarshallable to an akka.stream.scaladsl.Source[ServerSentEvent].
Importing EventStreamUnmarshalling.fromEntityUnmarshaller lets an akka.http.model.HttpEntity
with a text/event-stream media type be unmarshallable to an akka.stream.scaladsl.Source[ServerSentEvent].
: An implicit Attentionscala.concurrent.ExecutionContext has to be in scope!
Media types for Server-Sent Events.