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
trait Serializable
trait Product
trait Equals
trait Envelope[K, V, PassThrough]
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Constructors

def this(records: Collection[ProducerRecord[K, V]], passThrough: PassThrough)

Java API: Constructor

Java API: Constructor

Attributes

Source:
ProducerMessage.scala

Concrete methods

override def withPassThrough[PassThrough2](value: PassThrough2): Envelope[K, V, PassThrough2]

Attributes

Definition Classes
Source:
ProducerMessage.scala

Inherited methods

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product