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 aPollingStrategy
a 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.ObjectNode
directly, with no need for parsing.ConfigContent.OverrideContent A content of anOverrideSource
.ConfigContext Context created by aConfig.Builder
as it constructs aConfig
.ConfigFilter Filter that can transform elementary configuration (String
) values before they are returned via theConfig
API.ConfigMapper Config mapper is provided toConfigMapperProvider
to help transformation of complex structures.ConfigMapperProvider Provides mapping functions that convert aConfig
subtree 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.ListNode
instance.ConfigNode.ObjectNode Configuration node representing a hierarchical structure parsed by a suitableConfigParser
if necessary.ConfigNode.ObjectNode.Builder Builder to buildConfigNode.ObjectNode
instance.ConfigNode.ValueNode Single string-based configuration value.ConfigParser Transforms configConfigParser.Content
into aConfigNode.ObjectNode
that represents the original structure and values from the content.ConfigParser.Content Config content to be parsed by aConfigParser
.ConfigSource Source
of 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.ObjectNode
root nodes into a singleConfigNode.ObjectNode
root 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 aConfig
tree, as accessed throughPollableSource
s.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 aChangeWatcher
can 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.Polled
components.ConfigNode.NodeType Base types of config nodes. -
Exception Summary Exception Description ConfigParserException Root class for exceptions thrown during config parsing.