Class KafkaConnectSink

java.lang.Object
org.apache.pulsar.io.kafka.connect.KafkaConnectSink
All Implemented Interfaces:
AutoCloseable, Sink<org.apache.pulsar.client.api.schema.GenericObject>

public class KafkaConnectSink extends Object implements Sink<org.apache.pulsar.client.api.schema.GenericObject>
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final ConcurrentLinkedDeque<org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject>>
     
    protected String
     
    protected boolean
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    ackUntil(org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject> lastNotFlushed, Map<org.apache.kafka.common.TopicPartition,org.apache.kafka.clients.consumer.OffsetAndMetadata> committedOffsets, Consumer<org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject>> cb)
     
    void
     
    protected long
    currentOffset(String topic, int partition)
     
    void
     
    void
    open(Map<String,Object> config, SinkContext ctx)
     
    protected String
    sanitizeNameIfNeeded(String name, boolean sanitize)
     
    protected org.apache.kafka.connect.sink.SinkRecord
    toSinkRecord(org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject> sourceRecord)
     
    void
    write(org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject> sourceRecord)
     

    Methods inherited from class java.lang.Object

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

    • pendingFlushQueue

      protected final ConcurrentLinkedDeque<org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject>> pendingFlushQueue
    • topicName

      protected String topicName
    • useOptionalPrimitives

      protected boolean useOptionalPrimitives
  • Constructor Details

    • KafkaConnectSink

      public KafkaConnectSink()
  • Method Details

    • write

      public void write(org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject> sourceRecord)
      Specified by:
      write in interface Sink<org.apache.pulsar.client.api.schema.GenericObject>
    • close

      public void close() throws Exception
      Specified by:
      close in interface AutoCloseable
      Throws:
      Exception
    • open

      public void open(Map<String,Object> config, SinkContext ctx) throws Exception
      Specified by:
      open in interface Sink<org.apache.pulsar.client.api.schema.GenericObject>
      Throws:
      Exception
    • flush

      public void flush()
    • ackUntil

      protected void ackUntil(org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject> lastNotFlushed, Map<org.apache.kafka.common.TopicPartition,org.apache.kafka.clients.consumer.OffsetAndMetadata> committedOffsets, Consumer<org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject>> cb)
    • toSinkRecord

      protected org.apache.kafka.connect.sink.SinkRecord toSinkRecord(org.apache.pulsar.functions.api.Record<org.apache.pulsar.client.api.schema.GenericObject> sourceRecord)
    • currentOffset

      protected long currentOffset(String topic, int partition)
    • sanitizeNameIfNeeded

      protected String sanitizeNameIfNeeded(String name, boolean sanitize)