diff options
Diffstat (limited to 'lib/ant/etc/checkstyle/checkstyle-xdoc.xsl')
-rw-r--r-- | lib/ant/etc/checkstyle/checkstyle-xdoc.xsl | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/lib/ant/etc/checkstyle/checkstyle-xdoc.xsl b/lib/ant/etc/checkstyle/checkstyle-xdoc.xsl new file mode 100644 index 000000000..d23ac0e04 --- /dev/null +++ b/lib/ant/etc/checkstyle/checkstyle-xdoc.xsl @@ -0,0 +1,129 @@ +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" + xmlns:lxslt="http://xml.apache.org/xslt" + xmlns:redirect="org.apache.xalan.lib.Redirect" + extension-element-prefixes="redirect"> + +<!-- + Copyright 2003-2004 The Apache Software Foundation + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--> + + <xsl:output method="xml" indent="yes"/> + <xsl:decimal-format decimal-separator="." grouping-separator="," /> + + <xsl:param name="output.dir" select="'.'"/> + <xsl:param name="basedir" select="'.'"/> + + <xsl:template match="checkstyle"> + <document> + <properties> + <title>Checkstyle Audit</title> + </properties> + + <body> + <xsl:apply-templates select="." mode="summary"/> + <!-- File list part --> + <xsl:apply-templates select="." mode="filelist"/> + <xsl:apply-templates select="file[count(error) != 0]"/> + </body> + </document> + </xsl:template> + + <xsl:template match="checkstyle" mode="filelist"> + <section name="Files"> + <table> + <tr> + <th>Name</th> + <th>Errors</th> + </tr> + <xsl:apply-templates select="file[count(error) != 0]" mode="filelist"> + <xsl:sort select="count(error)" order="descending" data-type="number"/> + </xsl:apply-templates> + </table> + </section> + </xsl:template> + + <xsl:template match="file" mode="filelist"> + <tr> + <xsl:call-template name="alternated-row"/> + <td nowrap="nowrap"> + <a> + <xsl:attribute name="href"> + <xsl:text>files</xsl:text><xsl:value-of select="substring-after(@name, $basedir)"/><xsl:text>.html</xsl:text> + </xsl:attribute> + <xsl:value-of select="substring-after(@name, $basedir)"/> + </a> + </td> + <td><xsl:value-of select="count(error)"/></td> + </tr> + </xsl:template> + + <xsl:template match="file"> + <redirect:write file="{$output.dir}/files{substring-after(@name, $basedir)}.xml"> + <document> + <properties> + <title>Checkstyle Audit</title> + </properties> + + <body> + <section name="Details for {substring-after(@name, $basedir)}"> + <table> + <tr> + <th>Error Description</th> + <th>Line</th> + </tr> + <xsl:for-each select="error"> + <tr> + <xsl:call-template name="alternated-row"/> + <td><a title="{@source}"><xsl:value-of select="@message"/></a></td> + <td><xsl:value-of select="@line"/></td> + </tr> + </xsl:for-each> + </table> + </section> + </body> + </document> + </redirect:write> + </xsl:template> + + <xsl:template match="checkstyle" mode="summary"> + <section name="Summary"> + <xsl:variable name="fileCount" select="count(file)"/> + <xsl:variable name="errorCount" select="count(file/error)"/> + <xsl:variable name="fileErrorCount" select="count(file[count(error) != 0])"/> + <table> + <tr> + <th>Files</th> + <th>Files With Errors</th> + <th>Errors</th> + </tr> + <tr> + <xsl:call-template name="alternated-row"/> + <td><xsl:value-of select="$fileCount"/></td> + <td><xsl:value-of select="$fileErrorCount"/></td> + <td><xsl:value-of select="$errorCount"/></td> + </tr> + </table> + </section> + </xsl:template> + + <xsl:template name="alternated-row"> + <xsl:attribute name="class"> + <xsl:if test="position() mod 2 = 1">oddrow</xsl:if> + <xsl:if test="position() mod 2 = 0">evenrow</xsl:if> + </xsl:attribute> + </xsl:template> +</xsl:stylesheet> + |