- java.lang.Object
-
- org.github.gestalt.config.source.MapConfigSource
-
- All Implemented Interfaces:
ConfigSource
public final class MapConfigSource extends java.lang.Object implements ConfigSource
Allows a user to provide a custom config source as a map. would take the same form as a property file with a key that can be tokenized and a value. db.port = 1234 db.password = password dp.user = notroot
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringMAP_CONFIGFormat for the MapConfigSource.
-
Constructor Summary
Constructors Constructor Description MapConfigSource(java.util.Map<java.lang.String,java.lang.String> customConfig)takes a map of configs.MapConfigSource(java.util.Map<java.lang.String,java.lang.String> customConfig, Tags tags)takes a map of configs.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object o)java.lang.Stringformat()The format of the config source, for example this can be envVars, the extension of a file (properties, json, ect).TagsgetTags()A source can have a set of tags that apply to all nodes in the source.inthashCode()booleanhasList()If this config source provides a list of config values.booleanhasStream()If this config source has a stream to load from.java.util.UUIDid()Id that represents this source as unique.java.util.List<Pair<java.lang.String,java.lang.String>>loadList()Convert the map to a list of pairs of configs.java.io.InputStreamloadStream()If this config source has a stream, this will return the stream of data.java.lang.Stringname()human-readable name for logging.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.github.gestalt.config.source.ConfigSource
failOnErrors
-
-
-
-
Field Detail
-
MAP_CONFIG
public static final java.lang.String MAP_CONFIG
Format for the MapConfigSource.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
MapConfigSource
public MapConfigSource(java.util.Map<java.lang.String,java.lang.String> customConfig)
takes a map of configs.- Parameters:
customConfig- map of configs.
-
MapConfigSource
public MapConfigSource(java.util.Map<java.lang.String,java.lang.String> customConfig, Tags tags)takes a map of configs.- Parameters:
customConfig- map of configs.tags- tags associated with the source
-
-
Method Detail
-
hasStream
public boolean hasStream()
Description copied from interface:ConfigSourceIf this config source has a stream to load from.- Specified by:
hasStreamin interfaceConfigSource- Returns:
- if this config source has a stream to load from
-
loadStream
public java.io.InputStream loadStream() throws GestaltExceptionDescription copied from interface:ConfigSourceIf this config source has a stream, this will return the stream of data. Or if not supported it will throw an exception.- Specified by:
loadStreamin interfaceConfigSource- Returns:
- input stream of data
- Throws:
GestaltException- if there are any IO or if this is an unsupported operation
-
hasList
public boolean hasList()
Description copied from interface:ConfigSourceIf this config source provides a list of config values.- Specified by:
hasListin interfaceConfigSource- Returns:
- if this config source provides a list of config values
-
loadList
public java.util.List<Pair<java.lang.String,java.lang.String>> loadList()
Convert the map to a list of pairs of configs.- Specified by:
loadListin interfaceConfigSource- Returns:
- list of pairs of configs.
-
format
public java.lang.String format()
Description copied from interface:ConfigSourceThe format of the config source, for example this can be envVars, the extension of a file (properties, json, ect).- Specified by:
formatin interfaceConfigSource- Returns:
- The format of the config source
-
name
public java.lang.String name()
Description copied from interface:ConfigSourcehuman-readable name for logging.- Specified by:
namein interfaceConfigSource- Returns:
- human-readable name for logging.
-
id
public java.util.UUID id()
Description copied from interface:ConfigSourceId that represents this source as unique.- Specified by:
idin interfaceConfigSource- Returns:
- id
-
getTags
public Tags getTags()
Description copied from interface:ConfigSourceA source can have a set of tags that apply to all nodes in the source.- Specified by:
getTagsin interfaceConfigSource- Returns:
- tags assigned to the source
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-