1 package org.apache.maven.tools.plugin.extractor.annotations.scanner;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.plugins.annotations.Component;
23 import org.apache.maven.plugins.annotations.Execute;
24 import org.apache.maven.plugins.annotations.Mojo;
25 import org.apache.maven.plugins.annotations.Parameter;
26 import org.apache.maven.tools.plugin.extractor.ExtractionException;
27
28 import java.util.Arrays;
29 import java.util.List;
30 import java.util.Map;
31
32
33
34
35
36 public interface MojoAnnotationsScanner
37 {
38 String ROLE = MojoAnnotationsScanner.class.getName();
39
40 List<String> CLASS_LEVEL_ANNOTATIONS = Arrays.asList( Mojo.class.getName(), Execute.class.getName() );
41
42 List<String> FIELD_LEVEL_ANNOTATIONS = Arrays.asList( Parameter.class.getName(), Component.class.getName() );
43
44
45
46
47
48
49
50
51 Map<String, MojoAnnotatedClass> scan( MojoAnnotationsScannerRequest request )
52 throws ExtractionException;
53 }