You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by jd...@apache.org on 2008/07/10 17:53:30 UTC
svn commit: r675619 - in /maven/components/branches/maven-2.0.x:
maven-project/src/main/java/org/apache/maven/profiles/activation/
maven-settings/ maven-settings/src/main/java/org/apache/maven/settings/
Author: jdcasey
Date: Thu Jul 10 08:53:29 2008
New Revision: 675619
URL: http://svn.apache.org/viewvc?rev=675619&view=rev
Log:
switch to using plexus-interpolation directly to avoid hidden imports.
Modified:
maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
maven/components/branches/maven-2.0.x/maven-settings/pom.xml
maven/components/branches/maven-2.0.x/maven-settings/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
Modified: maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java?rev=675619&r1=675618&r2=675619&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java (original)
+++ maven/components/branches/maven-2.0.x/maven-project/src/main/java/org/apache/maven/profiles/activation/FileProfileActivator.java Thu Jul 10 08:53:29 2008
@@ -24,15 +24,21 @@
import org.apache.maven.model.Activation;
import org.apache.maven.model.ActivationFile;
import org.apache.maven.model.Profile;
+import org.codehaus.plexus.interpolation.EnvarBasedValueSource;
+import org.codehaus.plexus.interpolation.InterpolationException;
+import org.codehaus.plexus.interpolation.MapBasedValueSource;
+import org.codehaus.plexus.interpolation.RegexBasedInterpolator;
+import org.codehaus.plexus.logging.LogEnabled;
+import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.StringUtils;
-import org.codehaus.plexus.util.interpolation.EnvarBasedValueSource;
-import org.codehaus.plexus.util.interpolation.MapBasedValueSource;
-import org.codehaus.plexus.util.interpolation.RegexBasedInterpolator;
public class FileProfileActivator
extends DetectedProfileActivator
+ implements LogEnabled
{
+ private Logger logger;
+
protected boolean canDetectActivation( Profile profile )
{
return profile.getActivation() != null && profile.getActivation().getFile() != null;
@@ -60,22 +66,41 @@
}
interpolator.addValueSource( new MapBasedValueSource( System.getProperties() ) );
- if ( StringUtils.isNotEmpty( fileString ) )
+ try
{
- fileString = StringUtils.replace( interpolator.interpolate( fileString, "" ), "\\", "/" );
- return FileUtils.fileExists( fileString );
+ if ( StringUtils.isNotEmpty( fileString ) )
+ {
+ fileString = StringUtils.replace( interpolator.interpolate( fileString, "" ), "\\", "/" );
+ return FileUtils.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 !FileUtils.fileExists( fileString );
+ }
}
-
- // check if the file is missing, if it is then the profile will be active
- fileString = actFile.getMissing();
-
- if ( StringUtils.isNotEmpty( fileString ) )
+ catch ( InterpolationException e )
{
- fileString = StringUtils.replace( interpolator.interpolate( fileString, "" ), "\\", "/" );
- return !FileUtils.fileExists( fileString );
+ 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;
}
+
+ public void enableLogging( Logger logger )
+ {
+ this.logger = logger;
+ }
}
Modified: maven/components/branches/maven-2.0.x/maven-settings/pom.xml
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-settings/pom.xml?rev=675619&r1=675618&r2=675619&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-settings/pom.xml (original)
+++ maven/components/branches/maven-2.0.x/maven-settings/pom.xml Thu Jul 10 08:53:29 2008
@@ -47,6 +47,10 @@
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
+ <artifactId>plexus-interpolation</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
</dependency>
<dependency>
Modified: maven/components/branches/maven-2.0.x/maven-settings/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java
URL: http://svn.apache.org/viewvc/maven/components/branches/maven-2.0.x/maven-settings/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java?rev=675619&r1=675618&r2=675619&view=diff
==============================================================================
--- maven/components/branches/maven-2.0.x/maven-settings/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java (original)
+++ maven/components/branches/maven-2.0.x/maven-settings/src/main/java/org/apache/maven/settings/DefaultMavenSettingsBuilder.java Thu Jul 10 08:53:29 2008
@@ -20,13 +20,13 @@
*/
import org.apache.maven.settings.io.xpp3.SettingsXpp3Reader;
+import org.codehaus.plexus.interpolation.EnvarBasedValueSource;
+import org.codehaus.plexus.interpolation.RegexBasedInterpolator;
import org.codehaus.plexus.logging.AbstractLogEnabled;
import org.codehaus.plexus.personality.plexus.lifecycle.phase.Initializable;
import org.codehaus.plexus.util.IOUtil;
import org.codehaus.plexus.util.ReaderFactory;
import org.codehaus.plexus.util.StringUtils;
-import org.codehaus.plexus.util.interpolation.EnvarBasedValueSource;
-import org.codehaus.plexus.util.interpolation.RegexBasedInterpolator;
import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
import java.io.File;