Interface MavenReport

All Known Subinterfaces:
MavenMultiPageReport

public interface MavenReport
The basis for a Maven report.
Since:
2.0
  • Field Details

    • ROLE

      static final String ROLE
      Plexus lookup name
    • CATEGORY_PROJECT_INFORMATION

      static final String CATEGORY_PROJECT_INFORMATION
      Category for project information reports
      See Also:
    • CATEGORY_PROJECT_REPORTS

      static final String CATEGORY_PROJECT_REPORTS
      Category for project reports
      See Also:
  • Method Details

    • generate

      void generate(org.apache.maven.doxia.sink.Sink sink, Locale locale) throws MavenReportException
      Generate the report depending the wanted locale.
      Mainly used for external reports like javadoc.
      Parameters:
      sink - the sink to use for the generation.
      locale - the wanted locale to generate the report.
      Throws:
      MavenReportException - if any
    • getOutputPath

      default String getOutputPath()
      Get the path relative to getReportOutputDirectory() 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 will by added by the sink implementation.

      Note: This method won't be default anymore when getOutputName() 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 String getOutputName()
      Deprecated.
      Method name does not properly reflect its purpose. Implement and use getOutputPath() instead.
    • getCategoryName

      String getCategoryName()
      Get the category name for this report.
      Returns:
      the category name of this report. Should be CATEGORY_PROJECT_INFORMATION or CATEGORY_PROJECT_REPORTS
    • getName

      String getName(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

      String getDescription(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(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

      File getReportOutputDirectory()
      Get the shared report output directory.
      Returns:
      the current shared report output directory
    • isExternalReport

      boolean isExternalReport()
      An external report is a report which calls a third party program which generates some reports too. A good example is javadoc tool.
      Returns:
      true if this report is external, false otherwise. Default should be false.
    • canGenerateReport

      boolean canGenerateReport() throws MavenReportException
      Verify some conditions before generating the report.
      Returns:
      true if this report can be generated, false otherwise. Default should be true.
      Throws:
      MavenReportException - if any