From ca9c92eaab2ef282eb076e520b40e5b3ce93813d Mon Sep 17 00:00:00 2001 From: Herve Boutemy Date: Sat, 3 May 2014 16:19:49 +0000 Subject: [PATCH] improved javadoc git-svn-id: https://svn.apache.org/repos/asf/maven/plugin-tools/trunk@1592237 13f79535-47bb-0310-9956-ffa450edef68 --- .../JavaAnnotationsMojoDescriptorExtractor.java | 12 ++++-------- .../scanner/DefaultMojoAnnotationsScanner.java | 1 + .../annotations/scanner/MojoAnnotationsScanner.java | 7 +++++++ 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java index 2eac28e..8b17b9c 100644 --- a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java +++ b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/JavaAnnotationsMojoDescriptorExtractor.java @@ -69,6 +69,7 @@ import java.util.TreeSet; /** * JavaMojoDescriptorExtractor, a MojoDescriptor extractor to read descriptors from java classes with annotations. + * Notice that source files are also parsed to get description, since and deprecation information. * * @author Olivier Lamy * @since 3.0 @@ -185,13 +186,9 @@ public class JavaAnnotationsMojoDescriptorExtractor private boolean isMojoAnnnotatedClassCandidate( MojoAnnotatedClass mojoAnnotatedClass ) { - if ( mojoAnnotatedClass == null ) - { - return false; - } - return ( !mojoAnnotatedClass.getComponents().isEmpty() || !mojoAnnotatedClass.getParameters().isEmpty() - || mojoAnnotatedClass.getExecute() != null || mojoAnnotatedClass.getMojo() != null ); - + return mojoAnnotatedClass != null + && !( mojoAnnotatedClass.getComponents().isEmpty() && mojoAnnotatedClass.getParameters().isEmpty() + && mojoAnnotatedClass.getExecute() == null && mojoAnnotatedClass.getMojo() == null ); } protected Map discoverClassesFromSourcesJar( Artifact artifact, PluginToolsRequest request, @@ -612,7 +609,6 @@ public class JavaAnnotationsMojoDescriptorExtractor protected ExecuteAnnotationContent findExecuteInParentHierarchy( MojoAnnotatedClass mojoAnnotatedClass, Map mojoAnnotatedClasses ) { - if ( mojoAnnotatedClass.getExecute() != null ) { return mojoAnnotatedClass.getExecute(); diff --git a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/DefaultMojoAnnotationsScanner.java b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/DefaultMojoAnnotationsScanner.java index 516e294..acd813c 100644 --- a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/DefaultMojoAnnotationsScanner.java +++ b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/DefaultMojoAnnotationsScanner.java @@ -143,6 +143,7 @@ public class DefaultMojoAnnotationsScanner { IOUtil.close( archiveStream ); } + return mojoAnnotatedClasses; } diff --git a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/MojoAnnotationsScanner.java b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/MojoAnnotationsScanner.java index 7ea94c7..6ab8b60 100644 --- a/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/MojoAnnotationsScanner.java +++ b/maven-plugin-tools-annotations/src/main/java/org/apache/maven/tools/plugin/annotations/scanner/MojoAnnotationsScanner.java @@ -41,6 +41,13 @@ public interface MojoAnnotationsScanner final List FIELD_LEVEL_ANNOTATIONS = Arrays.asList( Parameter.class.getName(), Component.class.getName() ); + /** + * Scan classes for mojo annotations. + * + * @param request + * @return map of mojo-annotated classes keyed by full class name + * @throws ExtractionException + */ Map scan( MojoAnnotationsScannerRequest request ) throws ExtractionException; }