Class ConfigBuilderSupport.ProviderSettings

java.lang.Object
io.helidon.config.ConfigBuilderSupport.ProviderSettings
Enclosing class:
ConfigBuilderSupport

public static final class ConfigBuilderSupport.ProviderSettings extends Object
Provider discovery settings used by generated configured builders.

Provider identity and configuration form are independent. Identity determines how configured provider instances are distinguished, while configuration form determines only the permitted outer configuration container. Service discovery controls whether providers without an explicit configuration entry are included.

  • Method Details

    • create

      public static ConfigBuilderSupport.ProviderSettings create(Option.Provider.Identity identity, Option.Provider.ConfigForm configForm, boolean discoverServices)
      Create provider discovery settings for generated configured builders.
      Parameters:
      identity - provider identity policy; determines whether provider instances are identified only by type, or by both type and name
      configForm - permitted outer configuration container form; independent of the provider identity policy
      discoverServices - whether providers without an explicit configuration entry should be discovered
      Returns:
      provider discovery settings
    • identity

      public Option.Provider.Identity identity()
      Provider identity policy.

      This determines how configured provider instances are distinguished. It does not determine whether the outer configuration container is an object or a list.

      Returns:
      provider identity policy
    • configForm

      public Option.Provider.ConfigForm configForm()
      Permitted outer configuration container form.

      This determines whether provider entries may be declared in an object, a list, or either form. It does not determine how provider instances are identified.

      Returns:
      permitted outer configuration container form
    • discoverServices

      public boolean discoverServices()
      Whether providers without an explicit configuration entry should be discovered.

      Explicitly configured providers are processed regardless of this value. Generated builders may expose a corresponding *-discover-services configuration option that overrides the annotation default.

      Returns:
      whether unconfigured providers should be discovered