Class JavaAnnotationsMojoDescriptorExtractor

java.lang.Object
org.codehaus.plexus.logging.AbstractLogEnabled
org.apache.maven.tools.plugin.extractor.annotations.JavaAnnotationsMojoDescriptorExtractor
All Implemented Interfaces:
org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor, org.codehaus.plexus.logging.LogEnabled

@Named("java-annotations") @Singleton 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
  • Field Details

  • Constructor Details

    • JavaAnnotationsMojoDescriptorExtractor

      public JavaAnnotationsMojoDescriptorExtractor()
  • Method Details

    • getName

      public String getName()
      Specified by:
      getName in interface org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor
    • isDeprecated

      public boolean isDeprecated()
      Specified by:
      isDeprecated in interface org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor
    • getGroupKey

      public org.apache.maven.tools.plugin.extractor.GroupKey getGroupKey()
      Specified by:
      getGroupKey in interface org.apache.maven.tools.plugin.extractor.MojoDescriptorExtractor
    • execute

      public 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
    • populateDataFromJavadoc

      protected void populateDataFromJavadoc(com.thoughtworks.qdox.JavaProjectBuilder javaProjectBuilder, Map<String,MojoAnnotatedClass> mojoAnnotatedClasses, Map<String,com.thoughtworks.qdox.model.JavaClass> javaClassesMap, org.apache.maven.tools.plugin.javadoc.JavadocLinkGenerator linkGenerator)
      from sources scan to get @since and @deprecated and description of classes and fields.
    • discoverClasses

      protected Map<String,com.thoughtworks.qdox.model.JavaClass> discoverClasses(com.thoughtworks.qdox.JavaProjectBuilder builder)
    • extendJavaProjectBuilderWithSourcesJar

      protected void extendJavaProjectBuilderWithSourcesJar(com.thoughtworks.qdox.JavaProjectBuilder builder, org.apache.maven.artifact.Artifact artifact, org.apache.maven.tools.plugin.PluginToolsRequest request, String classifier) throws org.apache.maven.tools.plugin.extractor.ExtractionException
      Throws:
      org.apache.maven.tools.plugin.extractor.ExtractionException
    • findClassWithExecuteAnnotationInParentHierarchy

      protected MojoAnnotatedClass findClassWithExecuteAnnotationInParentHierarchy(MojoAnnotatedClass mojoAnnotatedClass, Map<String,MojoAnnotatedClass> mojoAnnotatedClasses)
    • getParametersParentHierarchy

      protected Map<String,ParameterAnnotationContent> getParametersParentHierarchy(MojoAnnotatedClass mojoAnnotatedClass, Map<String,MojoAnnotatedClass> mojoAnnotatedClasses)
    • getParametersParent

      protected List<ParameterAnnotationContent> getParametersParent(MojoAnnotatedClass mojoAnnotatedClass, List<ParameterAnnotationContent> parameterAnnotationContents, Map<String,MojoAnnotatedClass> mojoAnnotatedClasses)
    • getComponentsParentHierarchy

      protected Map<String,ComponentAnnotationContent> getComponentsParentHierarchy(MojoAnnotatedClass mojoAnnotatedClass, Map<String,MojoAnnotatedClass> mojoAnnotatedClasses)
    • getComponentParent

      protected List<ComponentAnnotationContent> getComponentParent(MojoAnnotatedClass mojoAnnotatedClass, List<ComponentAnnotationContent> componentAnnotationContents, Map<String,MojoAnnotatedClass> mojoAnnotatedClasses)
    • getFromProjectReferences

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