Package org.codehaus.gmavenplus.mojo
Class AbstractGroovyDocMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.codehaus.gmavenplus.mojo.AbstractGroovyMojo
org.codehaus.gmavenplus.mojo.AbstractGroovySourcesMojo
org.codehaus.gmavenplus.mojo.AbstractGroovyDocMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
- Direct Known Subclasses:
GroovyDocMojo
,GroovyDocTestsMojo
The base GroovyDoc mojo, which all GroovyDoc mojos extend.
- Since:
- 1.0-beta-1
- Author:
- Keegan Witt
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
Enable attaching GroovyDoc annotation.protected String
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.ClasspathResourceManager, for use when creating custom GroovyDoc implementations.protected String[]
Override the default Groovydoc class-level templates.protected String[]
Override the default Groovydoc default top-level templates.protected String[]
Override the default Groovydoc package-level templates.protected boolean
Whether to display the author in the generated GroovyDoc.protected String
The page title.protected String
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.FileOutputTool, for use when creating custom GroovyDoc implementations.protected String
The page footer.protected static final Version
Groovy 1.5.2 version.protected static final Version
Groovy 1.5.8 version.protected static final Version
Groovy 1.6.0 RC-1 version.protected static final Version
Groovy 1.6.0 RC-2 version.protected static final Version
Groovy 3.0.0 alpha-4 version.protected String
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.GroovyDocTool, for use when creating custom GroovyDoc implementations.protected String
The page header.protected IncludeClasspath
What classpath to include.protected String
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.LinkArgument (or org.codehaus.groovy.ant.Groovydoc$LinkArgument for Groovy older than 1.6-RC-2), for use when creating custom GroovyDoc implementations.Links to include in the generated GroovyDoc (key is link href, value is comma-separated packages to use that link).protected String
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.OutputTool, for use when creating custom GroovyDoc implementations.protected File
The HTML file to be used for overview documentation.protected String
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.ResourceManager, for use when creating custom GroovyDoc implementations.protected String
The scope to generate GroovyDoc for.protected boolean
Flag to allow GroovyDoc generation to be skipped.protected String
The encoding of stylesheetFile.protected File
The stylesheet file (absolute path) to copy to output directory (will overwrite default stylesheet.css).protected String
The window title.Fields inherited from class org.codehaus.gmavenplus.mojo.AbstractGroovySourcesMojo
MAIN, TEST
Fields inherited from class org.codehaus.gmavenplus.mojo.AbstractGroovyMojo
classWrangler, GROOVY_1_5_0, GROOVY_SOURCES_PATTERN, JAVA_1_7, JAVA_1_8, JAVA_12, JAVA_SOURCES_PATTERN, minGroovyVersion, mojoExecution, pluginArtifacts, project, session
Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
copyStylesheet
(File outputDirectory) Copies the stylesheet to the specified output directory.protected Object
createGroovyDocTool
(Class<?> groovyDocToolClass, Class<?> resourceManagerClass, Properties docProperties, Object classpathResourceManager, List<String> sourceDirectories, GroovyDocTemplateInfo groovyDocTemplateInfo, List<?> groovyDocLinks) Instantiates a new GroovyDocTool.protected void
doGroovyDocGeneration
(org.apache.maven.shared.model.fileset.FileSet[] sourceDirectories, List<?> classpath, File outputDirectory) Generates the GroovyDoc for the specified sources.protected void
generateGroovyDoc
(File outputDirectory, Class<?> groovyDocToolClass, Class<?> outputToolClass, Object fileOutputTool, List<String> groovyDocSources, Object groovyDocTool) Performs the GroovyDoc generation.setupGroovyDocSources
(org.apache.maven.shared.model.fileset.FileSet[] sourceDirectories, org.apache.maven.shared.model.fileset.util.FileSetManager fileSetManager) Gets the Groovy sources without the Java sources (since the Java sources don't have Javadoc).protected List
<?> Sets up the GroovyDoc links.protected Properties
Sets up the documentation properties.Methods inherited from class org.codehaus.gmavenplus.mojo.AbstractGroovySourcesMojo
getFiles, getFilesets, getTestFiles, getTestFilesets
Methods inherited from class org.codehaus.gmavenplus.mojo.AbstractGroovyMojo
getJavaVersion, getJavaVersionString, groovyAtLeast, groovyIs, groovyNewerThan, groovyOlderThan, groovyVersionSupportsAction, isGroovyIndy, isJavaSupportIndy, isJavaSupportParameters, isJavaSupportPreviewFeatures, logPluginClasspath, setupClassWrangler
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.maven.plugin.Mojo
execute
-
Field Details
-
GROOVY_3_0_0_ALPHA_4
Groovy 3.0.0 alpha-4 version. -
GROOVY_1_6_0_RC2
Groovy 1.6.0 RC-2 version. -
GROOVY_1_6_0_RC1
Groovy 1.6.0 RC-1 version. -
GROOVY_1_5_8
Groovy 1.5.8 version. -
GROOVY_1_5_2
Groovy 1.5.2 version. -
windowTitle
The window title. -
docTitle
The page title. -
header
The page header. -
displayAuthor
@Parameter(defaultValue="true") protected boolean displayAuthorWhether to display the author in the generated GroovyDoc. -
overviewFile
The HTML file to be used for overview documentation. -
stylesheetFile
The stylesheet file (absolute path) to copy to output directory (will overwrite default stylesheet.css). -
stylesheetEncoding
The encoding of stylesheetFile. -
scope
The scope to generate GroovyDoc for. Should be one of:- "public"
- "protected"
- "package"
- "private"
-
links
Links to include in the generated GroovyDoc (key is link href, value is comma-separated packages to use that link).- Since:
- 1.0-beta-2
-
skipGroovyDoc
@Parameter(property="skipGroovydoc", defaultValue="false") protected boolean skipGroovyDocFlag to allow GroovyDoc generation to be skipped.- Since:
- 1.6
-
includeClasspath
What classpath to include. One of- PROJECT_ONLY
- PROJECT_AND_PLUGIN
- PLUGIN_ONLY
- Since:
- 1.8.0
-
defaultDocTemplates
Override the default Groovydoc default top-level templates. Uses Groovy's standard templates by default.- Since:
- 1.10.1
-
defaultPackageTemplates
Override the default Groovydoc package-level templates. Uses Groovy's standard templates by default.- Since:
- 1.10.1
-
defaultClassTemplates
Override the default Groovydoc class-level templates. Uses Groovy's standard templates by default.- Since:
- 1.10.1
-
groovyDocToolClass
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.GroovyDocTool, for use when creating custom GroovyDoc implementations.- Since:
- 1.10.1
-
outputToolClass
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.OutputTool, for use when creating custom GroovyDoc implementations.- Since:
- 1.10.1
-
fileOutputToolClass
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.FileOutputTool, for use when creating custom GroovyDoc implementations.- Since:
- 1.10.1
-
resourceManagerClass
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.ResourceManager, for use when creating custom GroovyDoc implementations.- Since:
- 1.10.1
-
classpathResourceManagerClass
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.ClasspathResourceManager, for use when creating custom GroovyDoc implementations.- Since:
- 1.10.1
-
linkArgumentClass
Allows you to override the class that is normally org.codehaus.groovy.tools.groovydoc.LinkArgument (or org.codehaus.groovy.ant.Groovydoc$LinkArgument for Groovy older than 1.6-RC-2), for use when creating custom GroovyDoc implementations.- Since:
- 1.10.1
-
attachGroovyDocAnnotation
@Parameter(defaultValue="false") protected boolean attachGroovyDocAnnotationEnable attaching GroovyDoc annotation. Requires Groovy 3.0.0 alpha-4 or newer.- Since:
- 1.11.0
-
-
Constructor Details
-
AbstractGroovyDocMojo
public AbstractGroovyDocMojo()
-
-
Method Details
-
setupProperties
Sets up the documentation properties.- Returns:
- the documentation properties
-
setupLinks
protected List<?> setupLinks() throws ClassNotFoundException, InvocationTargetException, IllegalAccessException, InstantiationExceptionSets up the GroovyDoc links.- Returns:
- the GroovyDoc links
- Throws:
ClassNotFoundException
- when a class needed for setting up GroovyDoc links cannot be foundInstantiationException
- when a class needed for setting up GroovyDoc links cannot be instantiatedIllegalAccessException
- when a method needed for setting up GroovyDoc links cannot be accessedInvocationTargetException
- when a reflection invocation needed for setting up GroovyDoc links cannot be completed
-
createGroovyDocTool
protected Object createGroovyDocTool(Class<?> groovyDocToolClass, Class<?> resourceManagerClass, Properties docProperties, Object classpathResourceManager, List<String> sourceDirectories, GroovyDocTemplateInfo groovyDocTemplateInfo, List<?> groovyDocLinks) throws InvocationTargetException, IllegalAccessException, InstantiationException Instantiates a new GroovyDocTool.- Parameters:
groovyDocToolClass
- the GroovyDocTool classresourceManagerClass
- the ResourceManager lassdocProperties
- the documentation propertiesclasspathResourceManager
- the ClasspathResourceManager for the GroovyDocToolsourceDirectories
- the source directories for the GroovyDocToolgroovyDocTemplateInfo
- the GroovyDocTemplateInfo for the GroovyDocToolgroovyDocLinks
- the GroovyDoc links- Returns:
- the GroovyDocTool to use in GroovyDoc generation
- Throws:
InstantiationException
- when a class needed for setting up GroovyDoc tool cannot be instantiatedIllegalAccessException
- when a method needed for setting up GroovyDoc tool cannot be accessedInvocationTargetException
- when a reflection invocation needed for setting up GroovyDoc tool cannot be completed
-
generateGroovyDoc
protected void generateGroovyDoc(File outputDirectory, Class<?> groovyDocToolClass, Class<?> outputToolClass, Object fileOutputTool, List<String> groovyDocSources, Object groovyDocTool) throws InvocationTargetException, IllegalAccessException Performs the GroovyDoc generation.- Parameters:
outputDirectory
- the directory to output the GroovyDoc togroovyDocToolClass
- the GroovyDocTool classoutputToolClass
- the OutputTool classfileOutputTool
- the FileOutputTool to use for GroovyDoc generationgroovyDocSources
- the sources togroovyDocTool
- the GroovyDocTool to use for GroovyDoc generation- Throws:
IllegalAccessException
- when a method needed for GroovyDoc generation cannot be accessedInvocationTargetException
- when a reflection invocation needed for GroovyDoc generation cannot be completed
-
copyStylesheet
Copies the stylesheet to the specified output directory.- Parameters:
outputDirectory
- The output directory to copy the stylesheet to