MultiMessage
akka.kafka.ProducerMessage$.MultiMessage
final case class MultiMessage[K, V, +PassThrough](records: Seq[ProducerRecord[K, V]], passThrough: PassThrough) extends Envelope[K, V, PassThrough]
Envelope implementation that produces multiple message to a Kafka topics, flows emit a MultiResult for every element processed.
Every element in records
contains a topic name to which the record is being sent, an optional
partition number, and an optional key and value.
The passThrough
field may hold any element that is passed through the Producer.flow
and included in the MultiResult. That is useful when some context is needed to be passed
on downstream operations. That could be done with unzip/zip, but this is more convenient.
It can for example be a ConsumerMessage.CommittableOffset or ConsumerMessage.CommittableOffsetBatch
that can be committed later in the flow.
Attributes
- Source:
- ProducerMessage.scala
- Graph
- Supertypes