in maven2-server-impl/src/org/jetbrains/idea/maven/server/embedder/MyFileProfileActivator.java [57:110]
public boolean isActive(Profile profile )
{
Activation activation = profile.getActivation();
ActivationFile actFile = activation.getFile();
if ( actFile != null )
{
// check if the file exists, if it does then the profile will be active
String fileString = actFile.getExists();
RegexBasedInterpolator interpolator = new RegexBasedInterpolator();
try
{
interpolator.addValueSource( new EnvarBasedValueSource() );
}
catch ( IOException e )
{
// ignored
}
interpolator.addValueSource( new MapBasedValueSource( System.getProperties() ) );
try
{
if ( StringUtils.isNotEmpty(fileString) )
{
fileString = StringUtils.replace( interpolator.interpolate( fileString, "" ), "\\", "/" );
return fileExists(fileString);
}
// check if the file is missing, if it is then the profile will be active
fileString = actFile.getMissing();
if ( StringUtils.isNotEmpty( fileString ) )
{
fileString = StringUtils.replace( interpolator.interpolate( fileString, "" ), "\\", "/" );
return !fileExists(fileString);
}
}
catch ( InterpolationException e )
{
if ( logger.isDebugEnabled() )
{
logger.debug( "Failed to interpolate missing file location for profile activator: " + fileString, e );
}
else
{
logger.warn( "Failed to interpolate missing file location for profile activator: " + fileString + ". Run in debug mode (-X) for more information." );
}
}
}
return false;
}