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;