trait EventProducerService extends AnyRef
EventProducerService runs on the producer side and implements the producer side of the EventsBySlices query, which can be used with Akka Projection over gRPC.
- Events are stored in the event journal on the producer side.
2. Consumer side starts an Akka Projection which locally reads its offset
from the Projection offset store.
3. Consumer side establishes a replication stream from the producer service
by sending the
InitReq
with the offset to start from. 4. Events are read from the journal on the producer side and emitted to the replication stream. 5. Consumer side processes the events in a Projection handler. 6. Offset is stored on the consumer side by the Projection offset store. 7. Producer continues to read new events from the journal and emit to the stream. The consumer can define event filters with theFilterCriteria
, which can be included in theInitReq
and also changed in runtime by sendingFilterReq
.
- Annotations
- @AkkaGrpcGenerated()
- Source
- EventProducerService.scala
Linear Supertypes
Known Subclasses
Ordering
- Alphabetic
- By Inheritance
Inherited
- EventProducerService
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Abstract Value Members
- abstract def eventTimestamp(in: EventTimestampRequest): Future[EventTimestampResponse]
Used in some edge cases by the offset store to retrieve the timestamp for a certain event.
- abstract def eventsBySlices(in: Source[StreamIn, NotUsed]): Source[StreamOut, NotUsed]
- abstract def loadEvent(in: LoadEventRequest): Future[LoadEventResponse]
Lazy loading of a specific event.