Packages

final case class MultiMessage[K, V, +PassThrough](records: Seq[ProducerRecord[K, V]], passThrough: PassThrough) extends Envelope[K, V, PassThrough] with Product with Serializable

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.

Source
ProducerMessage.scala
Linear Supertypes
Serializable, Product, Equals, Envelope[K, V, PassThrough], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MultiMessage
  2. Serializable
  3. Product
  4. Equals
  5. Envelope
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new MultiMessage(records: Collection[ProducerRecord[K, V]], passThrough: PassThrough)

    Java API: Constructor

  2. new MultiMessage(records: Seq[ProducerRecord[K, V]], passThrough: PassThrough)

Value Members

  1. val passThrough: PassThrough
    Definition Classes
    MultiMessageEnvelope
  2. def productElementNames: Iterator[String]
    Definition Classes
    Product
  3. val records: Seq[ProducerRecord[K, V]]
  4. def withPassThrough[PassThrough2](value: PassThrough2): Envelope[K, V, PassThrough2]
    Definition Classes
    MultiMessageEnvelope