com.typesafe.config

## Class ConfigBeanFactory

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

    public class ConfigBeanFactory
    extends java.lang.Object

Factory for automatically creating a Java class from a `Config`. See `create(Config,Class)`.

Since:
  1.3.0

### Constructor Summary

Constructors
Constructor and Description
`ConfigBeanFactory()`

### Method Summary

All Methods Static Methods Concrete Methods
`static <T> T` `create(Config config, java.lang.Class<T> clazz)` Creates an instance of a class, initializing its fields from a `Config`.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ConfigBeanFactory

    public ConfigBeanFactory()

### Method Detail

#### create

    public static <T> T create(Config config,
                               java.lang.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