-
- All Known Implementing Classes:
EtcdConfigSourceProvider,GitConfigSourceProvider
public interface ConfigSourceProviderJava service loader service to provide a config source based on meta configuration.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Tcreate(String type, Config metaConfig)Create an instance of the meta configurable using the provided meta configuration.default List<ConfigSource>createMulti(String type, Config metaConfig)Create a list of configuration sources from a single configuration.Set<String>supported()Return a set of supported types.booleansupports(String type)Return true if this provider supports the type of meta-configurable object.
-
-
-
Method Detail
-
createMulti
default List<ConfigSource> createMulti(String type, Config metaConfig)
Create a list of configuration sources from a single configuration.This method is called (only) when the meta configuration property
multi-sourceis set totrue.Example: for classpath config source, we may want to read all instances of the resource on classpath.
- Parameters:
type- type of the config sourcemetaConfig- meta configuration of the config source- Returns:
- a list of config sources, at least one MUST be returned, so we can correctly validate optional/mandatory sources.
-
supports
boolean supports(String type)
Return true if this provider supports the type of meta-configurable object.- Parameters:
type- type that is supported (such asfileforConfigSourcemeta configurable)- Returns:
trueif this provider can create instances of the type
-
create
T create(String type, Config metaConfig)
Create an instance of the meta configurable using the provided meta configuration.- Parameters:
type- type of the meta configurablemetaConfig- meta configuration- Returns:
- meta configurable configured from the metaConfig
-
-