org.apache.felix.ipojo.extender

## Interface ConfigurationBuilder

All Known Implementing Classes:
  DefaultConfigurationBuilder

    public interface ConfigurationBuilder

Support class for fluent instance declaration building. This class can be used to provide values for instance configuration. Any object can be used as configuration values (List and Maps are accepted for example).

Since:
  1.11.2

### Method Summary

All Methods Instance Methods Abstract Methods
`DeclarationHandle` `build()` Build the declaration handle (contains the instance configuration).
`ConfigurationBuilder` `clear()` Remove all properties from the configuration.
`ConfigurationBuilder` `property(java.lang.String name, java.lang.Object value)` Provide a property value.
`ConfigurationBuilder` `remove(java.lang.String name)` Remove a property from the configuration.

### Method Detail

#### property

    ConfigurationBuilder property(java.lang.String name,
                                  java.lang.Object value)

Provide a property value.

Parameters:
  `name` - property name
  `value` - property value
Returns:
  this builder

#### remove

    ConfigurationBuilder remove(java.lang.String name)

Remove a property from the configuration. This does not affect already created declarations (from this builder).

Parameters:
  `name` - property name
Returns:
  this builder

#### clear

    ConfigurationBuilder clear()

Remove all properties from the configuration. This does not affect already created declarations (from this builder).

Returns:
  this builder

#### build

    DeclarationHandle build()

Build the declaration handle (contains the instance configuration). Notice that the declaration is not yet published (no automatic activation). The client has to do it through `DeclarationHandle.publish()`

Returns:
  the handle to the configured declaration