Class DefaultMojoAnnotationsScanner

  • All Implemented Interfaces:
    MojoAnnotationsScanner, org.codehaus.plexus.logging.LogEnabled

    @Named
    @Singleton
    public class DefaultMojoAnnotationsScanner
    extends org.codehaus.plexus.logging.AbstractLogEnabled
    implements MojoAnnotationsScanner
    Mojo scanner with java annotations.
    Since:
    3.0
    Author:
    Olivier Lamy
    • Field Detail

      • MOJO_V3

        public static final java.lang.String MOJO_V3
      • EXECUTE_V3

        public static final java.lang.String EXECUTE_V3
      • PARAMETER_V3

        public static final java.lang.String PARAMETER_V3
      • COMPONENT_V3

        public static final java.lang.String COMPONENT_V3
    • Constructor Detail

      • DefaultMojoAnnotationsScanner

        public DefaultMojoAnnotationsScanner()
    • Method Detail

      • scan

        protected void scan​(java.util.Map<java.lang.String,​MojoAnnotatedClass> mojoAnnotatedClasses,
                            java.io.File source,
                            java.util.List<java.lang.String> includePatterns,
                            org.apache.maven.artifact.Artifact artifact,
                            boolean excludeMojo)
                     throws java.io.IOException,
                            org.apache.maven.tools.plugin.extractor.ExtractionException
        Throws:
        java.io.IOException
        org.apache.maven.tools.plugin.extractor.ExtractionException
      • scanArchive

        protected java.util.Map<java.lang.String,​MojoAnnotatedClass> scanArchive​(java.io.File archiveFile,
                                                                                       org.apache.maven.artifact.Artifact artifact,
                                                                                       boolean excludeMojo)
                                                                                throws java.io.IOException,
                                                                                       org.apache.maven.tools.plugin.extractor.ExtractionException
        Parameters:
        archiveFile -
        artifact -
        excludeMojo - for dependencies, we exclude Mojo annotations found
        Returns:
        annotated classes found
        Throws:
        java.io.IOException
        org.apache.maven.tools.plugin.extractor.ExtractionException
      • scanDirectory

        protected java.util.Map<java.lang.String,​MojoAnnotatedClass> scanDirectory​(java.io.File classDirectory,
                                                                                         java.util.List<java.lang.String> includePatterns,
                                                                                         org.apache.maven.artifact.Artifact artifact,
                                                                                         boolean excludeMojo)
                                                                                  throws java.io.IOException,
                                                                                         org.apache.maven.tools.plugin.extractor.ExtractionException
        Parameters:
        classDirectory -
        includePatterns -
        artifact -
        excludeMojo - for dependencies, we exclude Mojo annotations found
        Returns:
        annotated classes found
        Throws:
        java.io.IOException
        org.apache.maven.tools.plugin.extractor.ExtractionException
      • populateAnnotationContent

        protected void populateAnnotationContent​(java.lang.Object content,
                                                 MojoAnnotationVisitor mojoAnnotationVisitor)
                                          throws org.codehaus.plexus.util.reflection.ReflectorException
        Throws:
        org.codehaus.plexus.util.reflection.ReflectorException
      • analyzeVisitors

        protected void analyzeVisitors​(MojoClassVisitor mojoClassVisitor)
                                throws org.apache.maven.tools.plugin.extractor.ExtractionException
        Throws:
        org.apache.maven.tools.plugin.extractor.ExtractionException