Class 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.String MAP_CONFIG
      Format 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
      boolean equals​(java.lang.Object o)  
      java.lang.String format()
      The format of the config source, for example this can be envVars, the extension of a file (properties, json, ect).
      Tags getTags()
      A source can have a set of tags that apply to all nodes in the source.
      int hashCode()  
      boolean hasList()
      If this config source provides a list of config values.
      boolean hasStream()
      If this config source has a stream to load from.
      java.util.UUID id()
      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.InputStream loadStream()
      If this config source has a stream, this will return the stream of data.
      java.lang.String name()
      human-readable name for logging.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • 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: ConfigSource
        If this config source has a stream to load from.
        Specified by:
        hasStream in interface ConfigSource
        Returns:
        if this config source has a stream to load from
      • loadStream

        public java.io.InputStream loadStream()
                                       throws GestaltException
        Description copied from interface: ConfigSource
        If this config source has a stream, this will return the stream of data. Or if not supported it will throw an exception.
        Specified by:
        loadStream in interface ConfigSource
        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: ConfigSource
        If this config source provides a list of config values.
        Specified by:
        hasList in interface ConfigSource
        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:
        loadList in interface ConfigSource
        Returns:
        list of pairs of configs.
      • format

        public java.lang.String format()
        Description copied from interface: ConfigSource
        The format of the config source, for example this can be envVars, the extension of a file (properties, json, ect).
        Specified by:
        format in interface ConfigSource
        Returns:
        The format of the config source
      • name

        public java.lang.String name()
        Description copied from interface: ConfigSource
        human-readable name for logging.
        Specified by:
        name in interface ConfigSource
        Returns:
        human-readable name for logging.
      • id

        public java.util.UUID id()
        Description copied from interface: ConfigSource
        Id that represents this source as unique.
        Specified by:
        id in interface ConfigSource
        Returns:
        id
      • getTags

        public Tags getTags()
        Description copied from interface: ConfigSource
        A source can have a set of tags that apply to all nodes in the source.
        Specified by:
        getTags in interface ConfigSource
        Returns:
        tags assigned to the source
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object