@Documented
@Retention(value=RUNTIME)
@Target(value=TYPE)
public @interface Configuration
prefix(), which sets a shared prefix for all the
properties bound to the interface's methods, and immutable(), which when set to true creates a static proxy
that always returns the config values as they were at the moment that the proxy object is created.
Note that an interface can be bound via the ConfigProxyFactory even if it does NOT have this annotation.
When applied to a field, marks it as a configuration item, to be injected with the value of the specified property key. This usage is deprecated in favor of using your DI-framework options for injecting configuration values.
PropertyName,
DefaultValue| Modifier and Type | Optional Element and Description |
|---|---|
boolean |
allowFields
true to allow mapping configuration to fields
|
boolean |
allowSetters
true to allow mapping configuration to setters
|
java.lang.String |
documentation
user displayable description of this configuration
|
boolean |
immutable
If true then properties cannot change once set otherwise methods will be
bound to dynamic properties via PropertyFactory.
|
java.lang.String[] |
params
field names to use for replacement
|
java.lang.String |
postConfigure
Method to call after configuration is bound
|
java.lang.String |
prefix
name/key of the config to assign
|
public abstract java.lang.String prefix
public abstract java.lang.String documentation
public abstract boolean allowFields
public abstract boolean allowSetters