Class ConfigBeanFactory

java.lang.Object
com.typesafe.config.ConfigBeanFactory

public class ConfigBeanFactory extends Object
Factory for automatically creating a Java class from a Config. See create(Config,Class).
Since:
1.3.0
  • Constructor Details

    • ConfigBeanFactory

      public ConfigBeanFactory()
  • Method Details

    • create

      public static <T> T create(Config config, Class<T> clazz)
      Creates an instance of a class, initializing its fields from a Config. Example usage:
       Config configSource = ConfigFactory.load().getConfig("foo");
       FooConfig config = ConfigBeanFactory.create(configSource, FooConfig.class);
       
      The Java class should follow JavaBean conventions. Field types can be any of the types you can normally get from a Config, including java.time.Duration or ConfigMemorySize. Fields may also be another JavaBean-style class. Fields are mapped to config by converting the config key to camel case. So the key foo-bar becomes JavaBean setter setFooBar.
      Type Parameters:
      T - the type of the class to be instantiated
      Parameters:
      config - source of config information
      clazz - class to be instantiated
      Returns:
      an instance of the class populated with data from the config
      Throws:
      ConfigException.BadBean - If something is wrong with the JavaBean
      ConfigException.ValidationFailed - If the config doesn't conform to the bean's implied schema
      ConfigException - Can throw the same exceptions as the getters on Config
      Since:
      1.3.0