use of org.apache.archiva.components.evaluator.ExpressionEvaluator in project archiva by apache.
the class DefaultArchivaConfiguration method initialize.
@PostConstruct
public void initialize() {
// Resolve expressions in the userConfigFilename and altConfigFilename
try {
ExpressionEvaluator expressionEvaluator = new DefaultExpressionEvaluator();
expressionEvaluator.addExpressionSource(new SystemPropertyExpressionSource());
String userConfigFileNameSysProps = System.getProperty(USER_CONFIG_PROPERTY);
if (StringUtils.isNotBlank(userConfigFileNameSysProps)) {
userConfigFilename = userConfigFileNameSysProps;
} else {
String userConfigFileNameEnv = System.getenv(USER_CONFIG_ENVVAR);
if (StringUtils.isNotBlank(userConfigFileNameEnv)) {
userConfigFilename = userConfigFileNameEnv;
} else {
userConfigFilename = expressionEvaluator.expand(userConfigFilename);
}
}
altConfigFilename = expressionEvaluator.expand(altConfigFilename);
loadConfiguration();
handleUpgradeConfiguration();
} catch (IndeterminateConfigurationException | RegistryException e) {
throw new RuntimeException("failed during upgrade from previous version" + e.getMessage(), e);
} catch (EvaluatorException e) {
throw new RuntimeException("Unable to evaluate expressions found in " + "userConfigFilename or altConfigFilename.", e);
}
registry.addChangeListener(this);
}
Aggregations