Class KafkaPartitionSplitReader

java.lang.Object
org.apache.flink.connector.kafka.source.reader.KafkaPartitionSplitReader
All Implemented Interfaces:
AutoCloseable, org.apache.flink.connector.base.source.reader.splitreader.SplitReader<org.apache.kafka.clients.consumer.ConsumerRecord<byte[],byte[]>,KafkaPartitionSplit>
Direct Known Subclasses:
KafkaPartitionSplitReaderWrapper

@Internal public class KafkaPartitionSplitReader extends Object implements org.apache.flink.connector.base.source.reader.splitreader.SplitReader<org.apache.kafka.clients.consumer.ConsumerRecord<byte[],byte[]>,KafkaPartitionSplit>
A SplitReader implementation that reads records from Kafka partitions.
  • Constructor Details

    • KafkaPartitionSplitReader

      public KafkaPartitionSplitReader(Properties props, org.apache.flink.api.connector.source.SourceReaderContext context, KafkaSourceReaderMetrics kafkaSourceReaderMetrics)
    • KafkaPartitionSplitReader

      public KafkaPartitionSplitReader(Properties props, org.apache.flink.api.connector.source.SourceReaderContext context, KafkaSourceReaderMetrics kafkaSourceReaderMetrics, String rackIdSupplier)
  • Method Details

    • fetch

      public org.apache.flink.connector.base.source.reader.RecordsWithSplitIds<org.apache.kafka.clients.consumer.ConsumerRecord<byte[],byte[]>> fetch() throws IOException
      Specified by:
      fetch in interface org.apache.flink.connector.base.source.reader.splitreader.SplitReader<org.apache.kafka.clients.consumer.ConsumerRecord<byte[],byte[]>,KafkaPartitionSplit>
      Throws:
      IOException
    • handleSplitsChanges

      public void handleSplitsChanges(org.apache.flink.connector.base.source.reader.splitreader.SplitsChange<KafkaPartitionSplit> splitsChange)
      Specified by:
      handleSplitsChanges in interface org.apache.flink.connector.base.source.reader.splitreader.SplitReader<org.apache.kafka.clients.consumer.ConsumerRecord<byte[],byte[]>,KafkaPartitionSplit>
    • wakeUp

      public void wakeUp()
      Specified by:
      wakeUp in interface org.apache.flink.connector.base.source.reader.splitreader.SplitReader<org.apache.kafka.clients.consumer.ConsumerRecord<byte[],byte[]>,KafkaPartitionSplit>
    • close

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

      public void pauseOrResumeSplits(Collection<KafkaPartitionSplit> splitsToPause, Collection<KafkaPartitionSplit> splitsToResume)
      Specified by:
      pauseOrResumeSplits in interface org.apache.flink.connector.base.source.reader.splitreader.SplitReader<org.apache.kafka.clients.consumer.ConsumerRecord<byte[],byte[]>,KafkaPartitionSplit>
    • notifyCheckpointComplete

      public void notifyCheckpointComplete(Map<org.apache.kafka.common.TopicPartition,org.apache.kafka.clients.consumer.OffsetAndMetadata> offsetsToCommit, org.apache.kafka.clients.consumer.OffsetCommitCallback offsetCommitCallback)