Class EnvironmentPropertySource

  • All Implemented Interfaces:
    PropertySource

    public class EnvironmentPropertySource
    extends Object
    implements PropertySource
    PropertySource implementation that uses environment variables as a source. All environment variables must begin with LOG4J_ so as not to conflict with other variables. Normalized environment variables follow a scheme like this: log4j2.fooBarProperty would normalize to LOG4J_FOO_BAR_PROPERTY.
    Since:
    2.10.0
    • Constructor Detail

      • EnvironmentPropertySource

        public EnvironmentPropertySource()
    • Method Detail

      • getPriority

        public int getPriority()
        Description copied from interface: PropertySource
        Returns the order in which this PropertySource has priority. A higher value means that the source will be searched later and can be overridden by other property sources.
        Specified by:
        getPriority in interface PropertySource
        Returns:
        priority value
      • forEach

        public void forEach​(BiConsumer<String,​String> action)
        Description copied from interface: PropertySource
        Iterates over all properties and performs an action for each key/value pair.
        Specified by:
        forEach in interface PropertySource
        Parameters:
        action - action to perform on each key/value pair
      • getNormalForm

        public CharSequence getNormalForm​(Iterable<? extends CharSequence> tokens)
        Description copied from interface: PropertySource
        Converts a list of property name tokens into a normal form. For example, a list of tokens such as "foo", "bar", "baz", might be normalized into the property name "log4j2.fooBarBaz".
        Specified by:
        getNormalForm in interface PropertySource
        Parameters:
        tokens - list of property name tokens
        Returns:
        a normalized property name using the given tokens
      • getProperty

        public String getProperty​(String key)
        Description copied from interface: PropertySource
        For PropertySources that cannot iterate over all the potential properties this provides a direct lookup.
        Specified by:
        getProperty in interface PropertySource
        Parameters:
        key - The key to search for.
        Returns:
        The value or null;
      • containsProperty

        public boolean containsProperty​(String key)
        Description copied from interface: PropertySource
        For PropertySources that cannot iterate over all the potential properties this provides a direct lookup.
        Specified by:
        containsProperty in interface PropertySource
        Parameters:
        key - The key to search for.
        Returns:
        The value or null;