Module io.helidon.config
Package io.helidon.config.spi
Configuration SPI that defines the behavior developers can implement to extend the config system.
The most likely developer-implemented extension points:
| Interface | Purpose |
|---|---|
ConfigSource |
Loads configuration data from a type of source. |
ConfigParser |
Converts configuration data into a ConfigNode.ObjectNode. |
ConfigFilter |
Filters configuration values after they have been read from a
ConfigSource but before they are used in building a
Config tree. |
ConfigMapperProvider |
Converts Config nodes or subtrees to Java types. See
ConfigMappers for the built-in mappers. |
OverrideSource |
Replaces values pf config nodes whose keys match specified conditions with alternative values. |
PollingStrategy |
Notifies interested code when the data underlying a Source might
have changed. |
RetryPolicy |
Controls if and how a Source attempts to retry failed attempts to
load the underlying data. |
- See Also:
Configuration API
-
Interface Summary Interface Description ChangeWatcher<T> Similar to aPollingStrategya change watcher is used to identify a change and trigger reload of aConfigSource.ChangeWatcher.ChangeEvent<T> A change event, carrying the target, type of change and time of change.ChangeWatcherProvider Java service loader service to create a polling strategy factory based on meta configuration.ConfigContent Config content as provided by a config source that can read all its data at once (an "eager" config source).ConfigContent.NodeContent Config content that provides anConfigNode.ObjectNodedirectly, with no need for parsing.ConfigContent.OverrideContent A content of anOverrideSource.ConfigContext Context created by aConfig.Builderas it constructs aConfig.ConfigFilter Filter that can transform elementary configuration (String) values before they are returned via theConfigAPI.ConfigMapper Config mapper is provided toConfigMapperProviderto help transformation of complex structures.ConfigMapperProvider Provides mapping functions that convert aConfigsubtree to specific Java types.ConfigNode Marker interface identifying a config node implementation.ConfigNode.ListNode ConfigNode-based list of configuration values.ConfigNode.ListNode.Builder Builder to buildConfigNode.ListNodeinstance.ConfigNode.ObjectNode Configuration node representing a hierarchical structure parsed by a suitableConfigParserif necessary.ConfigNode.ObjectNode.Builder Builder to buildConfigNode.ObjectNodeinstance.ConfigNode.ValueNode Single string-based configuration value.ConfigParser Transforms configConfigParser.Contentinto aConfigNode.ObjectNodethat represents the original structure and values from the content.ConfigParser.Content Config content to be parsed by aConfigParser.ConfigSource Sourceof configuration.ConfigSourceProvider Java service loader service to provide a config source based on meta configuration.EventConfigSource A source that supports notifications when changed.LazyConfigSource A source that is not capable of loading all keys at once.MergingStrategy An algorithm for combining multipleConfigNode.ObjectNoderoot nodes into a singleConfigNode.ObjectNoderoot node.NodeConfigSource An eager source that can read all data from the underlying origin as a configuration node.OverrideSource Source of config override settings.OverrideSourceProvider Java service loader service to provide a override source based on meta configuration.ParsableSource An eager source that can read all data from the underlying origin as a stream that can be parsed based on its media type (or using an explicitConfigParser.ParsableSource.Builder<B extends ParsableSource.Builder<B>> A builder for a parsable source.PollableSource<S> A source implementing this interface provides support for polling using aPollingStrategy.PollableSource.Builder<T extends PollableSource.Builder<T>> A builder for pollable source.PollingStrategy Mechanism for notifying interested listeners when they should check for changes that might have been made to the data used to create aConfigtree, as accessed throughPollableSources.PollingStrategy.Polled A polled component.PollingStrategyProvider Java service loader service to create a polling strategy factory based on meta configuration.RetryPolicy Mechanism for controlling retry of attempts to load data by aConfigSource.RetryPolicyProvider Java service loader service to create retry policy based on meta configuration.Source Source of data.Source.Builder<B extends Source.Builder<B>> Configurable options of aSource.WatchableSource<T> A source implementing this interface provides a target that aChangeWatchercan use.WatchableSource.Builder<B extends WatchableSource.Builder<B,T>,T> A builder for a watchable source. -
Class Summary Class Description ConfigContent.Builder<T extends ConfigContent.Builder<T>> Fluent API builder forConfigContent, common ancestor for parsable content builder and node content builder.ConfigContent.NodeContent.Builder Fluent API builder forConfigContent.NodeContent.ConfigContent.OverrideContent.Builder ConfigParser.Content.Builder Fluent API builder forConfigParser.Content.OverrideSource.OverrideData Group of config override settings. -
Enum Summary Enum Description ChangeEventType Type of changes that can happen in aPollingStrategy.Polledcomponents.ConfigNode.NodeType Base types of config nodes. -
Exception Summary Exception Description ConfigParserException Root class for exceptions thrown during config parsing.