Class KafkaAdmin

  • All Implemented Interfaces:
    org.springframework.beans.factory.Aware, org.springframework.beans.factory.SmartInitializingSingleton, org.springframework.context.ApplicationContextAware

    public class KafkaAdmin
    extends KafkaResourceFactory
    implements org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.SmartInitializingSingleton
    An admin that delegates to an AdminClient to create topics defined in the application context.
    Since:
    1.3
    Author:
    Gary Russell, Artem Bilan
    • Field Detail

      • DEFAULT_CLOSE_TIMEOUT

        public static final java.time.Duration DEFAULT_CLOSE_TIMEOUT
        The default close timeout duration as 10 seconds.
    • Constructor Detail

      • KafkaAdmin

        public KafkaAdmin​(java.util.Map<java.lang.String,​java.lang.Object> config)
        Create an instance with an AdminClient based on the supplied configuration.
        Parameters:
        config - the configuration for the AdminClient.
    • Method Detail

      • setApplicationContext

        public void setApplicationContext​(org.springframework.context.ApplicationContext applicationContext)
                                   throws org.springframework.beans.BeansException
        Specified by:
        setApplicationContext in interface org.springframework.context.ApplicationContextAware
        Throws:
        org.springframework.beans.BeansException
      • setCloseTimeout

        public void setCloseTimeout​(int closeTimeout)
        Set the close timeout in seconds. Defaults to DEFAULT_CLOSE_TIMEOUT seconds.
        Parameters:
        closeTimeout - the timeout.
      • setOperationTimeout

        public void setOperationTimeout​(int operationTimeout)
        Set the operation timeout in seconds. Defaults to 30 seconds.
        Parameters:
        operationTimeout - the timeout.
      • setFatalIfBrokerNotAvailable

        public void setFatalIfBrokerNotAvailable​(boolean fatalIfBrokerNotAvailable)
        Set to true if you want the application context to fail to load if we are unable to connect to the broker during initialization, to check/add topics.
        Parameters:
        fatalIfBrokerNotAvailable - true to fail.
      • setAutoCreate

        public void setAutoCreate​(boolean autoCreate)
        Set to false to suppress auto creation of topics during context initialization.
        Parameters:
        autoCreate - boolean flag to indicate creating topics or not during context initialization
        See Also:
        initialize()
      • getConfig

        @Deprecated
        public java.util.Map<java.lang.String,​java.lang.Object> getConfig()
        Deprecated.
        Get an unmodifiable copy of this admin's configuration.
        Returns:
        the configuration map.
      • getConfigurationProperties

        public java.util.Map<java.lang.String,​java.lang.Object> getConfigurationProperties()
        Get an unmodifiable copy of this admin's configuration.
        Returns:
        the configuration map.
      • afterSingletonsInstantiated

        public void afterSingletonsInstantiated()
        Specified by:
        afterSingletonsInstantiated in interface org.springframework.beans.factory.SmartInitializingSingleton