Apache James uses the mailetdocs-maven-plugin in order to build the mailet/matcher documentation.
This plugin scans the sources, finds mailet and matcher, then generates the documentation entry from its javadoc.
Nowadays all mailet and matchers are included.
This is a problem because we have some test specifics mailets/matcher that are not usable as part of James but still are reported as part of the documentation.
(Examples includes james-project/server/container/guice/custom-mailets/src/main/java/org/apache/james/transport/mailets/CustomMailet.java and the like, used to generate a separate library containing custom mailets/matchers in order to test custom mailets/matchers instanciation)
The goal of this ticket is to add a @ExcludeFromDocumentation annotation as part of the mailet-api. The plugin would skip such annotated mailets/matcher.
In order to to this:
Create a new @ExcludeFromDocumentation in the mailet API
Annotate with it classes in james-project/server/container/guice/custom-mailets
Modify james-project/mailet/mailetdocs-maven-plugin/src/main/java/org/apache/james/mailet/DefaultDescriptorsExtractor.java in order to skip classes annotated as excluded.
Add a test in james-project/mailet/mailetdocs-maven-plugin/src/test/java/org/apache/james/mailet/DefaultDescriptorsExtractorTest.java showing excluded mailets are not listed (add an excluded mailet in that package, then assert in a new test that it is not reported).
Apache James uses the
mailetdocs-maven-plugin
in order to build the mailet/matcher documentation.This plugin scans the sources, finds mailet and matcher, then generates the documentation entry from its javadoc.
Nowadays all mailet and matchers are included.
This is a problem because we have some test specifics mailets/matcher that are not usable as part of James but still are reported as part of the documentation.
(Examples includes james-project/server/container/guice/custom-mailets/src/main/java/org/apache/james/transport/mailets/CustomMailet.java and the like, used to generate a separate library containing custom mailets/matchers in order to test custom mailets/matchers instanciation)
The goal of this ticket is to add a
@ExcludeFromDocumentation
annotation as part of the mailet-api. The plugin would skip such annotated mailets/matcher.In order to to this:
@ExcludeFromDocumentation
in the mailet APIjames-project/server/container/guice/custom-mailets
See https://issues.apache.org/jira/browse/JAMES-2325