Package com.typesafe.config

# 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 Summary

Constructors
Constructor
Description
`ConfigBeanFactory()`

## Method Summary

Modifier and Type
Method
Description
`static <T> T`
`create(Config config, 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 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