Class KafkaClientProvider

  • All Implemented Interfaces:
    Closeable, AutoCloseable, org.apache.sling.distribution.journal.MessagingProvider

    public class KafkaClientProvider
    extends Object
    implements org.apache.sling.distribution.journal.MessagingProvider, Closeable
    • Constructor Detail

      • KafkaClientProvider

        public KafkaClientProvider​(org.osgi.service.event.EventAdmin eventAdmin,
                                   KafkaEndpoint kafkaEndpoint)
    • Method Detail

      • createSender

        public <T> org.apache.sling.distribution.journal.MessageSender<T> createSender​(String topic)
        Specified by:
        createSender in interface org.apache.sling.distribution.journal.MessagingProvider
      • createPoller

        public Closeable createPoller​(String topicName,
                                      org.apache.sling.distribution.journal.Reset reset,
                                      @Nullable
                                      String assign,
                                      org.apache.sling.distribution.journal.HandlerAdapter<?>... adapters)
        Specified by:
        createPoller in interface org.apache.sling.distribution.journal.MessagingProvider
      • assertTopic

        public void assertTopic​(String topic)
                         throws org.apache.sling.distribution.journal.MessagingException
        Specified by:
        assertTopic in interface org.apache.sling.distribution.journal.MessagingProvider
        Throws:
        org.apache.sling.distribution.journal.MessagingException
      • retrieveOffset

        public long retrieveOffset​(String topicName,
                                   org.apache.sling.distribution.journal.Reset reset)
        Specified by:
        retrieveOffset in interface org.apache.sling.distribution.journal.MessagingProvider
      • assignTo

        public String assignTo​(long offset)
        Specified by:
        assignTo in interface org.apache.sling.distribution.journal.MessagingProvider
      • assignTo

        public String assignTo​(org.apache.sling.distribution.journal.Reset reset,
                               long relativeOffset)
        Specified by:
        assignTo in interface org.apache.sling.distribution.journal.MessagingProvider
      • createConsumer

        protected <T> org.apache.kafka.clients.consumer.KafkaConsumer<String,​T> createConsumer​(Class<? extends org.apache.kafka.common.serialization.Deserializer<?>> deserializer,
                                                                                                     org.apache.sling.distribution.journal.Reset reset)
      • getServerUri

        public URI getServerUri()
        Specified by:
        getServerUri in interface org.apache.sling.distribution.journal.MessagingProvider