Interface Reconfigurable

All Superinterfaces:
Configurable
All Known Subinterfaces:
MetricsReporter
All Known Implementing Classes:
JmxReporter

public interface Reconfigurable extends Configurable
Interface for reconfigurable classes that support dynamic configuration.
  • Method Details

    • reconfigurableConfigs

      Set<String> reconfigurableConfigs()
      Returns the names of configs that may be reconfigured.
    • validateReconfiguration

      void validateReconfiguration(Map<String,?> configs) throws ConfigException
      Validates the provided configuration. The provided map contains all configs including any reconfigurable configs that may be different from the initial configuration. Reconfiguration will be not performed if this method throws any exception.
      Throws:
      ConfigException - if the provided configs are not valid. The exception message from ConfigException will be returned to the client in the AlterConfigs response.
    • reconfigure

      void reconfigure(Map<String,?> configs)
      Reconfigures this instance with the given key-value pairs. The provided map contains all configs including any reconfigurable configs that may have changed since the object was initially configured using Configurable.configure(Map). This method will only be invoked if the configs have passed validation using validateReconfiguration(Map).