You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by br...@apache.org on 2005/06/22 20:29:25 UTC

svn commit: r192970 - in /maven/components/trunk: maven-artifact-ant/ maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/ maven-artifact-manager/src/main/java/org/apache/maven/artifact/resolver/ maven-artifact/src/main/java/org/apache/maven...

Author: brett
Date: Wed Jun 22 11:29:24 2005
New Revision: 192970

URL: http://svn.apache.org/viewcvs?rev=192970&view=rev
Log:
add verbose mode for ant tasks

Added:
    maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java
Modified:
    maven/components/trunk/maven-artifact-ant/sample.build.xml
    maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.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/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolver.java

Modified: maven/components/trunk/maven-artifact-ant/sample.build.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/sample.build.xml?rev=192970&r1=192969&r2=192970&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/sample.build.xml (original)
+++ maven/components/trunk/maven-artifact-ant/sample.build.xml Wed Jun 22 11:29:24 2005
@@ -55,7 +55,7 @@
       <fileset refid="dependency.fileset"/>
     </copy>
 
-    <artifact:dependencies filesetId="my.dependency.fileset">
+    <artifact:dependencies filesetId="my.dependency.fileset" verbose="true">
       <pom refid="maven.project"/>
     </artifact:dependencies>
 

Added: 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=192970&view=auto
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java (added)
+++ maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/AntResolutionListener.java Wed Jun 22 11:29:24 2005
@@ -0,0 +1,90 @@
+package org.apache.maven.artifact.ant;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.resolver.ResolutionListener;
+import org.apache.tools.ant.Project;
+
+/**
+ * Show resolution information in Ant.
+ *
+ * @author <a href="mailto:brett@apache.org">Brett Porter</a>
+ * @version $Id$
+ */
+public class AntResolutionListener
+    implements ResolutionListener
+{
+    private String indent = "";
+
+    private final Project project;
+
+    public AntResolutionListener( Project project )
+    {
+        this.project = project;
+    }
+
+    public void testArtifact( Artifact node )
+    {
+    }
+
+    public void startProcessChildren( Artifact artifact )
+    {
+        indent += "  ";
+    }
+
+    public void endProcessChildren( Artifact artifact )
+    {
+        indent = indent.substring( 2 );
+    }
+
+    public void includeArtifact( Artifact artifact )
+    {
+        project.log( indent + artifact.getId() + " (selected)" );
+    }
+
+    public void omitForNearer( Artifact omitted, Artifact kept )
+    {
+        project.log( indent + omitted.getId() + " (removed - nearer found: " + kept.getVersion() + ")" );
+    }
+
+    public void omitForCycle( Artifact omitted )
+    {
+        project.log( indent + omitted.getId() + " (removed - causes a cycle in the graph)" );
+    }
+
+    public void updateScope( Artifact artifact, String scope )
+    {
+        project.log( indent + artifact.getId() + " (settings scope to: " + scope + ")" );
+    }
+
+    public void manageArtifact( Artifact artifact, Artifact replacement )
+    {
+        String msg = indent + artifact.getId();
+        msg += " (";
+        if ( replacement.getVersion() != null )
+        {
+            msg += "applying version: " + replacement.getVersion() + ";";
+        }
+        if ( replacement.getScope() != null )
+        {
+            msg += "applying scope: " + replacement.getScope();
+        }
+        msg += ")";
+        project.log( msg );
+    }
+}

Modified: maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java?rev=192970&r1=192969&r2=192970&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java (original)
+++ maven/components/trunk/maven-artifact-ant/src/main/java/org/apache/maven/artifact/ant/DependenciesTask.java Wed Jun 22 11:29:24 2005
@@ -32,6 +32,7 @@
 import org.apache.tools.ant.types.Path;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
 import java.util.Set;
@@ -53,6 +54,8 @@
 
     private String filesetId;
 
+    private boolean verbose;
+
     public void execute()
     {
         ArtifactRepository localRepo = createLocalArtifactRepository();
@@ -101,10 +104,16 @@
             Artifact pomArtifact = artifactFactory.createArtifact( pom.getGroupId(), pom.getArtifactId(),
                                                                    pom.getVersion(), null, pom.getPackaging() );
 
+            List listeners = Collections.EMPTY_LIST;
+            if ( verbose )
+            {
+                listeners = Collections.singletonList( new AntResolutionListener( getProject() ) );
+            }
+
             List remoteArtifactRepositories = createRemoteArtifactRepositories( getRemoteRepositories() );
             // TODO: managed dependencies 
             result = resolver.resolveTransitively( artifacts, pomArtifact, remoteArtifactRepositories, localRepo,
-                                                   metadataSource );
+                                                   metadataSource, listeners );
         }
         catch ( ArtifactResolutionException e )
         {
@@ -208,5 +217,10 @@
     public void setFilesetId( String filesetId )
     {
         this.filesetId = filesetId;
+    }
+
+    public void setVerbose( boolean verbose )
+    {
+        this.verbose = verbose;
     }
 }

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=192970&r1=192969&r2=192970&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 Wed Jun 22 11:29:24 2005
@@ -43,12 +43,12 @@
 
     public void startProcessChildren( Artifact artifact )
     {
-        indent += " ";
+        indent += "  ";
     }
 
     public void endProcessChildren( Artifact artifact )
     {
-        indent = indent.substring( 1 );
+        indent = indent.substring( 2 );
     }
 
     public void includeArtifact( Artifact artifact )

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=192970&r1=192969&r2=192970&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 Wed Jun 22 11:29:24 2005
@@ -151,8 +151,6 @@
                                                          ArtifactFilter filter )
         throws ArtifactResolutionException
     {
-        ArtifactResolutionResult artifactResolutionResult;
-
         // TODO: this is simplistic
         List listeners = new ArrayList();
         if ( getLogger().isDebugEnabled() )
@@ -160,6 +158,18 @@
             listeners.add( new DebugResolutionListener( getLogger() ) );
         }
 
+        return resolveTransitively( artifacts, originatingArtifact, managedVersions, localRepository,
+                                    remoteRepositories, source, filter, listeners );
+
+    }
+
+    private ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact,
+                                                          Map managedVersions, ArtifactRepository localRepository,
+                                                          List remoteRepositories, ArtifactMetadataSource source,
+                                                          ArtifactFilter filter, List listeners )
+        throws ArtifactResolutionException
+    {
+        ArtifactResolutionResult artifactResolutionResult;
         artifactResolutionResult = artifactCollector.collect( artifacts, originatingArtifact, managedVersions,
                                                               localRepository, remoteRepositories, source, filter,
                                                               artifactFactory, listeners );
@@ -179,6 +189,15 @@
         throws ArtifactResolutionException
     {
         return resolveTransitively( artifacts, originatingArtifact, localRepository, remoteRepositories, source, null );
+    }
+
+    public ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact,
+                                                         List remoteRepositories, ArtifactRepository localRepository,
+                                                         ArtifactMetadataSource source, List listeners )
+        throws ArtifactResolutionException
+    {
+        return resolveTransitively( artifacts, originatingArtifact, Collections.EMPTY_MAP, localRepository,
+                                    remoteRepositories, source, null, listeners );
     }
 
 }

Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolver.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolver.java?rev=192970&r1=192969&r2=192970&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolver.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/resolver/ArtifactResolver.java Wed Jun 22 11:29:24 2005
@@ -44,6 +44,11 @@
                                                   ArtifactRepository localRepository, ArtifactMetadataSource source )
         throws ArtifactResolutionException;
 
+    ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact, List remoteRepositories,
+                                                  ArtifactRepository localRepository, ArtifactMetadataSource source,
+                                                  List listeners )
+        throws ArtifactResolutionException;
+
     ArtifactResolutionResult resolveTransitively( Set artifacts, Artifact originatingArtifact,
                                                   ArtifactRepository localRepository, List remoteRepositories,
                                                   ArtifactMetadataSource source, ArtifactFilter filter )



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org