public abstract class AbstractSiteRenderingMojo extends AbstractSiteDescriptorMojo implements org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.String,java.lang.Object> |
attributes
Additional template properties for rendering the site.
|
private org.codehaus.plexus.PlexusContainer |
container |
protected java.io.File |
generatedSiteDirectory
Directory containing generated documentation.
|
private boolean |
generateProjectInfo
Whether to generate the summary page for project reports: project-info.html.
|
private java.lang.String |
inputEncoding
Specifies the input encoding.
|
protected org.apache.maven.execution.MavenSession |
mavenSession
The current Maven session.
|
private java.util.Map<java.lang.String,java.lang.String> |
moduleExcludes
Module type exclusion mappings
ex:
fml -> **/*-m1.fml (excludes fml files ending in '-m1.fml' recursively)
The configuration looks like this: |
private java.lang.String |
outputEncoding
Specifies the output encoding.
|
private org.apache.maven.reporting.exec.ReportPlugin[] |
reportPlugins
Configuration section used internally by Maven 3.
|
protected java.util.List<org.apache.maven.reporting.MavenReport> |
reports
Reports (Maven 2).
|
private boolean |
saveProcessedContent
Whether to save Velocity processed Doxia content (
*.<ext>.vm )
to ${generatedSiteDirectory}/processed . |
protected org.apache.maven.doxia.siterenderer.Renderer |
siteRenderer
Site renderer.
|
private java.io.File |
templateFile
The location of a Velocity template file to use.
|
private java.io.File |
xdocDirectory
Deprecated.
use the standard m2 directory layout
|
repositories, siteDirectory
i18n, localRepository, project, reactorProjects, siteTool, skip
Constructor and Description |
---|
AbstractSiteRenderingMojo() |
Modifier and Type | Method and Description |
---|---|
protected java.util.Map<java.lang.String,java.util.List<org.apache.maven.reporting.MavenReport>> |
categoriseReports(java.util.Collection<org.apache.maven.reporting.MavenReport> reports)
Go through the collection of reports and put each report into a list for the appropriate category.
|
protected void |
checkInputEncoding() |
void |
contextualize(org.codehaus.plexus.context.Context context) |
protected org.apache.maven.doxia.siterenderer.SiteRenderingContext |
createSiteRenderingContext(java.util.Locale locale) |
protected java.lang.String |
getInputEncoding()
Gets the input files encoding.
|
protected java.lang.String |
getOutputEncoding()
Gets the effective reporting output files encoding.
|
protected java.util.List<org.apache.maven.reporting.exec.MavenReportExecution> |
getReports() |
protected java.util.Map<java.lang.String,org.apache.maven.doxia.siterenderer.DocumentRenderer> |
locateDocuments(org.apache.maven.doxia.siterenderer.SiteRenderingContext context,
java.util.List<org.apache.maven.reporting.exec.MavenReportExecution> reports,
java.util.Locale locale)
Locate every document to be rendered for given locale:
handwritten content, ie Doxia files,
reports,
"Project Information" and "Project Reports" category summaries.
|
protected java.util.Map<java.lang.String,org.apache.maven.reporting.MavenReport> |
locateReports(java.util.List<org.apache.maven.reporting.exec.MavenReportExecution> reports,
java.util.Map<java.lang.String,org.apache.maven.doxia.siterenderer.DocumentRenderer> documents,
java.util.Locale locale)
Go through the list of reports and process each one like this:
Add the report to a map of reports keyed by filename having the report itself as value
If the report is not yet in the map of documents, add it together with a suitable renderer
|
private void |
populateItemRefs(java.util.List<org.apache.maven.doxia.site.decoration.MenuItem> items,
java.util.Locale locale,
java.util.Map<java.lang.String,org.apache.maven.reporting.MavenReport> reportsByOutputName) |
protected void |
populateReportItems(org.apache.maven.doxia.site.decoration.DecorationModel decorationModel,
java.util.Locale locale,
java.util.Map<java.lang.String,org.apache.maven.reporting.MavenReport> reportsByOutputName) |
prepareDecorationModel
getLocales, getMavenVersion, isMaven3OrMore
getLog, getPluginContext, setLog, setPluginContext
@Parameter private java.util.Map<java.lang.String,java.lang.String> moduleExcludes
fml -> **/*-m1.fml
(excludes fml files ending in '-m1.fml' recursively)
The configuration looks like this:
<moduleExcludes> <moduleType>filename1.ext,**/*sample.ext</moduleType> <!-- moduleType can be one of 'apt', 'fml' or 'xdoc'. --> <!-- The value is a comma separated list of --> <!-- filenames or fileset patterns. --> <!-- Here's an example: --> <xdoc>changes.xml,navigation.xml</xdoc> </moduleExcludes>
@Parameter(property="templateFile") private java.io.File templateFile
@Parameter private java.util.Map<java.lang.String,java.lang.Object> attributes
@Component protected org.apache.maven.doxia.siterenderer.Renderer siteRenderer
@Parameter(defaultValue="${reports}", required=true, readonly=true) protected java.util.List<org.apache.maven.reporting.MavenReport> reports
@Parameter(defaultValue="${basedir}/xdocs") private java.io.File xdocDirectory
@Parameter(alias="workingDirectory", defaultValue="${project.build.directory}/generated-site") protected java.io.File generatedSiteDirectory
@Parameter(defaultValue="${session}", readonly=true, required=true) protected org.apache.maven.execution.MavenSession mavenSession
@Parameter(readonly=true) private org.apache.maven.reporting.exec.ReportPlugin[] reportPlugins
Configuration section used internally by Maven 3.
More details available here: http://maven.apache.org/plugins/maven-site-plugin/maven-3.html#Configuration_formats
Note: using this field is not mandatory with Maven 3 as Maven core injects usual
<reporting>
section into this field.
private org.codehaus.plexus.PlexusContainer container
@Parameter(property="generateProjectInfo", defaultValue="true") private boolean generateProjectInfo
@Parameter(property="encoding", defaultValue="${project.build.sourceEncoding}") private java.lang.String inputEncoding
@Parameter(property="outputEncoding", defaultValue="${project.reporting.outputEncoding}") private java.lang.String outputEncoding
@Parameter private boolean saveProcessedContent
*.<ext>.vm
)
to ${generatedSiteDirectory}/processed
.protected java.lang.String getInputEncoding()
null
.protected java.lang.String getOutputEncoding()
null
.public void contextualize(org.codehaus.plexus.context.Context context) throws org.codehaus.plexus.context.ContextException
contextualize
in interface org.codehaus.plexus.personality.plexus.lifecycle.phase.Contextualizable
org.codehaus.plexus.context.ContextException
protected void checkInputEncoding()
protected java.util.List<org.apache.maven.reporting.exec.MavenReportExecution> getReports() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected org.apache.maven.doxia.siterenderer.SiteRenderingContext createSiteRenderingContext(java.util.Locale locale) throws org.apache.maven.plugin.MojoExecutionException, java.io.IOException, org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoExecutionException
java.io.IOException
org.apache.maven.plugin.MojoFailureException
protected java.util.Map<java.lang.String,org.apache.maven.reporting.MavenReport> locateReports(java.util.List<org.apache.maven.reporting.exec.MavenReportExecution> reports, java.util.Map<java.lang.String,org.apache.maven.doxia.siterenderer.DocumentRenderer> documents, java.util.Locale locale)
reports
- A List of MavenReportsdocuments
- A Map of documents, keyed by filenamelocale
- the Locale the reports are processed for.protected java.util.Map<java.lang.String,java.util.List<org.apache.maven.reporting.MavenReport>> categoriseReports(java.util.Collection<org.apache.maven.reporting.MavenReport> reports)
reports
- A Collection of MavenReportsprotected java.util.Map<java.lang.String,org.apache.maven.doxia.siterenderer.DocumentRenderer> locateDocuments(org.apache.maven.doxia.siterenderer.SiteRenderingContext context, java.util.List<org.apache.maven.reporting.exec.MavenReportExecution> reports, java.util.Locale locale) throws java.io.IOException, org.apache.maven.doxia.siterenderer.RendererException
java.io.IOException
org.apache.maven.doxia.siterenderer.RendererException
CategorySummaryDocumentRenderer
protected void populateReportItems(org.apache.maven.doxia.site.decoration.DecorationModel decorationModel, java.util.Locale locale, java.util.Map<java.lang.String,org.apache.maven.reporting.MavenReport> reportsByOutputName)
private void populateItemRefs(java.util.List<org.apache.maven.doxia.site.decoration.MenuItem> items, java.util.Locale locale, java.util.Map<java.lang.String,org.apache.maven.reporting.MavenReport> reportsByOutputName)