-
public interface ConfigSourceRuntime
The runtime of a config source. For a singleConfig
, there is one source runtime for each configured config source.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description String
description()
Description of the underlying config source.boolean
isLazy()
If a config source is lazy, itsload()
method always returns empty and you must usenode(String)
methods to retrieve its values.Optional<ConfigNode.ObjectNode>
load()
Load the config source if it is eager (such asParsableSource
orNodeConfigSource
.Optional<ConfigNode>
node(String key)
Get a single config node based on the key.void
onChange(BiConsumer<String,ConfigNode> change)
Change support for a runtime.
-
-
-
Method Detail
-
onChange
void onChange(BiConsumer<String,ConfigNode> change)
Change support for a runtime.- Parameters:
change
- change listener
-
load
Optional<ConfigNode.ObjectNode> load()
Load the config source if it is eager (such asParsableSource
orNodeConfigSource
.For
LazyConfigSource
, this method may return an empty optional (if no key was yet requested), or a node with currently known keys and values.- Returns:
- loaded data
-
node
Optional<ConfigNode> node(String key)
Get a single config node based on the key. Use this method if you are interested in a specific key, as it works both for eager and lazy config sources.- Parameters:
key
- key of the node to retrieve- Returns:
- value on the key, or empty if not present
-
description
String description()
Description of the underlying config source.- Returns:
- description of the source
-
isLazy
boolean isLazy()
If a config source is lazy, itsload()
method always returns empty and you must usenode(String)
methods to retrieve its values.- Returns:
true
if the underlying config source cannot load whole configuration tree
-
-