carbidecpp20devenv/plugins/org.apache.ant_1.7.0.v200803061910/etc/checkstyle/checkstyle-xdoc.xsl
author cawthron
Wed, 18 Mar 2009 17:21:00 -0500
changeset 1 82d1d1de1a01
permissions -rw-r--r--
import Carbide.c++
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     1
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     2
    xmlns:lxslt="http://xml.apache.org/xslt"
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     3
    xmlns:redirect="org.apache.xalan.lib.Redirect"
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     4
    extension-element-prefixes="redirect">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     5
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     6
<!--
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     7
    Copyright  2003-2004 The Apache Software Foundation
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     8
   
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     9
     Licensed under the Apache License, Version 2.0 (the "License");
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    10
     you may not use this file except in compliance with the License.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    11
     You may obtain a copy of the License at
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    12
   
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    13
         http://www.apache.org/licenses/LICENSE-2.0
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    14
   
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    15
     Unless required by applicable law or agreed to in writing, software
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    16
     distributed under the License is distributed on an "AS IS" BASIS,
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    17
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    18
     See the License for the specific language governing permissions and
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    19
     limitations under the License.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    20
   
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    21
-->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    22
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    23
    <xsl:output method="xml" indent="yes"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    24
    <xsl:decimal-format decimal-separator="." grouping-separator="," />
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    25
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    26
    <xsl:param name="output.dir" select="'.'"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    27
    <xsl:param name="basedir" select="'.'"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    28
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    29
    <xsl:template match="checkstyle">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    30
      <document>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    31
        <properties>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    32
          <title>Checkstyle Audit</title>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    33
        </properties>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    34
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    35
        <body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    36
          <xsl:apply-templates select="." mode="summary"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    37
          <!-- File list part -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    38
          <xsl:apply-templates select="." mode="filelist"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    39
          <xsl:apply-templates select="file[count(error) != 0]"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    40
        </body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    41
      </document>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    42
    </xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    43
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    44
    <xsl:template match="checkstyle" mode="filelist">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    45
      <section name="Files">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    46
        <table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    47
            <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    48
                <th>Name</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    49
                <th>Errors</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    50
            </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    51
            <xsl:apply-templates select="file[count(error) != 0]" mode="filelist">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    52
                <xsl:sort select="count(error)" order="descending" data-type="number"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    53
            </xsl:apply-templates>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    54
        </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    55
      </section>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    56
    </xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    57
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    58
    <xsl:template match="file" mode="filelist">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    59
        <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    60
            <xsl:call-template name="alternated-row"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    61
            <td nowrap="nowrap">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    62
                <a>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    63
                    <xsl:attribute name="href">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    64
                        <xsl:text>files</xsl:text><xsl:value-of select="substring-after(@name, $basedir)"/><xsl:text>.html</xsl:text>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    65
                    </xsl:attribute>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    66
                    <xsl:value-of select="substring-after(@name, $basedir)"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    67
                </a>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    68
            </td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    69
            <td><xsl:value-of select="count(error)"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    70
        </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    71
    </xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    72
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    73
    <xsl:template match="file">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    74
      <redirect:write file="{$output.dir}/files{substring-after(@name, $basedir)}.xml">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    75
        <document>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    76
          <properties>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    77
            <title>Checkstyle Audit</title>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    78
          </properties>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    79
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    80
          <body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    81
            <section name="Details for {substring-after(@name, $basedir)}">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    82
              <table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    83
                  <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    84
                      <th>Error Description</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    85
                      <th>Line</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    86
                  </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    87
                  <xsl:for-each select="error">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    88
                      <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    89
                          <xsl:call-template name="alternated-row"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    90
                          <td><a title="{@source}"><xsl:value-of select="@message"/></a></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    91
                          <td><xsl:value-of select="@line"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    92
                      </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    93
                  </xsl:for-each>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    94
              </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    95
            </section>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    96
          </body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    97
        </document>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    98
      </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    99
    </xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   100
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   101
    <xsl:template match="checkstyle" mode="summary">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   102
      <section name="Summary">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   103
        <xsl:variable name="fileCount" select="count(file)"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   104
        <xsl:variable name="errorCount" select="count(file/error)"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   105
        <xsl:variable name="fileErrorCount" select="count(file[count(error) != 0])"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   106
        <table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   107
            <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   108
                <th>Files</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   109
                <th>Files With Errors</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   110
                <th>Errors</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   111
            </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   112
            <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   113
                <xsl:call-template name="alternated-row"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   114
                <td><xsl:value-of select="$fileCount"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   115
                <td><xsl:value-of select="$fileErrorCount"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   116
                <td><xsl:value-of select="$errorCount"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   117
            </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   118
        </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   119
      </section>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   120
    </xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   121
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   122
    <xsl:template name="alternated-row">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   123
        <xsl:attribute name="class">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   124
            <xsl:if test="position() mod 2 = 1">oddrow</xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   125
            <xsl:if test="position() mod 2 = 0">evenrow</xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   126
        </xsl:attribute>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   127
    </xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   128
</xsl:stylesheet>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   129