Class KafkaMessageSender

java.lang.Object
de.otto.synapse.endpoint.AbstractMessageEndpoint
de.otto.synapse.endpoint.sender.AbstractMessageSenderEndpoint
de.otto.synapse.endpoint.sender.kafka.KafkaMessageSender
All Implemented Interfaces:
de.otto.synapse.endpoint.MessageEndpoint, de.otto.synapse.endpoint.sender.MessageSender, de.otto.synapse.endpoint.sender.MessageSenderEndpoint

public class KafkaMessageSender
extends de.otto.synapse.endpoint.sender.AbstractMessageSenderEndpoint
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static long UPDATE_PARTITION_DELAY  

    Fields inherited from class de.otto.synapse.endpoint.sender.AbstractMessageSenderEndpoint

    BATCH_SENDER_TIMEOUT
  • Constructor Summary

    Constructors 
    Constructor Description
    KafkaMessageSender​(java.lang.String channelName, de.otto.synapse.endpoint.MessageInterceptorRegistry interceptorRegistry, de.otto.synapse.translator.MessageTranslator<de.otto.synapse.message.TextMessage> messageTranslator, org.springframework.kafka.core.KafkaTemplate<java.lang.String,​java.lang.String> kafkaTemplate)  
  • Method Summary

    Modifier and Type Method Description
    protected java.util.concurrent.CompletableFuture<java.lang.Void> doSend​(de.otto.synapse.message.TextMessage message)  
    protected java.util.concurrent.CompletableFuture<java.lang.Void> doSendBatch​(java.util.stream.Stream<de.otto.synapse.message.TextMessage> messageStream)  
    de.otto.synapse.translator.MessageFormat getMessageFormat()  
    void updatePartitions()  

    Methods inherited from class de.otto.synapse.endpoint.sender.AbstractMessageSenderEndpoint

    getEndpointType, send, sendBatch

    Methods inherited from class de.otto.synapse.endpoint.AbstractMessageEndpoint

    getChannelName, getInterceptorChain, intercept

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface de.otto.synapse.endpoint.MessageEndpoint

    getChannelName, getInterceptorChain, intercept
  • Field Details

  • Constructor Details

    • KafkaMessageSender

      public KafkaMessageSender​(java.lang.String channelName, de.otto.synapse.endpoint.MessageInterceptorRegistry interceptorRegistry, de.otto.synapse.translator.MessageTranslator<de.otto.synapse.message.TextMessage> messageTranslator, org.springframework.kafka.core.KafkaTemplate<java.lang.String,​java.lang.String> kafkaTemplate)
  • Method Details

    • updatePartitions

      @Scheduled(initialDelay=10000L, fixedDelay=10000L) public void updatePartitions()
    • doSend

      protected java.util.concurrent.CompletableFuture<java.lang.Void> doSend​(@Nonnull de.otto.synapse.message.TextMessage message)
      Specified by:
      doSend in class de.otto.synapse.endpoint.sender.AbstractMessageSenderEndpoint
    • doSendBatch

      protected java.util.concurrent.CompletableFuture<java.lang.Void> doSendBatch​(@Nonnull java.util.stream.Stream<de.otto.synapse.message.TextMessage> messageStream)
      Overrides:
      doSendBatch in class de.otto.synapse.endpoint.sender.AbstractMessageSenderEndpoint
    • getMessageFormat

      public de.otto.synapse.translator.MessageFormat getMessageFormat()
      Overrides:
      getMessageFormat in class de.otto.synapse.endpoint.sender.AbstractMessageSenderEndpoint