Interface Partitioner

All Superinterfaces:
AutoCloseable, Closeable, Configurable
All Known Implementing Classes:
RoundRobinPartitioner, UniformStickyPartitioner

public interface Partitioner extends Configurable, Closeable
Partitioner Interface
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    This is called when partitioner is closed.
    default void
    onNewBatch(String topic, Cluster cluster, int prevPartition)
    Deprecated.
    Since 3.3.0
    int
    partition(String topic, Object key, byte[] keyBytes, Object value, byte[] valueBytes, Cluster cluster)
    Compute the partition for the given record.

    Methods inherited from interface org.apache.kafka.common.Configurable

    configure
  • Method Details

    • partition

      int partition(String topic, Object key, byte[] keyBytes, Object value, byte[] valueBytes, Cluster cluster)
      Compute the partition for the given record.
      Parameters:
      topic - The topic name
      key - The key to partition on (or null if no key)
      keyBytes - The serialized key to partition on( or null if no key)
      value - The value to partition on or null
      valueBytes - The serialized value to partition on or null
      cluster - The current cluster metadata
    • close

      void close()
      This is called when partitioner is closed.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
    • onNewBatch

      @Deprecated default void onNewBatch(String topic, Cluster cluster, int prevPartition)
      Deprecated.
      Since 3.3.0
      Note this method is only implemented in DefaultPartitioner and UniformStickyPartitioner which are now deprecated. See KIP-794 for more info.

      Notifies the partitioner a new batch is about to be created. When using the sticky partitioner, this method can change the chosen sticky partition for the new batch.

      Parameters:
      topic - The topic name
      cluster - The current cluster metadata
      prevPartition - The partition previously selected for the record that triggered a new batch