}
if ( userProperties != null )
{
// 4
interpolator.addValueSource( new PropertiesBasedValueSource( userProperties ) );
}
}
interpolator.addValueSource( new PrefixedPropertiesValueSource(
InterpolationConstants.PROJECT_PROPERTIES_PREFIXES,
project.getProperties(), true ) );
interpolator.addValueSource( new PrefixedObjectValueSource( InterpolationConstants.PROJECT_PREFIXES, project,
true ) );
final Properties settingsProperties = new Properties();
if ( configSource.getLocalRepository() != null )
{
settingsProperties.setProperty( "localRepository", configSource.getLocalRepository().getBasedir() );
settingsProperties.setProperty( "settings.localRepository", configSource.getLocalRepository().getBasedir() );
}
else if ( session != null && session.getSettings() != null )
{
settingsProperties.setProperty( "localRepository", session.getSettings().getLocalRepository() );
settingsProperties.setProperty( "settings.localRepository", configSource.getLocalRepository().getBasedir() );
}
interpolator.addValueSource( new PropertiesBasedValueSource( settingsProperties ) );
Properties commandLineProperties = DefaultAssemblyReader.mergeExecutionPropertiesWithSystemPropertiew( session );
// 7
interpolator.addValueSource( new PropertiesBasedValueSource( commandLineProperties ) );
interpolator.addValueSource( new PrefixedPropertiesValueSource( Collections.singletonList( "env." ),
ENVIRONMENT_VARIABLES, true ) );
interpolator.addPostProcessor( new PathTranslatingPostProcessor( project.getBasedir() ) );
return interpolator;