in common/src/main/java/com/microsoft/alm/helpers/SettingsHelper.java [65:94]
private SettingsHelper() {
final String path = getSettingsFolderName();
final File folder = new File(path);
logger.info("Searching for {}", Path.combine(folder.getAbsolutePath(), FILE_NAME));
if (folder.exists()) {
final File potential = new File(folder, FILE_NAME);
if (potential.exists() && potential.isFile() && potential.canRead()) {
logger.info("Found setting file, trying to load properties from {}", potential.getAbsolutePath());
try {
properties.load(new FileReader(potential));
logger.info("Properties loaded.");
final boolean setSystemEnv = !(Boolean.valueOf(properties.getProperty(DO_NOT_SET_SYSTEM_ENV)));
if (setSystemEnv) {
// oauth2-useragent reads System properties. If we want to propagate any values downstream,
// we must load our properties into System.properties
for (final Map.Entry<Object, Object> entry : properties.entrySet()) {
if (entry.getKey() instanceof String && entry.getValue() instanceof String) {
logger.info("Setting System property {} to {}", entry.getKey(), entry.getValue());
System.setProperty(entry.getKey().toString(), entry.getValue().toString());
}
}
}
} catch (Throwable t) {
logger.warn("Failed to load properties.", t);
properties.clear();
}
}
}
}