Class PartitionPausingBackOffManagerFactory

java.lang.Object
org.springframework.kafka.listener.AbstractKafkaBackOffManagerFactory
org.springframework.kafka.listener.PartitionPausingBackOffManagerFactory
All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware, KafkaBackOffManagerFactory

public class PartitionPausingBackOffManagerFactory extends AbstractKafkaBackOffManagerFactory
Creates a KafkaConsumerBackoffManager instance with or without a KafkaConsumerTimingAdjuster.
Since:
2.7
  • Constructor Details

    • PartitionPausingBackOffManagerFactory

      public PartitionPausingBackOffManagerFactory(KafkaConsumerTimingAdjuster timingAdjustmentManager)
      Constructs a factory instance that will create the KafkaConsumerBackoffManager instances with the provided KafkaConsumerTimingAdjuster.
      Parameters:
      timingAdjustmentManager - the KafkaConsumerTimingAdjuster to be used.
    • PartitionPausingBackOffManagerFactory

      public PartitionPausingBackOffManagerFactory(org.springframework.core.task.TaskExecutor timingAdjustmentManagerTaskExecutor)
      Constructs a factory instance that will create the KafkaConsumerBackoffManager instances with the provided TaskExecutor in its KafkaConsumerTimingAdjuster.
      Parameters:
      timingAdjustmentManagerTaskExecutor - the TaskExecutor to be used.
    • PartitionPausingBackOffManagerFactory

      public PartitionPausingBackOffManagerFactory(boolean timingAdjustmentEnabled)
      Constructs a factory instance specifying whether or not timing adjustment is enabled for this factories KafkaConsumerBackoffManager.
      Parameters:
      timingAdjustmentEnabled - the KafkaConsumerTimingAdjuster to be used.
    • PartitionPausingBackOffManagerFactory

      public PartitionPausingBackOffManagerFactory(ListenerContainerRegistry listenerContainerRegistry)
      Constructs a factory instance using the provided ListenerContainerRegistry.
      Parameters:
      listenerContainerRegistry - the ListenerContainerRegistry to be used.
    • PartitionPausingBackOffManagerFactory

      public PartitionPausingBackOffManagerFactory()
      Constructs a factory instance with default dependencies.
    • PartitionPausingBackOffManagerFactory

      public PartitionPausingBackOffManagerFactory(Clock clock)
      Constructs an factory instance that will create the KafkaConsumerBackoffManager with the provided Clock.
      Parameters:
      clock - the clock instance to be used.
  • Method Details

    • setTimingAdjustmentEnabled

      public final void setTimingAdjustmentEnabled(boolean timingAdjustmentEnabled)
      Set this property to false if you don't want the resulting KafkaBackOffManager to adjust the precision of the topics' consumption timing.
      Parameters:
      timingAdjustmentEnabled - set to false to disable timing adjustment.
    • setTimingAdjustmentManager

      public final void setTimingAdjustmentManager(KafkaConsumerTimingAdjuster timingAdjustmentManager)
      Sets the WakingKafkaConsumerTimingAdjuster that will be used with the resulting KafkaConsumerBackoffManager.
      Parameters:
      timingAdjustmentManager - the adjustmentManager to be used.
    • setTaskExecutor

      public final void setTaskExecutor(org.springframework.core.task.TaskExecutor taskExecutor)
      Sets the TaskExecutor that will be used in the KafkaConsumerTimingAdjuster.
      Parameters:
      taskExecutor - the taskExecutor to be used.
    • doCreateManager

      protected KafkaConsumerBackoffManager doCreateManager(ListenerContainerRegistry registry)
      Specified by:
      doCreateManager in class AbstractKafkaBackOffManagerFactory
    • getDefaultClock

      protected final Clock getDefaultClock()