anchor.diff:  DeltaSpike is using internally, if a custom implementation should load
   the ordinal value from the config-source like the default
   implementations provided by DeltaSpike do.
  +
  +Since 1.8.0 you can also decorate a CDI `ConfigSource` with `@Source` and it will
  +be added to DeltaSpike configuration *once the CDI container is started* (it means
  +you can't use this source in an `Extension`).
   
   ==== PropertyFileConfig
   
  
positive.code:  * `ConfigResolver` methods for easy programmatic access to values
   * `TypedResolver` API for typed configuration values and precise control over resolution
   * `@ConfigProperty` for injection of configured values into beans
  
  All three mechanisms are described in the following sections.
  
  === ConfigResolver methods
  
  
negative.code: }
  -------------------------------------------------------------------
  
  == Interface based configuration
  
  The interfaces decorated with `@Configuration` are converted during CDI startup
  to Beans matching the interface type. Concretely this interface:
  
  [source]
  ----
  @Configuration
  public interface MyConfig {
  }
  ----
  
  Will use accessible using:
  
  [source]
  ----
  @Inject
  private MyConfig config;
  ----
  
  To define a configuration entry in this mode you define an interface method
  and decorate it with `@ConfigProperty` exactly as a normal injection:
  
  [source]
  ----
  @Configuration
  public interface MyConfig {
      @ConfigProperty(name = "my.config")
      String url();
  }
  ----
  
  TIP: this mode also supports primitives like `int`, `boolean`, ... as returned types.
  
  The methods are no parameter and not returning void methods.
  
  If all your keys use the same prefix you can configure it on `@Configuration`:
  
  [source]
  ----
  @Configuration(prefix = "client.")
  public interface MyConfig {
      @ConfigProperty(name = "url")
      String url();
  
      @ConfigProperty(name = "timeout", defaultValue = "30000")
      long timeout();
  }
  ----
  
  Finally, you can also access the caching feature of the `TypedResolver` through `@Configuration`:
  
  [source]
  ----
  @Configuration(cacheFor = 30, cacheUnit = TimeUnit.SECONDS)
  public interface MyConfig {
      @ConfigProperty(name = "url")
      String url();
  
      @ConfigProperty(name = "timeout", defaultValue = "30000")
      long timeout();
  }
  ----
  
  == Providing configuration using ConfigSources
  
  