Class ReportPage

java.lang.Object
org.jacoco.report.internal.html.page.ReportPage
All Implemented Interfaces:
ILinkable
Direct Known Subclasses:
NodePage, SessionsPage

public abstract class ReportPage extends Object implements ILinkable
Base class for HTML page generators. It renders the page skeleton with the breadcrumb, the title and the footer. Every report page is part of a hierarchy and has a parent page (except the root page).
  • Field Details

  • Constructor Details

    • ReportPage

      protected ReportPage(ReportPage parent, ReportOutputFolder folder, IHTMLReportContext context)
      Creates a new report page.
      Parameters:
      parent - optional hierarchical parent
      folder - base folder to create this report in
      context - settings context
  • Method Details

    • isRootPage

      protected final boolean isRootPage()
      Checks whether this is the root page of the report.
      Returns:
      true if this is the root page
    • render

      public void render() throws IOException
      Renders this page's content and optionally additional pages. This method must be called at most once.
      Throws:
      IOException - if the page can't be written
    • head

      protected void head(HTMLElement head) throws IOException
      Creates the elements within the head element.
      Parameters:
      head - head tag of the page
      Throws:
      IOException - in case of IO problems with the report writer
    • body

      private void body(HTMLElement body) throws IOException
      Throws:
      IOException
    • getOnload

      protected String getOnload()
      Returns the onload handler for this page.
      Returns:
      handler or null
    • infoLinks

      protected void infoLinks(HTMLElement span) throws IOException
      Inserts additional links on the top right corner.
      Parameters:
      span - parent element
      Throws:
      IOException - in case of IO problems with the report writer
    • footer

      private void footer(HTMLElement body) throws IOException
      Throws:
      IOException
    • getFileName

      protected abstract String getFileName()
      Specifies the local file name of this page.
      Returns:
      local file name
    • content

      protected abstract void content(HTMLElement body) throws IOException
      Creates the actual content of the page.
      Parameters:
      body - body tag of the page
      Throws:
      IOException - in case of IO problems with the report writer
    • getLink

      public final String getLink(ReportOutputFolder base)
      Description copied from interface: ILinkable
      Returns a relative link to the item that works from the given base folder.
      Specified by:
      getLink in interface ILinkable
      Parameters:
      base - folder where the link should be inserted
      Returns:
      relative link or null if the target does not exist