Class DefaultMojoAnnotationsScanner
- java.lang.Object
-
- org.codehaus.plexus.logging.AbstractLogEnabled
-
- org.apache.maven.tools.plugin.extractor.annotations.scanner.DefaultMojoAnnotationsScanner
-
- All Implemented Interfaces:
MojoAnnotationsScanner
,org.codehaus.plexus.logging.LogEnabled
@Component(role=MojoAnnotationsScanner.class) public class DefaultMojoAnnotationsScanner extends org.codehaus.plexus.logging.AbstractLogEnabled implements MojoAnnotationsScanner
- Since:
- 3.0
-
-
Field Summary
Fields Modifier and Type Field Description private org.codehaus.plexus.util.reflection.Reflector
reflector
private static java.util.regex.Pattern
SCANNABLE_CLASS
-
Fields inherited from interface org.apache.maven.tools.plugin.extractor.annotations.scanner.MojoAnnotationsScanner
CLASS_LEVEL_ANNOTATIONS, FIELD_LEVEL_ANNOTATIONS, ROLE
-
-
Constructor Summary
Constructors Constructor Description DefaultMojoAnnotationsScanner()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
analyzeClassStream(java.util.Map<java.lang.String,MojoAnnotatedClass> mojoAnnotatedClasses, java.io.InputStream is, org.apache.maven.artifact.Artifact artifact, boolean excludeMojo, java.lang.String source, java.lang.String file)
protected void
analyzeVisitors(MojoClassVisitor mojoClassVisitor)
protected void
populateAnnotationContent(java.lang.Object content, MojoAnnotationVisitor mojoAnnotationVisitor)
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)
java.util.Map<java.lang.String,MojoAnnotatedClass>
scan(MojoAnnotationsScannerRequest request)
Scan classes for mojo annotations.protected java.util.Map<java.lang.String,MojoAnnotatedClass>
scanArchive(java.io.File archiveFile, org.apache.maven.artifact.Artifact artifact, boolean excludeMojo)
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)
-
-
-
Method Detail
-
scan
public java.util.Map<java.lang.String,MojoAnnotatedClass> scan(MojoAnnotationsScannerRequest request) throws ExtractionException
Description copied from interface:MojoAnnotationsScanner
Scan classes for mojo annotations.- Specified by:
scan
in interfaceMojoAnnotationsScanner
- Returns:
- map of mojo-annotated classes keyed by full class name
- Throws:
ExtractionException
-
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, ExtractionException
- Throws:
java.io.IOException
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, ExtractionException
- Parameters:
archiveFile
-artifact
-excludeMojo
- for dependencies, we exclude Mojo annotations found- Returns:
- annotated classes found
- Throws:
java.io.IOException
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, ExtractionException
- Parameters:
classDirectory
-includePatterns
-artifact
-excludeMojo
- for dependencies, we exclude Mojo annotations found- Returns:
- annotated classes found
- Throws:
java.io.IOException
ExtractionException
-
analyzeClassStream
private void analyzeClassStream(java.util.Map<java.lang.String,MojoAnnotatedClass> mojoAnnotatedClasses, java.io.InputStream is, org.apache.maven.artifact.Artifact artifact, boolean excludeMojo, java.lang.String source, java.lang.String file) throws java.io.IOException, ExtractionException
- Throws:
java.io.IOException
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 ExtractionException
- Throws:
ExtractionException
-
-