
com.github.sitture.envconfig.EnvironmentVariables Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of env-config Show documentation
Show all versions of env-config Show documentation
A simple utility to manage environment configs in Java-based projects by merging *.properties files with environment variables overrides.
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