All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.sitture.envconfig.EnvironmentVariables Maven / Gradle / Ivy

package com.github.sitture.envconfig;

import java.util.HashMap;
import java.util.Map;
import org.apache.commons.configuration2.Configuration;
import org.apache.commons.configuration2.MapConfiguration;
import org.apache.commons.configuration2.SystemConfiguration;

class EnvironmentVariables {

    private final Configuration systemConfiguration;
    private final Configuration environmentConfiguration;

    EnvironmentVariables() {
        systemConfiguration = new SystemConfiguration();
        environmentConfiguration = new MapConfiguration(getEnvMap());
    }

    private static Map getEnvMap() {
        final Map envMap = new HashMap<>();
        System.getenv().forEach((key, value) -> {
            envMap.put(key, value);
            envMap.put(EnvConfigUtils.getProcessedPropertyKey(key), value);
        });
        return envMap;
    }

    protected Configuration getSystemConfiguration() {
        return systemConfiguration;
    }

    protected Configuration getEnvironmentConfiguration() {
        return environmentConfiguration;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy