Class JavaAnnotationsMojoDescriptorExtractor

  • All Implemented Interfaces:
    org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor, org.codehaus.plexus.logging.LogEnabled

    @Component(role=org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor.class,
               hint="java-annotations")
    public class JavaAnnotationsMojoDescriptorExtractor
    extends org.codehaus.plexus.logging.AbstractLogEnabled
    implements org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor
    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.
    Since:
    3.0
    Author:
    Olivier Lamy
    • Constructor Detail

      • JavaAnnotationsMojoDescriptorExtractor

        public JavaAnnotationsMojoDescriptorExtractor()
    • Method Detail

      • execute

        public java.util.List<org.apache.maven.plugin.descriptor.MojoDescriptor> execute​(org.apache.maven.tools.plugin.PluginToolsRequest request)
                                                                                  throws org.apache.maven.tools.plugin.extractor.ExtractionException,
                                                                                         org.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
        Specified by:
        execute in interface org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor
        Throws:
        org.apache.maven.tools.plugin.extractor.ExtractionException
        org.apache.maven.plugin.descriptor.InvalidPluginDescriptorException
      • discoverClassesFromSourcesJar

        protected java.util.Map<java.lang.String,​com.thoughtworks.qdox.model.JavaClass> discoverClassesFromSourcesJar​(org.apache.maven.artifact.Artifact artifact,
                                                                                                                            org.apache.maven.tools.plugin.PluginToolsRequest request,
                                                                                                                            java.lang.String classifier)
                                                                                                                     throws org.apache.maven.tools.plugin.extractor.ExtractionException
        Throws:
        org.apache.maven.tools.plugin.extractor.ExtractionException
      • populateDataFromJavadoc

        protected void populateDataFromJavadoc​(java.util.Map<java.lang.String,​MojoAnnotatedClass> mojoAnnotatedClasses,
                                               java.util.Map<java.lang.String,​com.thoughtworks.qdox.model.JavaClass> javaClassesMap)
        from sources scan to get @since and @deprecated and description of classes and fields.
        Parameters:
        mojoAnnotatedClasses -
        javaClassesMap -
      • discoverClasses

        protected java.util.Map<java.lang.String,​com.thoughtworks.qdox.model.JavaClass> discoverClasses​(org.apache.maven.tools.plugin.PluginToolsRequest request)
      • discoverClasses

        protected java.util.Map<java.lang.String,​com.thoughtworks.qdox.model.JavaClass> discoverClasses​(java.lang.String encoding,
                                                                                                              org.apache.maven.project.MavenProject project)
      • discoverClasses

        protected java.util.Map<java.lang.String,​com.thoughtworks.qdox.model.JavaClass> discoverClasses​(java.lang.String encoding,
                                                                                                              java.util.List<java.io.File> sourceDirectories,
                                                                                                              java.util.Set<org.apache.maven.artifact.Artifact> artifacts)
      • getFromProjectReferences

        protected org.apache.maven.project.MavenProject getFromProjectReferences​(org.apache.maven.artifact.Artifact artifact,
                                                                                 org.apache.maven.project.MavenProject project)