Object

akka.kafka

ProducerMessage

Related Doc: package kafka

Permalink

object ProducerMessage

Classes that are used in both javadsl.Producer and scaladsl.Producer.

Source
ProducerMessage.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ProducerMessage
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Envelope[K, V, +PassThrough] extends AnyRef

    Permalink

    Type accepted by Producer.committableSink and Producer.flexiFlow with implementations

    Type accepted by Producer.committableSink and Producer.flexiFlow with implementations

    - Message publishes a single message to its topic, and continues in the stream as Result

    - MultiMessage publishes all messages in its records field, and continues in the stream as MultiResult

    - PassThroughMessage does not publish anything, and continues in the stream as PassThroughResult

    The passThrough field may hold any element that is passed through the Producer.flexiFlow and included in the Results. 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.

  2. final case class Message[K, V, +PassThrough](record: ProducerRecord[K, V], passThrough: PassThrough) extends Envelope[K, V, PassThrough] with Product with Serializable

    Permalink

    Envelope implementation that produces a single message to a Kafka topic, flows emit a Result for every element processed.

    Envelope implementation that produces a single message to a Kafka topic, flows emit a Result for every element processed.

    The record 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 Result. 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.

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

    Permalink

    Envelope implementation that produces multiple message to a Kafka topics, flows emit a MultiResult for every element processed.

    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.

  4. final case class MultiResult[K, V, PassThrough] extends Results[K, V, PassThrough] with Product with Serializable

    Permalink

    Results implementation emitted when all messages in a MultiMessage have been successfully published.

  5. final case class MultiResultPart[K, V] extends Product with Serializable

    Permalink
  6. final case class PassThroughMessage[K, V, +PassThrough](passThrough: PassThrough) extends Envelope[K, V, PassThrough] with Product with Serializable

    Permalink

    Envelope implementation that does not produce anything to Kafka, flows emit a PassThroughResult for every element processed.

    Envelope implementation that does not produce anything to Kafka, flows emit a PassThroughResult for every element processed.

    The passThrough field may hold any element that is passed through the Producer.flow and included in the Results. 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.

  7. final case class PassThroughResult[K, V, PassThrough] extends Results[K, V, PassThrough] with Product with Serializable

    Permalink

    Results implementation emitted when a PassThroughMessage has passed through the flow.

  8. final case class Result[K, V, PassThrough] extends Results[K, V, PassThrough] with Product with Serializable

    Permalink

    Results implementation emitted when a Message has been successfully published.

    Results implementation emitted when a Message has been successfully published.

    Includes the original message, metadata returned from KafkaProducer and the offset of the produced message.

  9. sealed trait Results[K, V, PassThrough] extends AnyRef

    Permalink

    Output type produced by Producer.flexiFlow and Transactional.flow.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. def multi[K, V](records: Collection[ProducerRecord[K, V]]): Envelope[K, V, NotUsed]

    Permalink

    Java API: Create a multi-message containing several records.

    Java API: Create a multi-message containing several records.

    K

    the type of keys

    V

    the type of values

  13. def multi[K, V, PassThrough](records: Collection[ProducerRecord[K, V]], passThrough: PassThrough): Envelope[K, V, PassThrough]

    Permalink

    Java API: Create a multi-message containing several records and one passThrough.

    Java API: Create a multi-message containing several records and one passThrough.

    K

    the type of keys

    V

    the type of values

    PassThrough

    the type of data passed through

  14. def multi[K, V](records: Seq[ProducerRecord[K, V]]): Envelope[K, V, NotUsed]

    Permalink

    Create a multi-message containing several records.

    Create a multi-message containing several records.

    K

    the type of keys

    V

    the type of values

  15. def multi[K, V, PassThrough](records: Seq[ProducerRecord[K, V]], passThrough: PassThrough): Envelope[K, V, PassThrough]

    Permalink

    Create a multi-message containing several records and one passThrough.

    Create a multi-message containing several records and one passThrough.

    K

    the type of keys

    V

    the type of values

    PassThrough

    the type of data passed through

  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. def passThrough[K, V, PassThrough](passThrough: PassThrough): Envelope[K, V, PassThrough]

    Permalink

    Create a pass-through message not containing any records.

    Create a pass-through message not containing any records. In some cases the type parameters need to be specified explicitly.

    K

    the type of keys

    V

    the type of values

    PassThrough

    the type of data passed through

  20. def single[K, V](record: ProducerRecord[K, V]): Envelope[K, V, NotUsed]

    Permalink

    Create a message containing the record.

    Create a message containing the record.

    K

    the type of keys

    V

    the type of values

  21. def single[K, V, PassThrough](record: ProducerRecord[K, V], passThrough: PassThrough): Envelope[K, V, PassThrough]

    Permalink

    Create a message containing the record and a passThrough.

    Create a message containing the record and a passThrough.

    K

    the type of keys

    V

    the type of values

    PassThrough

    the type of data passed through

  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  23. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped