Class AbstractMavenReportRenderer
- All Implemented Interfaces:
org.apache.maven.reporting.MavenReportRenderer
An abstract class to manage report generation, with many helper methods to ease the job: you just need to implement getTitle() and renderBody().
TODO Later it may be appropriate to create something like a VelocityMavenReportRenderer that could take a velocity template and pipe that through Doxia rather than coding them up like this.
- Since:
- 2.0
- Author:
- Jason van Zyl, Emmanuel Venisse, Vincent Siveton
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.apache.maven.doxia.sink.Sink
The current sink to use -
Constructor Summary
ConstructorsConstructorDescriptionAbstractMavenReportRenderer
(org.apache.maven.doxia.sink.Sink sink) Default constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected static String
createLinkPatternedText
(String text, String href) Create a link pattern text defined by{text, url}
.protected void
Convenience method to wrap section ending in the current sink.protected void
endTable()
Convenience method to wrap the table ending in the current sink.abstract String
getTitle()
protected void
javaScript
(String jsCode) Convenience method to add a Javascript code in the current sink.protected void
Convenience method to wrap a link in the current sink.void
linkPatternedText
(String text) Convenience method to wrap a patterned text in the current link.protected void
Convenience method to wrap a paragraph in the current sink.protected static String
propertiesToString
(Properties props) Convenience method to display aProperties
object as comma separated String.void
render()
protected abstract void
Renderer the body content of the report.protected void
startSection
(String name) Convenience method to wrap section creation in the current sink.protected void
Convenience method to wrap the table start in the current sink.protected void
startTable
(int[] justification, boolean grid) Convenience method to wrap the table start in the current sink.protected void
tableCaption
(String caption) Convenience method to wrap a table caption in the current sink.protected void
Convenience method to wrap a table cell start in the current sink.protected void
Convenience method to wrap a table cell start in the current sink.protected void
tableHeader
(String[] content) Convenience method to wrap a table header row start in the current sink.protected void
tableHeaderCell
(String text) Convenience method to wrap the table header cell start in the current sink.protected void
Convenience method to wrap a table row start in the current sink.protected void
Convenience method to wrap a text in the current sink.protected void
verbatimLink
(String text, String href) Convenience method to wrap a text with a given link href as verbatim style in the current sink.protected void
verbatimText
(String text) Convenience method to wrap a text as verbatim style in the current sink .
-
Field Details
-
sink
protected org.apache.maven.doxia.sink.Sink sinkThe current sink to use
-
-
Constructor Details
-
AbstractMavenReportRenderer
public AbstractMavenReportRenderer(org.apache.maven.doxia.sink.Sink sink) Default constructor.- Parameters:
sink
- the sink to use.
-
-
Method Details
-
render
public void render()- Specified by:
render
in interfaceorg.apache.maven.reporting.MavenReportRenderer
-
startSection
Convenience method to wrap section creation in the current sink. An anchor will be add for the name.- Parameters:
name
- the name of this section, could be null.- See Also:
-
text(String)
Sink.section1()
Sink.sectionTitle1()
Sink.sectionTitle1_()
Sink.section2()
Sink.sectionTitle2()
Sink.sectionTitle2_()
Sink.section3()
Sink.sectionTitle3()
Sink.sectionTitle3_()
Sink.section4()
Sink.sectionTitle4()
Sink.sectionTitle4_()
Sink.section5()
Sink.sectionTitle5()
Sink.sectionTitle5_()
-
endSection
protected void endSection()Convenience method to wrap section ending in the current sink.- Throws:
IllegalStateException
- if too many closing sections.- See Also:
-
Sink.section1_()
Sink.section2_()
Sink.section3_()
Sink.section4_()
Sink.section5_()
-
startTable
protected void startTable()Convenience method to wrap the table start in the current sink.- See Also:
-
Sink.table()
-
startTable
protected void startTable(int[] justification, boolean grid) Convenience method to wrap the table start in the current sink.- Parameters:
justification
- the justification of table cells.grid
- whether to draw a grid around cells.- Since:
- 2.1
- See Also:
-
Sink.table()
Sink.tableRows(int[],boolean)
-
endTable
protected void endTable()Convenience method to wrap the table ending in the current sink.- See Also:
-
Sink.table_()
-
tableHeaderCell
Convenience method to wrap the table header cell start in the current sink.- Parameters:
text
- the text to put in this cell, could be null.- See Also:
-
text(String)
Sink.tableHeaderCell()
Sink.tableHeaderCell_()
-
tableCell
Convenience method to wrap a table cell start in the current sink.The text could be a link patterned text defined by
{text, url}
- Parameters:
text
- the text to put in this cell, could be null.- See Also:
-
tableCell
Convenience method to wrap a table cell start in the current sink.The text could be a link patterned text defined by
{text, url}
If
asHtml
is true, add the text as Html- Parameters:
text
- the text to put in this cell, could be null.asHtml
-true
to add the text as Html,false
otherwise.- See Also:
-
linkPatternedText(String)
Sink.tableCell()
Sink.tableCell_()
Sink.rawText(String)
-
tableRow
Convenience method to wrap a table row start in the current sink.The texts in the
content
could be link patterned texts defined by{text, url}
- Parameters:
content
- an array of text to put in the cells in this row, could be null.- See Also:
-
tableCell(String)
Sink.tableRow()
Sink.tableRow_()
-
tableHeader
Convenience method to wrap a table header row start in the current sink.- Parameters:
content
- an array of text to put in the cells in this row header, could be null.- See Also:
-
tableHeaderCell(String)
Sink.tableRow()
Sink.tableRow_()
-
tableCaption
Convenience method to wrap a table caption in the current sink.- Parameters:
caption
- the caption of the table, could be null.- See Also:
-
text(String)
Sink.tableCaption()
Sink.tableCaption_()
-
paragraph
Convenience method to wrap a paragraph in the current sink.- Parameters:
paragraph
- the paragraph to add, could be null.- See Also:
-
text(String)
Sink.paragraph()
Sink.paragraph_()
-
link
Convenience method to wrap a link in the current sink.- Parameters:
href
- the link to add, cannot be null.name
- the link name.- See Also:
-
text(String)
Sink.link(String)
Sink.link_()
-
text
Convenience method to wrap a text in the current sink.If text is empty or has a
null
value, add the"-"
charater- Parameters:
text
- a text, could be null.- See Also:
-
Sink.text(String)
-
verbatimText
Convenience method to wrap a text as verbatim style in the current sink .- Parameters:
text
- a text, could be null.- See Also:
-
text(String)
Sink.verbatim(boolean)
Sink.verbatim_()
-
verbatimLink
Convenience method to wrap a text with a given link href as verbatim style in the current sink.- Parameters:
text
- a stringhref
- an href could be null- See Also:
-
link(String, String)
verbatimText(String)
Sink.verbatim(boolean)
Sink.verbatim_()
-
javaScript
Convenience method to add a Javascript code in the current sink.- Parameters:
jsCode
- a string of Javascript- See Also:
-
Sink.rawText(String)
-
linkPatternedText
Convenience method to wrap a patterned text in the current link.The text variable should contained this given pattern
{text, url}
to handle the link creation.- Parameters:
text
- a text with link pattern defined.- See Also:
-
text(String)
link(String, String)
applyPattern(String)
-
createLinkPatternedText
Create a link pattern text defined by{text, url}
.This created pattern could be used by the method
linkPatternedText(String)
to handle a text with link.- Parameters:
text
-href
-- Returns:
- a link pattern
- See Also:
-
propertiesToString
Convenience method to display aProperties
object as comma separated String.- Parameters:
props
- the properties to display.- Returns:
- the properties object as comma separated String
-
getTitle
- Specified by:
getTitle
in interfaceorg.apache.maven.reporting.MavenReportRenderer
-
renderBody
protected abstract void renderBody()Renderer the body content of the report.
-