carbidecpp20devenv/plugins/org.apache.ant_1.7.0.v200803061910/etc/maudit-frames.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
<xsl:output method="html" indent="yes" encoding="US-ASCII"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     6
<xsl:decimal-format decimal-separator="." grouping-separator="," />
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     7
<!--
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     8
    Copyright  2001-2004 The Apache Software Foundation
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     9
   
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    10
     Licensed under the Apache License, Version 2.0 (the "License");
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    11
     you may not use this file except in compliance with the License.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    12
     You may obtain a copy of the License at
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    13
   
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    14
         http://www.apache.org/licenses/LICENSE-2.0
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    15
   
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    16
     Unless required by applicable law or agreed to in writing, software
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    17
     distributed under the License is distributed on an "AS IS" BASIS,
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    18
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    19
     See the License for the specific language governing permissions and
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    20
     limitations under the License.
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
<!--
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    24
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    25
    Stylesheet to transform an XML file generated by the Ant MAudit task into
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    26
    a set of JavaDoc-like HTML page to make pages more convenient to be browsed.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    27
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    28
    It use the Xalan redirect extension to write to multiple output files.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    29
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    30
    @author Stephane Bailliez <a href="mailto:sbailliez@apache.org"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    31
-->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    32
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    33
<xsl:param name="output.dir" select="'.'"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    34
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    35
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    36
<xsl:template match="classes">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    37
    <!-- create the index.html -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    38
    <redirect:write file="{$output.dir}/index.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    39
        <xsl:call-template name="index.html"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    40
    </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    41
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    42
    <!-- create the stylesheet.css -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    43
    <redirect:write file="{$output.dir}/stylesheet.css">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    44
        <xsl:call-template name="stylesheet.css"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    45
    </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    46
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    47
    <!-- create the overview-packages.html at the root -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    48
    <redirect:write file="{$output.dir}/overview-summary.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    49
        <xsl:apply-templates select="." mode="overview.packages"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    50
    </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    51
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    52
    <!-- create the all-packages.html at the root -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    53
    <redirect:write file="{$output.dir}/overview-frame.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    54
        <xsl:apply-templates select="." mode="all.packages"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    55
    </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    56
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    57
    <!-- create the all-classes.html at the root -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    58
    <redirect:write file="{$output.dir}/allclasses-frame.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    59
        <xsl:apply-templates select="." mode="all.classes"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    60
    </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    61
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    62
    <!-- process all packages -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    63
    <xsl:for-each select="./class[not(./@package = preceding-sibling::class/@package)]">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    64
        <xsl:call-template name="package">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    65
            <xsl:with-param name="name" select="@package"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    66
        </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    67
    </xsl:for-each>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    68
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    69
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    70
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    71
<xsl:template name="package">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    72
    <xsl:param name="name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    73
    <xsl:variable name="package.dir">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    74
        <xsl:if test="not($name = '')"><xsl:value-of select="translate($name,'.','/')"/></xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    75
        <xsl:if test="$name = ''">.</xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    76
    </xsl:variable>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    77
    <!--Processing package <xsl:value-of select="@name"/> in <xsl:value-of select="$output.dir"/> -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    78
    <!-- create a classes-list.html in the package directory -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    79
    <redirect:write file="{$output.dir}/{$package.dir}/package-frame.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    80
        <xsl:call-template name="classes.list">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    81
            <xsl:with-param name="name" select="$name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    82
        </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    83
    </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    84
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    85
    <!-- create a package-summary.html in the package directory -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    86
    <redirect:write file="{$output.dir}/{$package.dir}/package-summary.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    87
        <xsl:call-template name="package.summary">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    88
            <xsl:with-param name="name" select="$name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    89
        </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    90
    </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    91
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    92
    <!-- for each class, creates a @name.html -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    93
    <!-- @bug there will be a problem with inner classes having the same name, it will be overwritten -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    94
    <xsl:for-each select="/classes/class[@package = $name]">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    95
        <redirect:write file="{$output.dir}/{$package.dir}/{@name}.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    96
            <xsl:apply-templates select="." mode="class.details"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    97
        </redirect:write>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    98
    </xsl:for-each>
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 name="index.html">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   102
<HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   103
    <HEAD><TITLE>Audit Results.</TITLE></HEAD>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   104
    <FRAMESET cols="20%,80%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   105
        <FRAMESET rows="30%,70%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   106
            <FRAME src="overview-frame.html" name="packageListFrame"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   107
            <FRAME src="allclasses-frame.html" name="classListFrame"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   108
        </FRAMESET>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   109
        <FRAME src="overview-summary.html" name="classFrame"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   110
    </FRAMESET>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   111
    <noframes>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   112
        <H2>Frame Alert</H2>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   113
        <P>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   114
        This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   115
        </P>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   116
    </noframes>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   117
</HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   118
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   119
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   120
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   121
<!-- this is the stylesheet css to use for nearly everything -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   122
<xsl:template name="stylesheet.css">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   123
    .bannercell {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   124
      border: 0px;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   125
      padding: 0px;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   126
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   127
    body {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   128
      margin-left: 10;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   129
      margin-right: 10;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   130
      font:normal 80% arial,helvetica,sanserif;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   131
      background-color:#FFFFFF;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   132
      color:#000000;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   133
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   134
    .a td {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   135
      background: #efefef;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   136
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   137
    .b td {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   138
      background: #fff;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   139
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   140
    th, td {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   141
      text-align: left;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   142
      vertical-align: top;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   143
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   144
    th {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   145
      font-weight:bold;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   146
      background: #ccc;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   147
      color: black;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   148
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   149
    table, th, td {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   150
      font-size:100%;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   151
      border: none
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   152
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   153
    table.log tr td, tr th {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   154
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   155
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   156
    h2 {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   157
      font-weight:bold;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   158
      font-size:140%;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   159
      margin-bottom: 5;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   160
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   161
    h3 {
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   162
      font-size:100%;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   163
      font-weight:bold;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   164
      background: #525D76;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   165
      color: white;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   166
      text-decoration: none;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   167
      padding: 5px;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   168
      margin-right: 2px;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   169
      margin-left: 2px;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   170
      margin-bottom: 0;
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   171
    }
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   172
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   173
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   174
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   175
<!-- print the violations of the class -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   176
<xsl:template match="class" mode="class.details">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   177
    <xsl:variable name="package.name" select="@package"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   178
    <HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   179
        <HEAD>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   180
            <xsl:call-template name="create.stylesheet.link">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   181
                <xsl:with-param name="package.name" select="$package.name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   182
            </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   183
        </HEAD>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   184
        <BODY>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   185
            <xsl:call-template name="pageHeader"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   186
            <H3>Class <xsl:if test="not($package.name = '')"><xsl:value-of select="$package.name"/>.</xsl:if><xsl:value-of select="@name"/></H3>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   187
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   188
            <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   189
                <xsl:call-template name="class.audit.header"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   190
                <xsl:apply-templates select="." mode="print.audit"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   191
            </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   192
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   193
            <H3>Violations</H3>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   194
            <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   195
                <xsl:call-template name="violation.audit.header"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   196
                <xsl:apply-templates select="./violation" mode="print.audit">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   197
                    <xsl:sort data-type="number" select="@line"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   198
                </xsl:apply-templates>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   199
            </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   200
            <xsl:call-template name="pageFooter"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   201
        </BODY>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   202
    </HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   203
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   204
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   205
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   206
<!-- list of classes in a package -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   207
<xsl:template name="classes.list">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   208
    <xsl:param name="name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   209
    <HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   210
        <HEAD>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   211
            <xsl:call-template name="create.stylesheet.link">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   212
                <xsl:with-param name="package.name" select="$name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   213
            </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   214
        </HEAD>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   215
        <BODY>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   216
            <table width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   217
                <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   218
                    <td nowrap="nowrap">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   219
                        <H2><a href="package-summary.html" target="classFrame"><xsl:value-of select="$name"/></a></H2>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   220
                    </td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   221
                </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   222
            </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   223
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   224
            <h2>Classes</h2>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   225
            <TABLE WIDTH="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   226
                <xsl:apply-templates select="/classes/class[./@package = $name]" mode="classes.list">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   227
                    <xsl:sort select="@name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   228
                </xsl:apply-templates>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   229
            </TABLE>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   230
        </BODY>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   231
    </HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   232
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   233
<!-- the class to list -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   234
<xsl:template match="class" mode="classes.list">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   235
    <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   236
        <td nowrap="nowrap">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   237
            <!-- @bug naming to fix for inner classes -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   238
            <a href="{@name}.html" target="classFrame"><xsl:value-of select="@name"/></a>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   239
        </td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   240
    </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   241
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   242
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   243
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   244
<!--
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   245
    Creates an all-classes.html file that contains a link to all package-summary.html
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   246
    on each class.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   247
-->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   248
<xsl:template match="classes" mode="all.classes">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   249
    <html>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   250
        <head>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   251
            <xsl:call-template name="create.stylesheet.link">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   252
                <xsl:with-param name="package.name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   253
            </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   254
        </head>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   255
        <body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   256
            <h2>Classes</h2>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   257
            <table width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   258
                <xsl:apply-templates select=".//class" mode="all.classes">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   259
                    <xsl:sort select="@name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   260
                </xsl:apply-templates>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   261
            </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   262
        </body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   263
    </html>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   264
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   265
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   266
<xsl:template match="class" mode="all.classes">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   267
    <!-- (ancestor::package)[last()] is buggy in MSXML3 ? -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   268
    <xsl:variable name="package.name" select="@package"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   269
    <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   270
        <td nowrap="nowrap">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   271
            <a target="classFrame">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   272
                <xsl:attribute name="href">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   273
                    <xsl:if test="not($package.name='')">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   274
                        <xsl:value-of select="translate($package.name,'.','/')"/><xsl:text>/</xsl:text>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   275
                    </xsl:if><xsl:value-of select="@name"/><xsl:text>.html</xsl:text>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   276
                </xsl:attribute>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   277
                <xsl:value-of select="@name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   278
            </a>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   279
        </td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   280
    </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   281
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   282
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   283
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   284
<!--
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   285
    Creates an html file that contains a link to all package-summary.html files on
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   286
    each package existing on testsuites.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   287
    @bug there will be a problem here, I don't know yet how to handle unnamed package :(
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   288
-->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   289
<xsl:template match="classes" mode="all.packages">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   290
    <html>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   291
        <head>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   292
            <xsl:call-template name="create.stylesheet.link">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   293
                <xsl:with-param name="package.name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   294
            </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   295
        </head>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   296
        <body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   297
            <h2><a href="overview-summary.html" target="classFrame">Home</a></h2>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   298
            <h2>Packages</h2>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   299
                <table width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   300
                    <xsl:apply-templates select="class[not(./@package = preceding-sibling::class/@package)]" mode="all.packages">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   301
                        <xsl:sort select="@package" order="ascending"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   302
                    </xsl:apply-templates>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   303
                </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   304
        </body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   305
    </html>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   306
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   307
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   308
<xsl:template match="class" mode="all.packages">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   309
    <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   310
        <td nowrap="nowrap">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   311
            <a href="{translate(@package,'.','/')}/package-summary.html" target="classFrame">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   312
                <xsl:value-of select="@package"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   313
            </a>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   314
        </td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   315
    </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   316
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   317
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   318
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   319
<xsl:template match="classes" mode="overview.packages">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   320
    <html>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   321
        <head>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   322
            <xsl:call-template name="create.stylesheet.link">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   323
                <xsl:with-param name="package.name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   324
            </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   325
        </head>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   326
        <body onload="open('allclasses-frame.html','classListFrame')">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   327
        <xsl:call-template name="pageHeader"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   328
        <h3>Summary</h3>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   329
        <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   330
        <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   331
            <th>Audited classes</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   332
            <th>Reported classes</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   333
            <th>Violations</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   334
        </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   335
        <tr class="a">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   336
            <td><xsl:value-of select="@audited"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   337
            <td><xsl:value-of select="@reported"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   338
            <td><xsl:value-of select="@violations"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   339
        </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   340
        </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   341
        <table border="0" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   342
        <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   343
        <td style="text-align: justify;">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   344
        Note: Rules checked have originated from style guidelines suggested by the language designers,
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   345
        experience from the Java development community and insite experience. Violations are generally
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   346
        reported with a reference to the <a href="http://java.sun.com/docs/books/jls/second_edition/html/jTOC.doc.html">Java Language Specifications</a> (JLS x.x.x)
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   347
        and Metamata Audit rules (x.x).
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   348
        Please consult these documents for additional information about violations.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   349
        <p/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   350
        Rules checked also enforce adherence to <a href="http://java.sun.com/docs/codeconv/html/CodeConvTOC.doc.html">Sun Java coding guidelines</a> in use at Jakarta.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   351
        <p/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   352
        One should note that these violations do not necessary underline errors but should be used
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   353
        as an indication for <i>possible</i> errors. As always, use your best judgment and review
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   354
        them carefully, it might save you hours of debugging.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   355
        </td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   356
        </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   357
        </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   358
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   359
        <h3>Packages</h3>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   360
        <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   361
            <xsl:call-template name="class.audit.header"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   362
            <xsl:for-each select="class[not(./@package = preceding-sibling::class/@package)]">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   363
                <xsl:sort select="@package" order="ascending"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   364
                <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   365
          <xsl:call-template name="alternate-row"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   366
                    <td><a href="{translate(@package,'.','/')}/package-summary.html"><xsl:value-of select="@package"/></a></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   367
                    <td><xsl:value-of select="sum(/classes/class[./@package = current()/@package]/@violations)"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   368
                </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   369
            </xsl:for-each>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   370
        </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   371
        <xsl:call-template name="pageFooter"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   372
        </body>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   373
        </html>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   374
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   375
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   376
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   377
<xsl:template name="package.summary">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   378
    <xsl:param name="name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   379
    <HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   380
        <HEAD>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   381
            <xsl:call-template name="create.stylesheet.link">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   382
                <xsl:with-param name="package.name" select="$name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   383
            </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   384
        </HEAD>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   385
        <BODY>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   386
            <xsl:attribute name="onload">open('package-frame.html','classListFrame')</xsl:attribute>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   387
            <xsl:call-template name="pageHeader"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   388
            <h3>Package <xsl:value-of select="$name"/></h3>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   389
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   390
            <!--table border="0" cellpadding="5" cellspacing="2" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   391
                <xsl:call-template name="class.metrics.header"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   392
                <xsl:apply-templates select="." mode="print.metrics"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   393
            </table-->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   394
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   395
            <xsl:if test="count(/classes/class[./@package = $name]) &gt; 0">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   396
                <H3>Classes</H3>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   397
                <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   398
                    <xsl:call-template name="class.audit.header"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   399
                    <xsl:apply-templates select="/classes/class[./@package = $name]" mode="print.audit">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   400
                        <xsl:sort select="@name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   401
                    </xsl:apply-templates>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   402
                </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   403
            </xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   404
            <xsl:call-template name="pageFooter"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   405
        </BODY>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   406
    </HTML>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   407
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   408
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   409
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   410
<!--
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   411
    transform string like a.b.c to ../../../
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   412
    @param path the path to transform into a descending directory path
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   413
-->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   414
<xsl:template name="path">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   415
    <xsl:param name="path"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   416
    <xsl:if test="contains($path,'.')">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   417
        <xsl:text>../</xsl:text>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   418
        <xsl:call-template name="path">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   419
            <xsl:with-param name="path"><xsl:value-of select="substring-after($path,'.')"/></xsl:with-param>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   420
        </xsl:call-template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   421
    </xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   422
    <xsl:if test="not(contains($path,'.')) and not($path = '')">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   423
        <xsl:text>../</xsl:text>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   424
    </xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   425
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   426
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   427
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   428
<!-- create the link to the stylesheet based on the package name -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   429
<xsl:template name="create.stylesheet.link">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   430
    <xsl:param name="package.name"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   431
    <LINK REL ="stylesheet" TYPE="text/css" TITLE="Style"><xsl:attribute name="href"><xsl:if test="not($package.name = 'unnamed package')"><xsl:call-template name="path"><xsl:with-param name="path" select="$package.name"/></xsl:call-template></xsl:if>stylesheet.css</xsl:attribute></LINK>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   432
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   433
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   434
<!-- Page HEADER -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   435
<xsl:template name="pageHeader">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   436
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   437
  <!-- jakarta logo -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   438
  <table border="0" cellpadding="0" cellspacing="0" width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   439
  <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   440
    <td class="bannercell" rowspan="2">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   441
      <a href="http://jakarta.apache.org/">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   442
      <img src="http://jakarta.apache.org/images/jakarta-logo.gif" alt="http://jakarta.apache.org" align="left" border="0"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   443
      </a>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   444
    </td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   445
        <td style="text-align:right"><h2>Source Code Audit</h2></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   446
        </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   447
        <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   448
        <td style="text-align:right">Designed for use with <a href='http://www.webgain.com/products/quality_analyzer/'>Webgain QA/Metamata Audit</a> and <a href='http://jakarta.apache.org'>Ant</a>.</td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   449
        </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   450
  </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   451
    <hr size="1"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   452
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   453
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   454
<!-- Page HEADER -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   455
<xsl:template name="pageFooter">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   456
    <table width="100%">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   457
      <tr><td><hr noshade="yes" size="1"/></td></tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   458
      <tr><td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   459
      <div align="center"><font color="#525D76" size="-1"><em>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   460
      Copyright &#169; 1999-2001, Apache Software Foundation
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   461
      </em></font></div>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   462
      </td></tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   463
    </table>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   464
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   465
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   466
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   467
<!-- class header -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   468
<xsl:template name="class.audit.header">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   469
    <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   470
        <th width="80%">Name</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   471
        <th>Violations</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   472
    </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   473
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   474
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   475
<!-- method header -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   476
<xsl:template name="violation.audit.header">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   477
    <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   478
        <th>Line</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   479
        <th>Message</th>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   480
    </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   481
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   482
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   483
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   484
<!-- class information -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   485
<xsl:template match="class" mode="print.audit">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   486
    <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   487
    <xsl:call-template name="alternate-row"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   488
        <td><a href="{@name}.html"><xsl:value-of select="@name"/></a></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   489
        <td><xsl:apply-templates select="@violations"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   490
    </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   491
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   492
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   493
<xsl:template match="violation" mode="print.audit">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   494
    <tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   495
    <xsl:call-template name="alternate-row"/>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   496
        <td><xsl:value-of select="@line"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   497
        <td><xsl:apply-templates select="@message"/></td>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   498
    </tr>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   499
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   500
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   501
<!-- alternated row style -->
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   502
<xsl:template name="alternate-row">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   503
<xsl:attribute name="class">
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   504
  <xsl:if test="position() mod 2 = 1">a</xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   505
  <xsl:if test="position() mod 2 = 0">b</xsl:if>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   506
</xsl:attribute>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   507
</xsl:template>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   508
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   509
</xsl:stylesheet>
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
   510