Class ReactiveKafkaProducerTemplate<K,V>

java.lang.Object
org.springframework.kafka.core.reactive.ReactiveKafkaProducerTemplate<K,V>
Type Parameters:
K - the key type.
V - the value type.
All Implemented Interfaces:
AutoCloseable, DisposableBean

public class ReactiveKafkaProducerTemplate<K,V> extends Object implements AutoCloseable, DisposableBean
Reactive kafka producer operations implementation.
Since:
2.3.0
Author:
Mark Norkin, Adrian Chlebosz
  • Constructor Summary

    Constructors
    Constructor
    Description
    ReactiveKafkaProducerTemplate(reactor.kafka.sender.KafkaSender<K,V> sender)
     
    ReactiveKafkaProducerTemplate(reactor.kafka.sender.KafkaSender<K,V> sender, RecordMessageConverter messageConverter)
     
    ReactiveKafkaProducerTemplate(reactor.kafka.sender.SenderOptions<K,V> senderOptions)
     
    ReactiveKafkaProducerTemplate(reactor.kafka.sender.SenderOptions<K,V> senderOptions, RecordMessageConverter messageConverter)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
     
    <T> reactor.core.publisher.Mono<T>
    doOnProducer(Function<org.apache.kafka.clients.producer.Producer<K,V>,? extends T> action)
     
    reactor.core.publisher.Flux<reactor.util.function.Tuple2<org.apache.kafka.common.MetricName,? extends org.apache.kafka.common.Metric>>
     
    reactor.core.publisher.Flux<org.apache.kafka.common.PartitionInfo>
     
    reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>>
    send(String topic, int partition, long timestamp, K key, V value)
     
    reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>>
    send(String topic, int partition, K key, V value)
     
    reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>>
    send(String topic, K key, V value)
     
    reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>>
    send(String topic, Message<?> message)
     
    reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>>
    send(String topic, V value)
     
    reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>>
    send(org.apache.kafka.clients.producer.ProducerRecord<K,V> record)
     
    <T> reactor.core.publisher.Flux<reactor.kafka.sender.SenderResult<T>>
    send(org.reactivestreams.Publisher<? extends reactor.kafka.sender.SenderRecord<K,V,T>> records)
     
    <T> reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<T>>
    send(reactor.kafka.sender.SenderRecord<K,V,T> record)
     
    <T> reactor.core.publisher.Flux<reactor.kafka.sender.SenderResult<T>>
    sendTransactionally(org.reactivestreams.Publisher<? extends reactor.kafka.sender.SenderRecord<K,V,T>> records)
     
    <T> reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<T>>
    sendTransactionally(reactor.kafka.sender.SenderRecord<K,V,T> record)
     
    reactor.kafka.sender.TransactionManager
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ReactiveKafkaProducerTemplate

      public ReactiveKafkaProducerTemplate(reactor.kafka.sender.SenderOptions<K,V> senderOptions)
    • ReactiveKafkaProducerTemplate

      public ReactiveKafkaProducerTemplate(reactor.kafka.sender.SenderOptions<K,V> senderOptions, RecordMessageConverter messageConverter)
    • ReactiveKafkaProducerTemplate

      public ReactiveKafkaProducerTemplate(reactor.kafka.sender.KafkaSender<K,V> sender)
    • ReactiveKafkaProducerTemplate

      public ReactiveKafkaProducerTemplate(reactor.kafka.sender.KafkaSender<K,V> sender, RecordMessageConverter messageConverter)
  • Method Details

    • sendTransactionally

      public <T> reactor.core.publisher.Flux<reactor.kafka.sender.SenderResult<T>> sendTransactionally(org.reactivestreams.Publisher<? extends reactor.kafka.sender.SenderRecord<K,V,T>> records)
    • sendTransactionally

      public <T> reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<T>> sendTransactionally(reactor.kafka.sender.SenderRecord<K,V,T> record)
    • send

      public reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>> send(String topic, V value)
    • send

      public reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>> send(String topic, K key, V value)
    • send

      public reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>> send(String topic, int partition, K key, V value)
    • send

      public reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>> send(String topic, int partition, long timestamp, K key, V value)
    • send

      public reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>> send(String topic, Message<?> message)
    • send

      public reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<Void>> send(org.apache.kafka.clients.producer.ProducerRecord<K,V> record)
    • send

      public <T> reactor.core.publisher.Mono<reactor.kafka.sender.SenderResult<T>> send(reactor.kafka.sender.SenderRecord<K,V,T> record)
    • send

      public <T> reactor.core.publisher.Flux<reactor.kafka.sender.SenderResult<T>> send(org.reactivestreams.Publisher<? extends reactor.kafka.sender.SenderRecord<K,V,T>> records)
    • partitionsFromProducerFor

      public reactor.core.publisher.Flux<org.apache.kafka.common.PartitionInfo> partitionsFromProducerFor(String topic)
    • metricsFromProducer

      public reactor.core.publisher.Flux<reactor.util.function.Tuple2<org.apache.kafka.common.MetricName,? extends org.apache.kafka.common.Metric>> metricsFromProducer()
    • doOnProducer

      public <T> reactor.core.publisher.Mono<T> doOnProducer(Function<org.apache.kafka.clients.producer.Producer<K,V>,? extends T> action)
    • transactionManager

      public reactor.kafka.sender.TransactionManager transactionManager()
    • destroy

      public void destroy()
      Specified by:
      destroy in interface DisposableBean
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable