You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2005/10/08 18:31:00 UTC

svn commit: r307309 - in /maven/components/trunk: maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/ maven-artifact-manager/src/main/java/org/apache/maven/artifact/deployer/ maven-artifact-manager/src/main/java/org/apache/maven/artifact/re...

Author: brett
Date: Sat Oct  8 09:30:28 2005
New Revision: 307309

URL: http://svn.apache.org/viewcvs?rev=307309&view=rev
Log:
PR: MNG-616
improve version logging, use artifact.toString for textual logging

Modified:
    maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java
    maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
    maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java
    maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
    maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java
    maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java
    maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionListener.java
    maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java
    maven/components/trunk/maven-plugins/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java
    maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
    maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
    maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java

Modified: maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java (original)
+++ maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java Sat Oct  8 09:30:28 2005
@@ -18,6 +18,7 @@
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.resolver.ResolutionListener;
+import org.apache.maven.artifact.versioning.VersionRange;
 import org.apache.tools.ant.Project;
 
 /**
@@ -54,39 +55,45 @@
 
     public void includeArtifact( Artifact artifact )
     {
-        project.log( indent + artifact.getId() + " (selected)" );
+        project.log( indent + artifact + " (selected)" );
     }
 
     public void omitForNearer( Artifact omitted, Artifact kept )
     {
-        project.log( indent + omitted.getId() + " (removed - nearer found: " + kept.getVersion() + ")" );
+        project.log( indent + omitted + " (removed - nearer found: " + kept.getVersion() + ")" );
     }
 
     public void omitForCycle( Artifact omitted )
     {
-        project.log( indent + omitted.getId() + " (removed - causes a cycle in the graph)" );
+        project.log( indent + omitted + " (removed - causes a cycle in the graph)" );
     }
 
     public void updateScope( Artifact artifact, String scope )
     {
-        project.log( indent + artifact.getId() + " (setting scope to: " + scope + ")" );
+        project.log( indent + artifact + " (setting scope to: " + scope + ")" );
     }
 
     public void updateScopeCurrentPom( Artifact artifact, String scope )
     {
-        project.log( indent + artifact.getId() + " (not setting scope to: " + scope + "; local scope " +
-            artifact.getScope() + " wins)" );
+        project.log( indent + artifact + " (not setting scope to: " + scope + "; local scope " + artifact.getScope() +
+            " wins)" );
     }
 
     public void selectVersionFromRange( Artifact artifact )
     {
-        project.log( indent + artifact.getId() + " (setting version to: " + artifact.getVersion() + " from range: " +
+        project.log( indent + artifact + " (setting version to: " + artifact.getVersion() + " from range: " +
             artifact.getVersionRange() + ")" );
     }
 
+    public void restrictRange( Artifact artifact, Artifact replacement, VersionRange newRange )
+    {
+        project.log( indent + artifact + " (range restricted from: " + artifact.getVersionRange() + " and: " +
+            replacement.getVersionRange() + " to: " + newRange + " )" );
+    }
+
     public void manageArtifact( Artifact artifact, Artifact replacement )
     {
-        String msg = indent + artifact.getId();
+        String msg = indent + artifact;
         msg += " (";
         if ( replacement.getVersion() != null )
         {

Modified: maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java (original)
+++ maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/deployer/DefaultArtifactDeployer.java Sat Oct  8 09:30:28 2005
@@ -59,10 +59,10 @@
     {
         if ( !wagonManager.isOnline() )
         {
-            getLogger().warn( "System is offline. Cannot deploy artifact: " + artifact.getId() + "." );
+            getLogger().warn( "System is offline. Cannot deploy artifact: " + artifact + "." );
             return;
         }
-        
+
         try
         {
             transformationManager.transformForDeployment( artifact, deploymentRepository, localRepository );

Modified: maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java (original)
+++ maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DebugResolutionListener.java Sat Oct  8 09:30:28 2005
@@ -17,6 +17,7 @@
  */
 
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.versioning.VersionRange;
 import org.codehaus.plexus.logging.Logger;
 
 /**
@@ -53,39 +54,45 @@
 
     public void includeArtifact( Artifact artifact )
     {
-        logger.debug( indent + artifact.getId() + " (selected for " + artifact.getScope() + ")" );
+        logger.debug( indent + artifact + " (selected for " + artifact.getScope() + ")" );
     }
 
     public void omitForNearer( Artifact omitted, Artifact kept )
     {
-        logger.debug( indent + omitted.getId() + " (removed - nearer found: " + kept.getVersion() + ")" );
+        logger.debug( indent + omitted + " (removed - nearer found: " + kept.getVersion() + ")" );
     }
 
     public void omitForCycle( Artifact omitted )
     {
-        logger.debug( indent + omitted.getId() + " (removed - causes a cycle in the graph)" );
+        logger.debug( indent + omitted + " (removed - causes a cycle in the graph)" );
     }
 
     public void updateScopeCurrentPom( Artifact artifact, String scope )
     {
-        logger.debug( indent + artifact.getId() + " (not setting scope to: " + scope + "; local scope " +
-            artifact.getScope() + " wins)" );
+        logger.debug( indent + artifact + " (not setting scope to: " + scope + "; local scope " + artifact.getScope() +
+            " wins)" );
     }
 
     public void updateScope( Artifact artifact, String scope )
     {
-        logger.debug( indent + artifact.getId() + " (setting scope to: " + scope + ")" );
+        logger.debug( indent + artifact + " (setting scope to: " + scope + ")" );
     }
 
     public void selectVersionFromRange( Artifact artifact )
     {
-        logger.debug( indent + artifact.getId() + " (setting version to: " + artifact.getVersion() + " from range: " +
+        logger.debug( indent + artifact + " (setting version to: " + artifact.getVersion() + " from range: " +
             artifact.getVersionRange() + ")" );
     }
 
+    public void restrictRange( Artifact artifact, Artifact replacement, VersionRange newRange )
+    {
+        logger.debug( indent + artifact + " (range restricted from: " + artifact.getVersionRange() + " and: " +
+            replacement.getVersionRange() + " to: " + newRange + " )" );
+    }
+
     public void manageArtifact( Artifact artifact, Artifact replacement )
     {
-        String msg = indent + artifact.getId();
+        String msg = indent + artifact;
         msg += " (";
         if ( replacement.getVersion() != null )
         {

Modified: maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java (original)
+++ maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java Sat Oct  8 09:30:28 2005
@@ -83,7 +83,7 @@
                 if ( !systemFile.exists() )
                 {
                     throw new ArtifactNotFoundException(
-                        "System artifact: " + artifact.getId() + " not found in path: " + systemFile, artifact );
+                        "System artifact: " + artifact + " not found in path: " + systemFile, artifact );
                 }
                 else
                 {
@@ -117,7 +117,7 @@
                 {
                     if ( !wagonManager.isOnline() )
                     {
-                        getLogger().debug( "System is offline. Cannot resolve artifact: " + artifact.getId() + "." );
+                        getLogger().debug( "System is offline. Cannot resolve artifact: " + artifact + "." );
 
                         return;
                     }

Modified: maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java (original)
+++ maven/components/trunk/maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/WarningResolutionListener.java Sat Oct  8 09:30:28 2005
@@ -17,6 +17,7 @@
  */
 
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.versioning.VersionRange;
 import org.codehaus.plexus.logging.Logger;
 
 import java.util.HashSet;
@@ -69,7 +70,7 @@
         // TODO: better way than static? this might hide messages in a reactor
         if ( !ignoredArtifacts.contains( artifact ) )
         {
-            logger.warn( "\n\tArtifact " + artifact.getId() + " retains local scope '" + artifact.getScope() +
+            logger.warn( "\n\tArtifact " + artifact + " retains local scope '" + artifact.getScope() +
                 "' overriding broader scope '" + scope + "'\n" +
                 "\tgiven by a dependency. If this is not intended, modify or remove the local scope.\n" );
             ignoredArtifacts.add( artifact );
@@ -85,6 +86,10 @@
     }
 
     public void selectVersionFromRange( Artifact artifact )
+    {
+    }
+
+    public void restrictRange( Artifact artifact, Artifact replacement, VersionRange newRange )
     {
     }
 }

Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/DefaultArtifactCollector.java Sat Oct  8 09:30:28 2005
@@ -148,7 +148,14 @@
                     {
                         // TODO: shouldn't need to double up on this work, only done for simplicity of handling recommended
                         // version but the restriction is identical
-                        previous.getArtifact().setVersionRange( previousRange.restrict( currentRange ) );
+                        VersionRange newRange = previousRange.restrict( currentRange );
+                        // TODO: ick. this forces the OCE that should have come from the previous call. It is still correct
+                        if ( newRange.isSelectedVersionKnown( previous.getArtifact() ) )
+                        {
+                            fireEvent( ResolutionListener.RESTRICT_RANGE, listeners, node, previous.getArtifact(),
+                                       newRange );
+                        }
+                        previous.getArtifact().setVersionRange( newRange );
                         node.getArtifact().setVersionRange( currentRange.restrict( previousRange ) );
                     }
 
@@ -318,6 +325,12 @@
 
     private void fireEvent( int event, List listeners, ResolutionNode node, Artifact replacement )
     {
+        fireEvent( event, listeners, node, replacement, null );
+    }
+
+    private void fireEvent( int event, List listeners, ResolutionNode node, Artifact replacement,
+                            VersionRange newRange )
+    {
         for ( Iterator i = listeners.iterator(); i.hasNext(); )
         {
             ResolutionListener listener = (ResolutionListener) i.next();
@@ -337,7 +350,12 @@
                     listener.includeArtifact( node.getArtifact() );
                     break;
                 case ResolutionListener.OMIT_FOR_NEARER:
-                    listener.omitForNearer( node.getArtifact(), replacement );
+                    String version = node.getArtifact().getVersion();
+                    String replacementVersion = replacement.getVersion();
+                    if ( version != null ? !version.equals( replacementVersion ) : replacementVersion != null )
+                    {
+                        listener.omitForNearer( node.getArtifact(), replacement );
+                    }
                     break;
                 case ResolutionListener.OMIT_FOR_CYCLE:
                     listener.omitForCycle( node.getArtifact() );
@@ -353,6 +371,13 @@
                     break;
                 case ResolutionListener.SELECT_VERSION_FROM_RANGE:
                     listener.selectVersionFromRange( node.getArtifact() );
+                    break;
+                case ResolutionListener.RESTRICT_RANGE:
+                    if ( node.getArtifact().getVersionRange().hasRestrictions() ||
+                        replacement.getVersionRange().hasRestrictions() )
+                    {
+                        listener.restrictRange( node.getArtifact(), replacement, newRange );
+                    }
                     break;
                 default:
                     throw new IllegalStateException( "Unknown event: " + event );

Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionListener.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionListener.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionListener.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ResolutionListener.java Sat Oct  8 09:30:28 2005
@@ -1,6 +1,7 @@
 package org.apache.maven.artifact.resolver;
 
 import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.versioning.VersionRange;
 
 /*
 * Copyright 2001-2005 The Apache Software Foundation.
@@ -48,6 +49,8 @@
 
     int SELECT_VERSION_FROM_RANGE = 10;
 
+    int RESTRICT_RANGE = 11;
+
     void testArtifact( Artifact node );
 
     void startProcessChildren( Artifact artifact );
@@ -67,4 +70,6 @@
     void updateScopeCurrentPom( Artifact artifact, String scope );
 
     void selectVersionFromRange( Artifact artifact );
+
+    void restrictRange( Artifact artifact, Artifact replacement, VersionRange newRange );
 }

Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/VersionRange.java Sat Oct  8 09:30:28 2005
@@ -221,11 +221,17 @@
                 }
             }
         }
-        else
+        else if ( recommendedVersion != null )
         {
             // no range, so the recommended version is valid
             version = recommendedVersion;
         }
+/* TODO: should throw this immediately, but need artifact
+        else
+        {
+            throw new OverConstrainedVersionException( "Restricting incompatible version ranges" );
+        }
+*/
 
         return new VersionRange( version, restrictions );
     }
@@ -500,5 +506,10 @@
             }
         }
         return matched;
+    }
+
+    public boolean hasRestrictions()
+    {
+        return !restrictions.isEmpty() && recommendedVersion == null;
     }
 }

Modified: maven/components/trunk/maven-plugins/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-plugins/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java (original)
+++ maven/components/trunk/maven-plugins/maven-ear-plugin/src/main/java/org/apache/maven/plugin/ear/EarMojo.java Sat Oct  8 09:30:28 2005
@@ -130,7 +130,7 @@
                 if ( !sourceFile.isFile() )
                 {
                     throw new MojoExecutionException( "Cannot copy a directory: " + sourceFile.getAbsolutePath() +
-                        "; Did you package/install " + module.getArtifact().getId() + "?" );
+                        "; Did you package/install " + module.getArtifact() + "?" );
                 }
 
                 FileUtils.copyFile( module.getArtifact().getFile(), destinationFile );

Modified: maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java (original)
+++ maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/PrepareReleaseMojo.java Sat Oct  8 09:30:28 2005
@@ -636,7 +636,7 @@
 
                 message.append( "    " );
 
-                message.append( artifact.getId() );
+                message.append( artifact );
 
                 message.append( "\n" );
             }
@@ -901,8 +901,8 @@
 
                             if ( ArtifactUtils.isSnapshot( version ) )
                             {
-                                throw new MojoExecutionException( "Unresolved SNAPSHOT version of: " +
-                                    artifact.getId() + ". Cannot proceed with release." );
+                                throw new MojoExecutionException(
+                                    "Unresolved SNAPSHOT version of: " + artifact + ". Cannot proceed with release." );
                             }
                         }
 
@@ -1155,7 +1155,7 @@
                 }
                 catch ( ArtifactMetadataRetrievalException e )
                 {
-                    throw new MojoExecutionException( "Cannot resolve " + artifactUsage + ": " + artifact.getId(), e );
+                    throw new MojoExecutionException( "Cannot resolve " + artifactUsage + ": " + artifact, e );
                 }
             }
 

Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Sat Oct  8 09:30:28 2005
@@ -322,8 +322,7 @@
 
         Model model = findModelFromRepository( artifact, remoteArtifactRepositories, localRepository, allowStubModel );
 
-        return build( "Artifact [" + artifact.getId() + "]", model, localRepository, remoteArtifactRepositories, null,
-                      null );
+        return build( "Artifact [" + artifact + "]", model, localRepository, remoteArtifactRepositories, null, null );
     }
 
     private Model findModelFromRepository( Artifact artifact, List remoteArtifactRepositories,
@@ -451,7 +450,7 @@
 
     private Model createStubModel( Artifact projectArtifact )
     {
-        getLogger().warn( "\n  ***** Using defaults for missing POM " + projectArtifact.getId() + " *****\n" );
+        getLogger().warn( "\n  ***** Using defaults for missing POM " + projectArtifact + " *****\n" );
 
         Model model = new Model();
         model.setModelVersion( "4.0.0" );

Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java?rev=307309&r1=307308&r2=307309&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java Sat Oct  8 09:30:28 2005
@@ -109,7 +109,7 @@
                 }
                 catch ( InvalidModelException e )
                 {
-                    getLogger().warn( "POM for: \'" + pomArtifact.getId() +
+                    getLogger().warn( "POM for: \'" + pomArtifact +
                         "\' does not appear to be valid. Its will be ignored for artifact resolution." );
 
                     project = null;