Annotation Type ConfiguredOption
- 
 @Target(METHOD) @Inherited @Retention(SOURCE) @Repeatable(ConfiguredOptions.class) public @interface ConfiguredOption A single configuration option. Must be used together withConfigured. Usually this should target a builder method that configures appropriate option. If defined on a static method, it must be a {code static T create(X)} method, where X is eitherio.helidon.config.Configor a single option.There may be multiple create(X)methods defined on a single interface/class, each of them annotated with a different list of options. In such a case the grouping should be used as defined on these methods. If a methodcreate(Config)exists, it should use the same groups (e.g. if one method defines URI and Proxy, and another method defines a Path, thecreate(Config)method can accept either (URI, proxy host, proxy port) or (path).By default, the name of the method is considered to be the configuration option used. If method contains camel case, it will be changed to lower case hyphenated (this describes the implementation of Helidon specific annotation processor and expectations). Example - method public Builder listenAddress(String)would be configured by keylisten-address.
- 
- 
Field SummaryFields Modifier and Type Fields Description static StringUNCONFIGUREDA string meaning that a value is not specified (to allow empty String as a meaningful value).
 - 
Optional Element SummaryOptional Elements Modifier and Type Optional Element Description ConfiguredValue[]allowedValuesFor options that have a predefined set of allowed values.booleandeprecatedConfigure totrueif this option is deprecated.StringdescriptionDescription of the configuration option.booleanexperimentalSet totruefor experimental configuration.StringkeyThe key of the configuration option as used in config.ConfiguredOption.KindkindKind of this option.booleanmergeWithParentWhen set totrue, this property will be part of the parent structure (e.g.booleanproviderSet to true if the configuration may be provided by another module not know to us.booleanrequiredWhether this option is truly required (e.g.Class<?>typeThe type of the configuration option.StringvalueDefault value of this option if not configured explicitly.
 
- 
- 
- 
Field Detail- 
UNCONFIGUREDstatic final String UNCONFIGURED A string meaning that a value is not specified (to allow empty String as a meaningful value).
 
- 
 - 
Element Detail- 
keyString key The key of the configuration option as used in config.- Returns:
- config key
 - Default:
- ""
 
 
- 
 - 
- 
descriptionString description Description of the configuration option. By default javadoc of the builder method is used. If this annotation exists on a class, description is mandatory.- Returns:
- description of the configuration option
 - Default:
- ""
 
 
- 
 - 
- 
requiredboolean required Whether this option is truly required (e.g. the option must be present in configuration, otherwise the component would fail). This MUST NOT be configured together with default value, as that would make this option optional (as a default value exists).- Returns:
- truefor required option,- falsefor options that are optional.
 - Default:
- false
 
 
- 
 - 
- 
valueString value Default value of this option if not configured explicitly.- Returns:
- default value
 - Default:
- "io.helidon.config.metadata.ConfiguredOption.UNCONFIGURED"
 
 
- 
 - 
- 
kindConfiguredOption.Kind kind Kind of this option. Defaults toConfiguredOption.Kind.VALUE, autodetectsConfiguredOption.Kind.LISTif the parameter is an actualListorSet.ConfiguredOption.Kind.MAPis detected as well, though the type must be a String to a primitive or string- Returns:
- kind of configuration option
 - Default:
- io.helidon.config.metadata.ConfiguredOption.Kind.VALUE
 
 
- 
 - 
- 
providerboolean provider Set to true if the configuration may be provided by another module not know to us. The provider must then be configured toConfigured.provides()this type.- Returns:
- whether this requires a provider with configuration, defaults to false
 - Default:
- false
 
 
- 
 - 
- 
allowedValuesConfiguredValue[] allowedValues For options that have a predefined set of allowed values.- Returns:
- allowed values
 - Default:
- {}
 
 
- 
 - 
- 
mergeWithParentboolean mergeWithParent When set totrue, this property will be part of the parent structure (e.g. thekey()must be empty, and this must be a complex node).- Returns:
- whether to merge the child nodes directly with parent node without a key
 - Default:
- false
 
 
- 
 
-