You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2016/07/09 12:30:45 UTC

svn commit: r1752004 - in /maven/plugins/trunk/maven-javadoc-plugin: ./ src/main/java/org/apache/maven/plugin/javadoc/ src/main/java/org/apache/maven/plugin/javadoc/resolver/

Author: rfscholte
Date: Sat Jul  9 12:30:45 2016
New Revision: 1752004

URL: http://svn.apache.org/viewvc?rev=1752004&view=rev
Log:
[MJAVADOC-456] Upgrade to Maven3 plugin
Make ResourceResolver a Component, so we don't have to pass 'Requirements' through SourceResolverConfig

Modified:
    maven/plugins/trunk/maven-javadoc-plugin/pom.xml
    maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java
    maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/ResourceResolver.java
    maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/SourceResolverConfig.java

Modified: maven/plugins/trunk/maven-javadoc-plugin/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/pom.xml?rev=1752004&r1=1752003&r2=1752004&view=diff
==============================================================================
--- maven/plugins/trunk/maven-javadoc-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-javadoc-plugin/pom.xml Sat Jul  9 12:30:45 2016
@@ -137,6 +137,11 @@ under the License.
       <artifactId>maven-plugin-annotations</artifactId>
       <scope>provided</scope>
     </dependency>
+    <dependency>
+      <groupId>org.codehaus.plexus</groupId>
+      <artifactId>plexus-component-annotations</artifactId>
+      <scope>provided</scope>
+    </dependency>
 
     <!-- shared -->
     <dependency>
@@ -323,6 +328,19 @@ under the License.
         </configuration>
       </plugin>
       <plugin>
+        <groupId>org.codehaus.plexus</groupId>
+        <artifactId>plexus-component-metadata</artifactId>
+        <executions>
+          <execution>
+            <goals>
+              <goal>generate-metadata</goal>
+              <goal>generate-test-metadata</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      
+      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
         <configuration>

Modified: maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java?rev=1752004&r1=1752003&r2=1752004&view=diff
==============================================================================
--- maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java (original)
+++ maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/AbstractJavadocMojo.java Sat Jul  9 12:30:45 2016
@@ -312,6 +312,9 @@ public abstract class AbstractJavadocMoj
     private ArtifactResolver resolver;
     
     @Component
+    private ResourceResolver resourceResolver;
+    
+    @Component
     private org.apache.maven.shared.artifact.resolve.ArtifactResolver artifactResolver;
     
     @Component
@@ -2300,7 +2303,7 @@ public abstract class AbstractJavadocMoj
 
         try
         {
-            return ResourceResolver.resolveDependencySourcePaths( config );
+            return resourceResolver.resolveDependencySourcePaths( config );
         }
         catch ( final ArtifactResolutionException e )
         {
@@ -2341,10 +2344,9 @@ public abstract class AbstractJavadocMoj
      */
     private SourceResolverConfig getDependencySourceResolverConfig()
     {
-        return configureDependencySourceResolution(
-            new SourceResolverConfig( getLog(), project, localRepository, sourceDependencyCacheDir, resolver, factory,
-                                      artifactMetadataSource, archiverManager ).withReactorProjects(
-                reactorProjects ) );
+        return configureDependencySourceResolution( 
+                        new SourceResolverConfig( project, localRepository,
+                                                  sourceDependencyCacheDir ).withReactorProjects( reactorProjects ) );
     }
 
     /**
@@ -4140,7 +4142,7 @@ public abstract class AbstractJavadocMoj
         if ( dependencyJavadocBundles == null )
         {
             dependencyJavadocBundles =
-                ResourceResolver.resolveDependencyJavadocBundles( getDependencySourceResolverConfig() );
+                resourceResolver.resolveDependencyJavadocBundles( getDependencySourceResolverConfig() );
             if ( dependencyJavadocBundles == null )
             {
                 dependencyJavadocBundles = new ArrayList<JavadocBundle>();

Modified: maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/ResourceResolver.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/ResourceResolver.java?rev=1752004&r1=1752003&r2=1752004&view=diff
==============================================================================
--- maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/ResourceResolver.java (original)
+++ maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/ResourceResolver.java Sat Jul  9 12:30:45 2016
@@ -23,6 +23,7 @@ import static org.codehaus.plexus.util.I
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.DefaultArtifact;
+import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
@@ -38,7 +39,11 @@ import org.apache.maven.plugin.javadoc.o
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.archiver.ArchiverException;
 import org.codehaus.plexus.archiver.UnArchiver;
+import org.codehaus.plexus.archiver.manager.ArchiverManager;
 import org.codehaus.plexus.archiver.manager.NoSuchArchiverException;
+import org.codehaus.plexus.component.annotations.Component;
+import org.codehaus.plexus.component.annotations.Requirement;
+import org.codehaus.plexus.logging.AbstractLogEnabled;
 import org.codehaus.plexus.util.xml.pull.XmlPullParserException;
 
 import java.io.File;
@@ -56,8 +61,20 @@ import java.util.Set;
 /**
  * 
  */
-public final class ResourceResolver
+@Component( role = ResourceResolver.class )
+public final class ResourceResolver extends AbstractLogEnabled
 {
+    @Requirement
+    private ArtifactFactory artifactFactory;
+    
+    @Requirement
+    private ArtifactResolver resolver;
+
+    @Requirement
+    private ArtifactMetadataSource artifactMetadataSource;
+    
+    @Requirement
+    private ArchiverManager archiverManager;
 
     /**
      * The classifier for sources.
@@ -76,16 +93,12 @@ public final class ResourceResolver
         Arrays.asList( AbstractJavadocMojo.JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER,
                        AbstractJavadocMojo.TEST_JAVADOC_RESOURCES_ATTACHMENT_CLASSIFIER );
 
-    private ResourceResolver()
-    {
-    }
-
     /**
      * @param config {@link SourceResolverConfig}
      * @return list of {@link JavadocBundle}.
      * @throws IOException {@link IOException}
      */
-    public static List<JavadocBundle> resolveDependencyJavadocBundles( final SourceResolverConfig config )
+    public List<JavadocBundle> resolveDependencyJavadocBundles( final SourceResolverConfig config )
         throws IOException
     {
         final List<JavadocBundle> bundles = new ArrayList<JavadocBundle>();
@@ -127,7 +140,7 @@ public final class ResourceResolver
      * @throws ArtifactResolutionException {@link ArtifactResolutionException}
      * @throws ArtifactNotFoundException {@link ArtifactNotFoundException}
      */
-    public static List<String> resolveDependencySourcePaths( final SourceResolverConfig config )
+    public List<String> resolveDependencySourcePaths( final SourceResolverConfig config )
         throws ArtifactResolutionException, ArtifactNotFoundException
     {
         final List<String> dirs = new ArrayList<String>();
@@ -217,7 +230,7 @@ public final class ResourceResolver
         return bundles;
     }
 
-    private static List<JavadocBundle> resolveBundlesFromArtifacts( final SourceResolverConfig config,
+    private List<JavadocBundle> resolveBundlesFromArtifacts( final SourceResolverConfig config,
                                                                     final List<Artifact> artifacts )
         throws IOException
     {
@@ -252,16 +265,16 @@ public final class ResourceResolver
         }
         catch ( ArtifactResolutionException e )
         {
-            if ( config.log().isDebugEnabled() )
+            if ( getLogger().isDebugEnabled() )
             {
-                config.log().debug( e.getMessage(), e );
+                getLogger().debug( e.getMessage(), e );
             }
         }
         catch ( ArtifactNotFoundException e )
         {
-            if ( config.log().isDebugEnabled() )
+            if ( getLogger().isDebugEnabled() )
             {
-                config.log().debug( e.getMessage(), e );
+                getLogger().debug( e.getMessage(), e );
             }
         }
         
@@ -304,7 +317,7 @@ public final class ResourceResolver
         return result;
     }
 
-    private static List<String> resolveFromArtifacts( final SourceResolverConfig config,
+    private List<String> resolveFromArtifacts( final SourceResolverConfig config,
                                                       final List<Artifact> artifacts )
         throws ArtifactResolutionException, ArtifactNotFoundException
     {
@@ -331,11 +344,11 @@ public final class ResourceResolver
         return resolveAndUnpack( toResolve, config, SOURCE_VALID_CLASSIFIERS, true );
     }
 
-    private static Artifact createResourceArtifact( final Artifact artifact, final String classifier,
+    private Artifact createResourceArtifact( final Artifact artifact, final String classifier,
                                                     final SourceResolverConfig config )
     {
         final DefaultArtifact a =
-            (DefaultArtifact) config.artifactFactory().createArtifactWithClassifier( artifact.getGroupId(),
+            (DefaultArtifact) artifactFactory.createArtifactWithClassifier( artifact.getGroupId(),
                                                                                      artifact.getArtifactId(),
                                                                                      artifact.getVersion(), "jar",
                                                                                      classifier );
@@ -345,7 +358,7 @@ public final class ResourceResolver
         return a;
     }
 
-    private static List<String> resolveAndUnpack( final List<Artifact> artifacts, final SourceResolverConfig config,
+    private List<String> resolveAndUnpack( final List<Artifact> artifacts, final SourceResolverConfig config,
                                                   final List<String> validClassifiers, final boolean propagateErrors )
         throws ArtifactResolutionException, ArtifactNotFoundException
     {
@@ -356,7 +369,6 @@ public final class ResourceResolver
         final Artifact pomArtifact = config.project().getArtifact();
         final ArtifactRepository localRepo = config.localRepository();
         final List<ArtifactRepository> remoteRepos = config.project().getRemoteArtifactRepositories();
-        final ArtifactMetadataSource metadataSource = config.artifactMetadataSource();
 
         final ArtifactFilter filter = config.filter();
         ArtifactFilter resolutionFilter = null;
@@ -369,12 +381,10 @@ public final class ResourceResolver
             resolutionFilter = new ProjectArtifactFilter( pomArtifact, filter );
         }
 
-        final ArtifactResolver resolver = config.artifactResolver();
-        
         Map<String, Artifact> managed = config.project().getManagedVersionMap();
         
         final ArtifactResolutionResult resolutionResult = resolver.resolveTransitively(
-                artifactSet, pomArtifact, managed, localRepo, remoteRepos, metadataSource, resolutionFilter );
+                artifactSet, pomArtifact, managed, localRepo, remoteRepos, artifactMetadataSource, resolutionFilter );
 
         final List<String> result = new ArrayList<String>( artifacts.size() );
         for ( final Artifact a : (Collection<Artifact>) resolutionResult.getArtifacts() )
@@ -394,7 +404,7 @@ public final class ResourceResolver
 
             try
             {
-                final UnArchiver unArchiver = config.archiverManager().getUnArchiver( a.getType() );
+                final UnArchiver unArchiver = archiverManager.getUnArchiver( a.getType() );
 
                 unArchiver.setDestDirectory( d );
                 unArchiver.setSourceFile( a.getFile() );

Modified: maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/SourceResolverConfig.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/SourceResolverConfig.java?rev=1752004&r1=1752003&r2=1752004&view=diff
==============================================================================
--- maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/SourceResolverConfig.java (original)
+++ maven/plugins/trunk/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/resolver/SourceResolverConfig.java Sat Jul  9 12:30:45 2016
@@ -19,14 +19,9 @@ package org.apache.maven.plugin.javadoc.
  * under the License.
  */
 
-import org.apache.maven.artifact.factory.ArtifactFactory;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
 import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.resolver.ArtifactResolver;
 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
-import org.apache.maven.plugin.logging.Log;
 import org.apache.maven.project.MavenProject;
-import org.codehaus.plexus.archiver.manager.ArchiverManager;
 
 import java.io.File;
 import java.util.List;
@@ -51,40 +46,17 @@ public class SourceResolverConfig
 
     private final ArtifactRepository localRepository;
 
-    private final ArtifactResolver artifactResolver;
-
-    private final ArtifactMetadataSource artifactMetadataSource;
-
-    private final ArchiverManager archiverManager;
-
-    private final ArtifactFactory artifactFactory;
-
-    private final Log log;
-
     /**
-     * @param log {@link Log}
      * @param project {@link MavenProject}
      * @param localRepository {@link ArtifactRepository}
      * @param outputBasedir The output base directory.
-     * @param artifactResolver {@link ArtifactResolver}
-     * @param artifactFactory {@link ArtifactFactory}
-     * @param artifactMetadataSource {@link ArtifactMetadataSource}
-     * @param archiverManager {@link ArchiverManager}
-     */
-    public SourceResolverConfig( final Log log, final MavenProject project, final ArtifactRepository localRepository,
-                                 final File outputBasedir, final ArtifactResolver artifactResolver,
-                                 final ArtifactFactory artifactFactory,
-                                 final ArtifactMetadataSource artifactMetadataSource,
-                                 final ArchiverManager archiverManager )
+     */
+    public SourceResolverConfig( final MavenProject project, final ArtifactRepository localRepository,
+                                 final File outputBasedir )
     {
-        this.log = log;
         this.project = project;
         this.localRepository = localRepository;
         this.outputBasedir = outputBasedir;
-        this.artifactResolver = artifactResolver;
-        this.artifactFactory = artifactFactory;
-        this.artifactMetadataSource = artifactMetadataSource;
-        this.archiverManager = archiverManager;
     }
 
     /**
@@ -198,45 +170,4 @@ public class SourceResolverConfig
     {
         return testSourceIncluded;
     }
-
-    /**
-     * @return {@link #artifactResolver}
-     */
-    public ArtifactResolver artifactResolver()
-    {
-        return artifactResolver;
-    }
-
-    /**
-     * @return {@link #artifactMetadataSource}
-     */
-    public ArtifactMetadataSource artifactMetadataSource()
-    {
-        return artifactMetadataSource;
-    }
-
-    /**
-     * @return {@link #archiverManager}
-     */
-    public ArchiverManager archiverManager()
-    {
-        return archiverManager;
-    }
-
-    /**
-     * @return {@link #artifactFactory}
-     */
-    public ArtifactFactory artifactFactory()
-    {
-        return artifactFactory;
-    }
-    
-    /**
-     * @return {@link #log}
-     */
-    public Log log()
-    {
-        return log;
-    }
-
 }