Package org.apache.maven.reporting
Interface MavenReport
-
- All Known Subinterfaces:
MavenMultiPageReport
public interface MavenReportThe basis for a Maven report: a report that the Maven Site Plugin renders into the project site. Report plugins usually extendAbstractMavenReportfrom Maven Reporting Implementation instead of implementing this interface directly.- Since:
- 2.0
- Author:
- Brett Porter, Emmanuel Venisse, Vincent Siveton
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCATEGORY_PROJECT_INFORMATIONCategory for project information reportsstatic java.lang.StringCATEGORY_PROJECT_REPORTSCategory for project reportsstatic java.lang.StringROLEPlexus lookup name
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Deprecated Methods Modifier and Type Method Description booleancanGenerateReport()Verify some conditions before generating the report, for example that there is something to report on.voidgenerate(org.apache.maven.doxia.sink.Sink sink, java.util.Locale locale)Generate the report for the given locale.default voidgenerate(org.apache.maven.doxia.sink.Sink sink, org.apache.maven.doxia.sink.SinkFactory sinkFactory, java.util.Locale locale)Generate the report for the given locale, possibly as several pages.java.lang.StringgetCategoryName()Get the category name for this report.java.lang.StringgetDescription(java.util.Locale locale)Get the localized report description.java.lang.StringgetName(java.util.Locale locale)Get the localized report name.java.lang.StringgetOutputName()Deprecated.Method name does not properly reflect its purpose.default java.lang.StringgetOutputPath()Get the path relative togetReportOutputDirectory()where the report's main output file will be written.java.io.FilegetReportOutputDirectory()Get the shared report output directory.booleanisExternalReport()Tell whether this report writes its own output files instead of rendering into the sink, as the Javadoc report does when it calls the javadoc tool.voidsetReportOutputDirectory(java.io.File outputDirectory)Set a new shared report output directory.
-
-
-
Field Detail
-
ROLE
static final java.lang.String ROLE
Plexus lookup name
-
CATEGORY_PROJECT_INFORMATION
static final java.lang.String CATEGORY_PROJECT_INFORMATION
Category for project information reports- See Also:
- Constant Field Values
-
CATEGORY_PROJECT_REPORTS
static final java.lang.String CATEGORY_PROJECT_REPORTS
Category for project reports- See Also:
- Constant Field Values
-
-
Method Detail
-
generate
void generate(org.apache.maven.doxia.sink.Sink sink, java.util.Locale locale) throws MavenReportExceptionGenerate the report for the given locale.A report that renders a single page implements only this method. A report that renders several pages also overrides
generate(Sink, SinkFactory, Locale).- Parameters:
sink- the sink to use for the generation.locale- the wanted locale to generate the report.- Throws:
MavenReportException- if any
-
generate
default void generate(org.apache.maven.doxia.sink.Sink sink, org.apache.maven.doxia.sink.SinkFactory sinkFactory, java.util.Locale locale) throws MavenReportExceptionGenerate the report for the given locale, possibly as several pages.A report that renders a single page ignores
sinkFactory. A report that renders several pages usessinkFactoryto create the sinks for its sub-pages. By default, this method renders a single page withgenerate(Sink, Locale).- Parameters:
sink- the sink to use for the main page.sinkFactory- the factory for sub-page sinks, ornullwhen sub-pages cannot be created.locale- the wanted locale to generate the report.- Throws:
MavenReportException- if any- Since:
- 4.1.0
-
getOutputPath
default java.lang.String getOutputPath()
Get the path relative togetReportOutputDirectory()where the report's main output file will be written. The last component is the name of the file without any extension. The actual output extension is added by the sink implementation.Note: This method won't be
defaultanymore whengetOutputName()is removed. You are advised to implement it as soon as possible.- Returns:
- the relative output path of this report
- Since:
- 4.0.0
-
getOutputName
@Deprecated java.lang.String getOutputName()
Deprecated.Method name does not properly reflect its purpose. Implement and usegetOutputPath()instead.Get the name of the report's main output file, without any extension.- Returns:
- the output name of this report
-
getCategoryName
java.lang.String getCategoryName()
Get the category name for this report.- Returns:
- the category name of this report. Should be
CATEGORY_PROJECT_INFORMATIONorCATEGORY_PROJECT_REPORTS
-
getName
java.lang.String getName(java.util.Locale locale)
Get the localized report name.- Parameters:
locale- the wanted locale to return the report's name.- Returns:
- the name of this report
-
getDescription
java.lang.String getDescription(java.util.Locale locale)
Get the localized report description.- Parameters:
locale- the wanted locale to return the report's description.- Returns:
- the description of this report
-
setReportOutputDirectory
void setReportOutputDirectory(java.io.File outputDirectory)
Set a new shared report output directory. This directory may contain the output of other reports as well.- Parameters:
outputDirectory- the new shared report output directory
-
getReportOutputDirectory
java.io.File getReportOutputDirectory()
Get the shared report output directory.- Returns:
- the current shared report output directory
-
isExternalReport
boolean isExternalReport()
Tell whether this report writes its own output files instead of rendering into the sink, as the Javadoc report does when it calls the javadoc tool. The Maven Site Plugin does not decorate an external report with the site skin.- Returns:
trueif this report is external,falseotherwise. Most reports returnfalse.
-
canGenerateReport
boolean canGenerateReport() throws MavenReportExceptionVerify some conditions before generating the report, for example that there is something to report on. The Maven Site Plugin skips a report that returnsfalse.- Returns:
trueif this report can be generated,falseotherwise.- Throws:
MavenReportException- if any
-
-