Class PropertiesMacro
- java.lang.Object
-
- org.apache.maven.doxia.macro.AbstractMacro
-
- com.puppycrawl.tools.checkstyle.site.PropertiesMacro
-
- All Implemented Interfaces:
org.apache.maven.doxia.logging.LogEnabled,org.apache.maven.doxia.macro.Macro
@Component(role=org.apache.maven.doxia.macro.Macro.class, hint="properties") public class PropertiesMacro extends org.apache.maven.doxia.macro.AbstractMacroA macro that inserts a table of properties for the given checkstyle module.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.io.FilecurrentModuleFileThe file of the current module being processed.private static java.lang.StringcurrentModuleNameThe name of the current module being processed.private static java.lang.StringINDENT_LEVEL_10A newline with 10 spaces of indentation.private static java.lang.StringINDENT_LEVEL_12A newline with 12 spaces of indentation.private static java.lang.StringINDENT_LEVEL_14A newline with 14 spaces of indentation.private static java.lang.StringINDENT_LEVEL_16A newline with 16 spaces of indentation.private static java.lang.StringINDENT_LEVEL_18A newline with 18 spaces of indentation.private static java.lang.StringINDENT_LEVEL_20A newline with 20 spaces of indentation.
-
Constructor Summary
Constructors Constructor Description PropertiesMacro()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static voidconfigureGlobalProperties(java.lang.String modulePath)Configures the global properties for the current module.voidexecute(org.apache.maven.doxia.sink.Sink sink, org.apache.maven.doxia.macro.MacroRequest request)private static voidwriteLinkToToken(org.apache.maven.doxia.sink.Sink sink, java.lang.String document, java.lang.String tokenName)Writes a link to the given token.private static voidwritePropertiesTable(org.apache.maven.doxia.module.xdoc.XdocSink sink)Writes the properties table for the given module.private static voidwritePropertyDefaultValueCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, java.lang.reflect.Field field, java.lang.Object instance)Writes a table cell with the property default value.private static voidwritePropertyDescriptionCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, DetailNode propertyJavadoc)Writes a table cell with the property description.private static voidwritePropertyNameCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName)Writes a table cell with the given property name.private static voidwritePropertyRow(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, DetailNode propertyJavadoc, java.lang.Object instance, DetailNode moduleJavadoc)Writes a table row with 5 columns for the given property - name, description, type, default value, since.private static voidwritePropertySinceVersionCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, DetailNode moduleJavadoc, DetailNode propertyJavadoc)Writes a table cell with the property since version.private static voidwritePropertyTypeCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, java.lang.reflect.Field field, java.lang.Object instance)Writes a table cell with the property type.private static voidwriteTableHeaderCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String text)Writes a table header cell with the given text.private static voidwriteTableHeaderRow(org.apache.maven.doxia.sink.Sink sink)Writes the table header row with 5 columns - name, description, type, default value, since.private static voidwriteTablePropertiesRows(org.apache.maven.doxia.sink.Sink sink)Writes the rows of the table with the 5 columns - name, description, type, default value, since.private static voidwriteTokensList(org.apache.maven.doxia.sink.Sink sink, java.util.List<java.lang.String> tokens, java.lang.String tokenTypesLink)Write a list of tokens with links to the tokenTypesLink file.
-
-
-
Field Detail
-
INDENT_LEVEL_10
private static final java.lang.String INDENT_LEVEL_10
A newline with 10 spaces of indentation.
-
INDENT_LEVEL_12
private static final java.lang.String INDENT_LEVEL_12
A newline with 12 spaces of indentation.
-
INDENT_LEVEL_14
private static final java.lang.String INDENT_LEVEL_14
A newline with 14 spaces of indentation.
-
INDENT_LEVEL_16
private static final java.lang.String INDENT_LEVEL_16
A newline with 16 spaces of indentation.
-
INDENT_LEVEL_18
private static final java.lang.String INDENT_LEVEL_18
A newline with 18 spaces of indentation.
-
INDENT_LEVEL_20
private static final java.lang.String INDENT_LEVEL_20
A newline with 20 spaces of indentation.
-
currentModuleName
private static java.lang.String currentModuleName
The name of the current module being processed.
-
currentModuleFile
private static java.io.File currentModuleFile
The file of the current module being processed.
-
-
Constructor Detail
-
PropertiesMacro
public PropertiesMacro()
-
-
Method Detail
-
execute
public void execute(org.apache.maven.doxia.sink.Sink sink, org.apache.maven.doxia.macro.MacroRequest request) throws org.apache.maven.doxia.macro.MacroExecutionException
- Throws:
org.apache.maven.doxia.macro.MacroExecutionException
-
configureGlobalProperties
private static void configureGlobalProperties(java.lang.String modulePath)
Configures the global properties for the current module.- Parameters:
modulePath- the path of the current module processed.
-
writePropertiesTable
private static void writePropertiesTable(org.apache.maven.doxia.module.xdoc.XdocSink sink) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes the properties table for the given module. Expects that the module has been processed with the ClassAndPropertiesSettersJavadocScraper before calling this method.- Parameters:
sink- the sink to write to.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if an error occurs during writing.
-
writeTableHeaderRow
private static void writeTableHeaderRow(org.apache.maven.doxia.sink.Sink sink)
Writes the table header row with 5 columns - name, description, type, default value, since.- Parameters:
sink- sink to write to.
-
writeTableHeaderCell
private static void writeTableHeaderCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String text)
Writes a table header cell with the given text.- Parameters:
sink- sink to write to.text- the text to write.
-
writeTablePropertiesRows
private static void writeTablePropertiesRows(org.apache.maven.doxia.sink.Sink sink) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes the rows of the table with the 5 columns - name, description, type, default value, since. Each row corresponds to a property of the module.- Parameters:
sink- sink to write to.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if an error occurs during writing.
-
writePropertyRow
private static void writePropertyRow(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, DetailNode propertyJavadoc, java.lang.Object instance, DetailNode moduleJavadoc) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes a table row with 5 columns for the given property - name, description, type, default value, since.- Parameters:
sink- sink to write to.propertyName- the name of the property.propertyJavadoc- the Javadoc of the property.instance- the instance of the module.moduleJavadoc- the Javadoc of the module.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if an error occurs during writing.
-
writePropertyNameCell
private static void writePropertyNameCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName)
Writes a table cell with the given property name.- Parameters:
sink- sink to write to.propertyName- the name of the property.
-
writePropertyDescriptionCell
private static void writePropertyDescriptionCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, DetailNode propertyJavadoc) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes a table cell with the property description.- Parameters:
sink- sink to write to.propertyName- the name of the property.propertyJavadoc- the Javadoc of the property containing the description.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if an error occurs during retrieval of the description.
-
writePropertyTypeCell
private static void writePropertyTypeCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, java.lang.reflect.Field field, java.lang.Object instance) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes a table cell with the property type.- Parameters:
sink- sink to write to.propertyName- the name of the property.field- the field of the property.instance- the instance of the module.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if link to the property_types.html file cannot be constructed.
-
writeTokensList
private static void writeTokensList(org.apache.maven.doxia.sink.Sink sink, java.util.List<java.lang.String> tokens, java.lang.String tokenTypesLink) throws org.apache.maven.doxia.macro.MacroExecutionException
Write a list of tokens with links to the tokenTypesLink file.- Parameters:
sink- sink to write to.tokens- the list of tokens to write.tokenTypesLink- the link to the token types file.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if link to the tokenTypesLink file cannot be constructed.
-
writeLinkToToken
private static void writeLinkToToken(org.apache.maven.doxia.sink.Sink sink, java.lang.String document, java.lang.String tokenName) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes a link to the given token.- Parameters:
sink- sink to write to.document- the document to link to.tokenName- the name of the token.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if link to the document file cannot be constructed.
-
writePropertyDefaultValueCell
private static void writePropertyDefaultValueCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, java.lang.reflect.Field field, java.lang.Object instance) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes a table cell with the property default value.- Parameters:
sink- sink to write to.propertyName- the name of the property.field- the field of the property.instance- the instance of the module.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if an error occurs during retrieval of the default value.
-
writePropertySinceVersionCell
private static void writePropertySinceVersionCell(org.apache.maven.doxia.sink.Sink sink, java.lang.String propertyName, DetailNode moduleJavadoc, DetailNode propertyJavadoc) throws org.apache.maven.doxia.macro.MacroExecutionException
Writes a table cell with the property since version.- Parameters:
sink- sink to write to.propertyName- the name of the property.moduleJavadoc- the Javadoc of the module.propertyJavadoc- the Javadoc of the property containing the since version.- Throws:
org.apache.maven.doxia.macro.MacroExecutionException- if an error occurs during retrieval of the since version.
-
-