kvm 0.0.1.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (148) hide show
  1. data/.gitignore +3 -0
  2. data/.rvmrc +1 -0
  3. data/AGPL-3.0 +661 -0
  4. data/Gemfile +8 -0
  5. data/Gemfile.lock +32 -0
  6. data/LICENSE +23 -0
  7. data/README.md +73 -0
  8. data/Rakefile +48 -0
  9. data/bin/kvm +6 -0
  10. data/kvm.gemspec +28 -0
  11. data/lib/kvm.rb +286 -0
  12. data/lib/kvm/archive.rb +56 -0
  13. data/lib/kvm/artifact.rb +28 -0
  14. data/lib/kvm/db/jdbc_adapter.rb +71 -0
  15. data/lib/kvm/db/oracle.rb +23 -0
  16. data/lib/kvm/db/types.rb +11 -0
  17. data/lib/kvm/impex.rb +109 -0
  18. data/lib/kvm/log.rb +7 -0
  19. data/lib/kvm/resource.rb +72 -0
  20. data/lib/kvm/rice_release.rb +79 -0
  21. data/lib/kvm/rice_release_generated_dataset.rb +68 -0
  22. data/lib/kvm/source.rb +33 -0
  23. data/lib/kvm/subversion.rb +52 -0
  24. data/lib/kvm/version.rb +3 -0
  25. data/lib/kvm/wallet.rb +64 -0
  26. data/support/ant/INSTALL +2 -0
  27. data/support/ant/KEYS +1398 -0
  28. data/support/ant/LICENSE +272 -0
  29. data/support/ant/NOTICE +6 -0
  30. data/support/ant/README +97 -0
  31. data/support/ant/WHATSNEW +5467 -0
  32. data/support/ant/bin/ant +335 -0
  33. data/support/ant/bin/ant.bat +218 -0
  34. data/support/ant/bin/ant.cmd +93 -0
  35. data/support/ant/bin/antRun +24 -0
  36. data/support/ant/bin/antRun.bat +50 -0
  37. data/support/ant/bin/antRun.pl +66 -0
  38. data/support/ant/bin/antenv.cmd +98 -0
  39. data/support/ant/bin/complete-ant-cmd.pl +114 -0
  40. data/support/ant/bin/envset.cmd +131 -0
  41. data/support/ant/bin/lcp.bat +31 -0
  42. data/support/ant/bin/runant.pl +153 -0
  43. data/support/ant/bin/runant.py +102 -0
  44. data/support/ant/bin/runrc.cmd +60 -0
  45. data/support/ant/etc/ant-bootstrap.jar +0 -0
  46. data/support/ant/etc/changelog.xsl +148 -0
  47. data/support/ant/etc/checkstyle/checkstyle-frames.xsl +299 -0
  48. data/support/ant/etc/checkstyle/checkstyle-text.xsl +34 -0
  49. data/support/ant/etc/checkstyle/checkstyle-xdoc.xsl +130 -0
  50. data/support/ant/etc/coverage-frames.xsl +489 -0
  51. data/support/ant/etc/jdepend-frames.xsl +487 -0
  52. data/support/ant/etc/jdepend.xsl +276 -0
  53. data/support/ant/etc/junit-frames-xalan1.xsl +733 -0
  54. data/support/ant/etc/junit-frames.xsl +902 -0
  55. data/support/ant/etc/junit-noframes.xsl +478 -0
  56. data/support/ant/etc/log.xsl +203 -0
  57. data/support/ant/etc/maudit-frames.xsl +503 -0
  58. data/support/ant/etc/mmetrics-frames.xsl +1026 -0
  59. data/support/ant/etc/tagdiff.xsl +179 -0
  60. data/support/ant/fetch.xml +343 -0
  61. data/support/ant/get-m2.xml +121 -0
  62. data/support/ant/lib/README +3 -0
  63. data/support/ant/lib/ant-antlr.jar +0 -0
  64. data/support/ant/lib/ant-antlr.pom +76 -0
  65. data/support/ant/lib/ant-apache-bcel.jar +0 -0
  66. data/support/ant/lib/ant-apache-bcel.pom +72 -0
  67. data/support/ant/lib/ant-apache-bsf.jar +0 -0
  68. data/support/ant/lib/ant-apache-bsf.pom +75 -0
  69. data/support/ant/lib/ant-apache-log4j.jar +0 -0
  70. data/support/ant/lib/ant-apache-log4j.pom +70 -0
  71. data/support/ant/lib/ant-apache-oro.jar +0 -0
  72. data/support/ant/lib/ant-apache-oro.pom +75 -0
  73. data/support/ant/lib/ant-apache-regexp.jar +0 -0
  74. data/support/ant/lib/ant-apache-regexp.pom +71 -0
  75. data/support/ant/lib/ant-apache-resolver.jar +0 -0
  76. data/support/ant/lib/ant-apache-resolver.pom +70 -0
  77. data/support/ant/lib/ant-apache-xalan2.jar +0 -0
  78. data/support/ant/lib/ant-apache-xalan2.pom +95 -0
  79. data/support/ant/lib/ant-commons-logging.jar +0 -0
  80. data/support/ant/lib/ant-commons-logging.pom +71 -0
  81. data/support/ant/lib/ant-commons-net.jar +0 -0
  82. data/support/ant/lib/ant-commons-net.pom +76 -0
  83. data/support/ant/lib/ant-jai.jar +0 -0
  84. data/support/ant/lib/ant-jai.pom +85 -0
  85. data/support/ant/lib/ant-javamail.jar +0 -0
  86. data/support/ant/lib/ant-javamail.pom +79 -0
  87. data/support/ant/lib/ant-jdepend.jar +0 -0
  88. data/support/ant/lib/ant-jdepend.pom +73 -0
  89. data/support/ant/lib/ant-jmf.jar +0 -0
  90. data/support/ant/lib/ant-jmf.pom +66 -0
  91. data/support/ant/lib/ant-jsch.jar +0 -0
  92. data/support/ant/lib/ant-jsch.pom +75 -0
  93. data/support/ant/lib/ant-junit.jar +0 -0
  94. data/support/ant/lib/ant-junit.pom +101 -0
  95. data/support/ant/lib/ant-junit4.jar +0 -0
  96. data/support/ant/lib/ant-junit4.pom +71 -0
  97. data/support/ant/lib/ant-launcher.jar +0 -0
  98. data/support/ant/lib/ant-launcher.pom +58 -0
  99. data/support/ant/lib/ant-netrexx.jar +0 -0
  100. data/support/ant/lib/ant-netrexx.pom +99 -0
  101. data/support/ant/lib/ant-parent.pom +120 -0
  102. data/support/ant/lib/ant-swing.jar +0 -0
  103. data/support/ant/lib/ant-swing.pom +67 -0
  104. data/support/ant/lib/ant-testutil.jar +0 -0
  105. data/support/ant/lib/ant-testutil.pom +75 -0
  106. data/support/ant/lib/ant.jar +0 -0
  107. data/support/ant/lib/ant.pom +222 -0
  108. data/support/ant/lib/libraries.properties +65 -0
  109. data/test/data/files/rice-0.0.0.0-bin.tar.gz +0 -0
  110. data/test/data/svn/README.txt +5 -0
  111. data/test/data/svn/conf/authz +32 -0
  112. data/test/data/svn/conf/passwd +8 -0
  113. data/test/data/svn/conf/svnserve.conf +47 -0
  114. data/test/data/svn/db/current +1 -0
  115. data/test/data/svn/db/format +2 -0
  116. data/test/data/svn/db/fs-type +1 -0
  117. data/test/data/svn/db/fsfs.conf +37 -0
  118. data/test/data/svn/db/min-unpacked-rev +1 -0
  119. data/test/data/svn/db/rep-cache.db +0 -0
  120. data/test/data/svn/db/revprops/0/0 +5 -0
  121. data/test/data/svn/db/revprops/0/1 +13 -0
  122. data/test/data/svn/db/revs/0/0 +11 -0
  123. data/test/data/svn/db/revs/0/1 +0 -0
  124. data/test/data/svn/db/txn-current +1 -0
  125. data/test/data/svn/db/txn-current-lock +0 -0
  126. data/test/data/svn/db/uuid +1 -0
  127. data/test/data/svn/db/write-lock +0 -0
  128. data/test/data/svn/format +1 -0
  129. data/test/data/svn/hooks/post-commit.tmpl +50 -0
  130. data/test/data/svn/hooks/post-lock.tmpl +44 -0
  131. data/test/data/svn/hooks/post-revprop-change.tmpl +56 -0
  132. data/test/data/svn/hooks/post-unlock.tmpl +42 -0
  133. data/test/data/svn/hooks/pre-commit.tmpl +81 -0
  134. data/test/data/svn/hooks/pre-lock.tmpl +71 -0
  135. data/test/data/svn/hooks/pre-revprop-change.tmpl +66 -0
  136. data/test/data/svn/hooks/pre-unlock.tmpl +63 -0
  137. data/test/data/svn/hooks/start-commit.tmpl +65 -0
  138. data/test/data/svn/locks/db-logs.lock +3 -0
  139. data/test/data/svn/locks/db.lock +3 -0
  140. data/test/helper.rb +146 -0
  141. data/test/int_test_generate_sql.rb +58 -0
  142. data/test/test_archive.rb +35 -0
  143. data/test/test_generate_sql.rb +0 -0
  144. data/test/test_rice_release.rb +61 -0
  145. data/test/test_rice_release_generated_dataset.rb +12 -0
  146. data/test/test_source.rb +31 -0
  147. data/test/test_subversion.rb +20 -0
  148. metadata +298 -0
@@ -0,0 +1,148 @@
1
+ <?xml version="1.0" encoding="ISO-8859-1"?>
2
+
3
+ <xsl:stylesheet
4
+ xmlns:xsl='http://www.w3.org/1999/XSL/Transform'
5
+ version='1.0'>
6
+
7
+ <!--
8
+ Licensed to the Apache Software Foundation (ASF) under one or more
9
+ contributor license agreements. See the NOTICE file distributed with
10
+ this work for additional information regarding copyright ownership.
11
+ The ASF licenses this file to You under the Apache License, Version 2.0
12
+ (the "License"); you may not use this file except in compliance with
13
+ the License. You may obtain a copy of the License at
14
+
15
+ http://www.apache.org/licenses/LICENSE-2.0
16
+
17
+ Unless required by applicable law or agreed to in writing, software
18
+ distributed under the License is distributed on an "AS IS" BASIS,
19
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ See the License for the specific language governing permissions and
21
+ limitations under the License.
22
+
23
+ -->
24
+ <xsl:param name="title"/>
25
+ <xsl:param name="module"/>
26
+ <xsl:param name="cvsweb"/>
27
+
28
+ <xsl:output method="html" indent="yes" encoding="US-ASCII"
29
+ doctype-public="-//W3C//DTD HTML 4.01//EN"
30
+ doctype-system="http://www.w3.org/TR/html401/strict.dtd"/>
31
+
32
+ <!-- Copy standard document elements. Elements that
33
+ should be ignored must be filtered by apply-templates
34
+ tags. -->
35
+ <xsl:template match="*">
36
+ <xsl:copy>
37
+ <xsl:copy-of select="attribute::*[. != '']"/>
38
+ <xsl:apply-templates/>
39
+ </xsl:copy>
40
+ </xsl:template>
41
+
42
+ <xsl:template match="changelog">
43
+ <html>
44
+ <head>
45
+ <title><xsl:value-of select="$title"/></title>
46
+ <style type="text/css">
47
+ body, p {
48
+ font-family: Verdana, Arial, Helvetica, sans-serif;
49
+ font-size: 80%;
50
+ color: #000000;
51
+ background-color: #ffffff;
52
+ }
53
+ tr, td {
54
+ font-family: Verdana, Arial, Helvetica, sans-serif;
55
+ background: #eeeee0;
56
+ }
57
+ td {
58
+ padding-left: 20px;
59
+ }
60
+ .dateAndAuthor {
61
+ font-family: Verdana, Arial, Helvetica, sans-serif;
62
+ font-weight: bold;
63
+ text-align: left;
64
+ background: #a6caf0;
65
+ padding-left: 3px;
66
+ }
67
+ a {
68
+ color: #000000;
69
+ }
70
+ pre {
71
+ font-weight: bold;
72
+ }
73
+ </style>
74
+ </head>
75
+ <body>
76
+ <h1>
77
+ <a name="top"><xsl:value-of select="$title"/></a>
78
+ </h1>
79
+ <p style="text-align: right">Designed for use with <a href="http://ant.apache.org/">Apache Ant</a>.</p>
80
+ <hr/>
81
+ <table border="0" width="100%" cellspacing="1">
82
+
83
+ <xsl:apply-templates select=".//entry">
84
+ <xsl:sort select="date" data-type="text" order="descending"/>
85
+ <xsl:sort select="time" data-type="text" order="descending"/>
86
+ </xsl:apply-templates>
87
+
88
+ </table>
89
+
90
+ </body>
91
+ </html>
92
+ </xsl:template>
93
+
94
+ <xsl:template match="entry">
95
+ <tr>
96
+ <td class="dateAndAuthor">
97
+ <xsl:value-of select="date"/><xsl:text> </xsl:text><xsl:value-of select="time"/><xsl:text> </xsl:text><xsl:value-of select="author"/>
98
+ </td>
99
+ </tr>
100
+ <tr>
101
+ <td>
102
+ <pre>
103
+ <xsl:apply-templates select="msg"/></pre>
104
+ <ul>
105
+ <xsl:apply-templates select="file"/>
106
+ </ul>
107
+ </td>
108
+ </tr>
109
+ </xsl:template>
110
+
111
+ <xsl:template match="date">
112
+ <i><xsl:value-of select="."/></i>
113
+ </xsl:template>
114
+
115
+ <xsl:template match="time">
116
+ <i><xsl:value-of select="."/></i>
117
+ </xsl:template>
118
+
119
+ <xsl:template match="author">
120
+ <i>
121
+ <a>
122
+ <xsl:attribute name="href">mailto:<xsl:value-of select="."/></xsl:attribute>
123
+ <xsl:value-of select="."/></a>
124
+ </i>
125
+ </xsl:template>
126
+
127
+ <xsl:template match="file">
128
+ <li>
129
+ <a>
130
+ <xsl:choose>
131
+ <xsl:when test="string-length(prevrevision) = 0 ">
132
+ <xsl:attribute name="href"><xsl:value-of select="$cvsweb"/><xsl:value-of select="$module" />/<xsl:value-of select="name" />?rev=<xsl:value-of select="revision" />&amp;content-type=text/x-cvsweb-markup</xsl:attribute>
133
+ </xsl:when>
134
+ <xsl:otherwise>
135
+ <xsl:attribute name="href"><xsl:value-of select="$cvsweb"/><xsl:value-of select="$module" />/<xsl:value-of select="name" />?r1=<xsl:value-of select="revision" />&amp;r2=<xsl:value-of select="prevrevision"/></xsl:attribute>
136
+ </xsl:otherwise>
137
+ </xsl:choose>
138
+ <xsl:value-of select="name" /> (<xsl:value-of select="revision"/>)</a>
139
+ </li>
140
+ </xsl:template>
141
+
142
+ <!-- Any elements within a msg are processed,
143
+ so that we can preserve HTML tags. -->
144
+ <xsl:template match="msg">
145
+ <xsl:apply-templates/>
146
+ </xsl:template>
147
+
148
+ </xsl:stylesheet>
@@ -0,0 +1,299 @@
1
+ <?xml version="1.0"?>
2
+ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
3
+ xmlns:lxslt="http://xml.apache.org/xslt"
4
+ xmlns:redirect="http://xml.apache.org/xalan/redirect"
5
+ extension-element-prefixes="redirect">
6
+
7
+ <!--
8
+ Licensed to the Apache Software Foundation (ASF) under one or more
9
+ contributor license agreements. See the NOTICE file distributed with
10
+ this work for additional information regarding copyright ownership.
11
+ The ASF licenses this file to You under the Apache License, Version 2.0
12
+ (the "License"); you may not use this file except in compliance with
13
+ the License. You may obtain a copy of the License at
14
+
15
+ http://www.apache.org/licenses/LICENSE-2.0
16
+
17
+ Unless required by applicable law or agreed to in writing, software
18
+ distributed under the License is distributed on an "AS IS" BASIS,
19
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ See the License for the specific language governing permissions and
21
+ limitations under the License.
22
+ -->
23
+
24
+ <xsl:output method="html" indent="yes" encoding="US-ASCII"/>
25
+ <xsl:decimal-format decimal-separator="." grouping-separator="," />
26
+
27
+ <xsl:param name="output.dir" select="'.'"/>
28
+ <xsl:param name="basedir" select="'.'"/>
29
+
30
+ <xsl:template match="checkstyle">
31
+ <!-- create the index.html -->
32
+ <redirect:write file="{$output.dir}/index.html">
33
+ <xsl:call-template name="index.html"/>
34
+ </redirect:write>
35
+
36
+ <!-- create the stylesheet.css -->
37
+ <redirect:write file="{$output.dir}/stylesheet.css">
38
+ <xsl:call-template name="stylesheet.css"/>
39
+ </redirect:write>
40
+
41
+ <!-- create the overview-summary.html at the root -->
42
+ <redirect:write file="{$output.dir}/overview-frame.html">
43
+ <xsl:apply-templates select="." mode="overview"/>
44
+ </redirect:write>
45
+
46
+ <!-- create the all-classes.html at the root -->
47
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
48
+ <xsl:apply-templates select="." mode="all.classes"/>
49
+ </redirect:write>
50
+
51
+ <!-- process all files -->
52
+ <xsl:apply-templates select="file[count(error) != 0]"/>
53
+ </xsl:template>
54
+
55
+ <xsl:template name="index.html">
56
+ <html>
57
+ <head>
58
+ <title>CheckStyle Audit</title>
59
+ </head>
60
+ <frameset cols="20%,80%">
61
+ <frame src="allclasses-frame.html" name="fileListFrame"/>
62
+ <frame src="overview-frame.html" name="fileFrame"/>
63
+ </frameset>
64
+ <noframes>
65
+ <h2>Frame Alert</h2>
66
+ <p>
67
+ This document is designed to be viewed using the frames feature.
68
+ If you see this message, you are using a non-frame-capable web client.
69
+ </p>
70
+ </noframes>
71
+ </html>
72
+ </xsl:template>
73
+
74
+ <xsl:template name="pageHeader">
75
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
76
+ <tr>
77
+ <td class="text-align:right"><h2>CheckStyle Audit</h2></td>
78
+ </tr>
79
+ <tr>
80
+ <td class="text-align:right">Designed for use with
81
+ <a href='http://checkstyle.sourceforge.net/'>CheckStyle</a> and
82
+ <a href='http://ant.apache.org/'>Ant</a>.</td>
83
+ </tr>
84
+ </table>
85
+ <hr size="1"/>
86
+ </xsl:template>
87
+
88
+ <xsl:template match="checkstyle" mode="overview">
89
+ <html>
90
+ <head>
91
+ <link rel="stylesheet" type="text/css" href="stylesheet.css"/>
92
+ </head>
93
+ <body>
94
+ <!-- page header -->
95
+ <xsl:call-template name="pageHeader"/>
96
+
97
+ <!-- Summary part -->
98
+ <xsl:apply-templates select="." mode="summary"/>
99
+ <hr size="1" width="100%" align="left"/>
100
+
101
+ <!-- File list part -->
102
+ <xsl:apply-templates select="." mode="filelist"/>
103
+ </body>
104
+ </html>
105
+ </xsl:template>
106
+
107
+ <xsl:template name="stylesheet.css">
108
+ .bannercell {
109
+ border: 0px;
110
+ padding: 0px;
111
+ }
112
+ body {
113
+ margin-left: 10;
114
+ margin-right: 10;
115
+ font:normal 80% arial,helvetica,sanserif;
116
+ background-color:#FFFFFF;
117
+ color:#000000;
118
+ }
119
+ .oddrow td {
120
+ background: #efefef;
121
+ }
122
+ .evenrow td {
123
+ background: #fff;
124
+ }
125
+ th, td {
126
+ text-align: left;
127
+ vertical-align: top;
128
+ }
129
+ th {
130
+ font-weight:bold;
131
+ background: #ccc;
132
+ color: black;
133
+ }
134
+ table, th, td {
135
+ font-size:100%;
136
+ border: none
137
+ }
138
+ table.log tr td, tr th {
139
+
140
+ }
141
+ h2 {
142
+ font-weight:bold;
143
+ font-size:140%;
144
+ margin-bottom: 5;
145
+ }
146
+ h3 {
147
+ font-size:100%;
148
+ font-weight:bold;
149
+ background: #525D76;
150
+ color: white;
151
+ text-decoration: none;
152
+ padding: 5px;
153
+ margin-right: 2px;
154
+ margin-left: 2px;
155
+ margin-bottom: 0;
156
+ }
157
+ </xsl:template>
158
+
159
+ <!--
160
+ Creates an all-classes.html file that contains a link to all files.
161
+ -->
162
+ <xsl:template match="checkstyle" mode="all.classes">
163
+ <html>
164
+ <head>
165
+ <link rel="stylesheet" type="text/css" href="stylesheet.css"/>
166
+ </head>
167
+ <body>
168
+ <h2>Files</h2>
169
+ <p>
170
+ <table width="100%">
171
+ <!-- For each file create its part -->
172
+ <xsl:apply-templates select="file[count(error) != 0]" mode="all.classes">
173
+ <xsl:sort select="substring-after(@name, $basedir)"/>
174
+ </xsl:apply-templates>
175
+ </table>
176
+ </p>
177
+ </body>
178
+ </html>
179
+ </xsl:template>
180
+
181
+ <xsl:template match="checkstyle" mode="filelist">
182
+ <h3>Files</h3>
183
+ <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
184
+ <tr>
185
+ <th>Name</th>
186
+ <th>Errors</th>
187
+ </tr>
188
+ <xsl:apply-templates select="file[count(error) != 0]" mode="filelist">
189
+ <xsl:sort select="count(error)" order="descending" data-type="number"/>
190
+ </xsl:apply-templates>
191
+ </table>
192
+ </xsl:template>
193
+
194
+ <xsl:template match="file" mode="filelist">
195
+ <tr>
196
+ <xsl:call-template name="alternated-row"/>
197
+ <td nowrap="nowrap">
198
+ <a>
199
+ <xsl:attribute name="href">
200
+ <xsl:text>files/</xsl:text><xsl:value-of select="substring-after(@name, $basedir)"/><xsl:text>.html</xsl:text>
201
+ </xsl:attribute>
202
+ <xsl:value-of select="substring-after(@name, $basedir)"/>
203
+ </a>
204
+ </td>
205
+ <td><xsl:value-of select="count(error)"/></td>
206
+ </tr>
207
+ </xsl:template>
208
+
209
+ <xsl:template match="file" mode="all.classes">
210
+ <tr>
211
+ <td nowrap="nowrap">
212
+ <a target="fileFrame">
213
+ <xsl:attribute name="href">
214
+ <xsl:text>files/</xsl:text><xsl:value-of select="substring-after(@name, $basedir)"/><xsl:text>.html</xsl:text>
215
+ </xsl:attribute>
216
+ <xsl:value-of select="substring-after(@name, $basedir)"/>
217
+ </a>
218
+ </td>
219
+ </tr>
220
+ </xsl:template>
221
+
222
+ <!--
223
+ transform string like a/b/c to ../../../
224
+ @param path the path to transform into a descending directory path
225
+ -->
226
+ <xsl:template name="path">
227
+ <xsl:param name="path"/>
228
+
229
+ <!-- Convert a windows path '\' to a unix path '/' for further processing. -->
230
+ <xsl:variable name="path2" select="translate($path,'\','/')"/>
231
+
232
+
233
+ <xsl:if test="contains($path2,'/')">
234
+ <xsl:text>../</xsl:text>
235
+ <xsl:call-template name="path">
236
+ <xsl:with-param name="path"><xsl:value-of select="substring-after($path2,'/')"/></xsl:with-param>
237
+ </xsl:call-template>
238
+ </xsl:if>
239
+ <xsl:if test="not(contains($path2,'/')) and not($path2 = '')">
240
+ <xsl:text>../</xsl:text>
241
+ </xsl:if>
242
+ </xsl:template>
243
+
244
+ <xsl:template match="file">
245
+ <redirect:write file="{$output.dir}/files/{substring-after(@name, $basedir)}.html">
246
+ <html>
247
+ <head>
248
+ <link rel="stylesheet" type="text/css">
249
+ <xsl:attribute name="href"><xsl:call-template name="path"><xsl:with-param name="path" select="substring-after(@name, $basedir)"/></xsl:call-template><xsl:text>stylesheet.css</xsl:text></xsl:attribute>
250
+ </link>
251
+ </head>
252
+ <body>
253
+ <xsl:call-template name="pageHeader"/>
254
+ <h3>File <xsl:value-of select="substring-after(@name, $basedir)"/></h3>
255
+ <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
256
+ <tr>
257
+ <th>Error Description</th>
258
+ <th>Line:Column</th>
259
+ </tr>
260
+ <xsl:for-each select="error">
261
+ <tr>
262
+ <xsl:call-template name="alternated-row"/>
263
+ <td><a title="{@source}"><xsl:value-of select="@message"/></a></td>
264
+ <td align="center"><xsl:value-of select="@line"/><xsl:if test="@column">:<xsl:value-of select="@column"/></xsl:if></td>
265
+ </tr>
266
+ </xsl:for-each>
267
+ </table>
268
+ </body>
269
+ </html>
270
+ </redirect:write>
271
+ </xsl:template>
272
+
273
+ <xsl:template match="checkstyle" mode="summary">
274
+ <h3>Summary</h3>
275
+ <xsl:variable name="fileCount" select="count(file)"/>
276
+ <xsl:variable name="errorCount" select="count(file/error)"/>
277
+ <xsl:variable name="fileErrorCount" select="count(file[count(error) != 0])"/>
278
+ <table class="log" border="0" cellpadding="5" cellspacing="2" width="100%">
279
+ <tr>
280
+ <th>Total Files</th>
281
+ <th>Files With Errors</th>
282
+ <th>Errors</th>
283
+ </tr>
284
+ <tr>
285
+ <xsl:call-template name="alternated-row"/>
286
+ <td><xsl:value-of select="$fileCount"/></td>
287
+ <td><xsl:value-of select="$fileErrorCount"/></td>
288
+ <td><xsl:value-of select="$errorCount"/></td>
289
+ </tr>
290
+ </table>
291
+ </xsl:template>
292
+
293
+ <xsl:template name="alternated-row">
294
+ <xsl:attribute name="class">
295
+ <xsl:if test="position() mod 2 = 1">oddrow</xsl:if>
296
+ <xsl:if test="position() mod 2 = 0">evenrow</xsl:if>
297
+ </xsl:attribute>
298
+ </xsl:template>
299
+ </xsl:stylesheet>
@@ -0,0 +1,34 @@
1
+ <?xml version="1.0"?>
2
+ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
3
+
4
+ <!--
5
+ Licensed to the Apache Software Foundation (ASF) under one or more
6
+ contributor license agreements. See the NOTICE file distributed with
7
+ this work for additional information regarding copyright ownership.
8
+ The ASF licenses this file to You under the Apache License, Version 2.0
9
+ (the "License"); you may not use this file except in compliance with
10
+ the License. You may obtain a copy of the License at
11
+
12
+ http://www.apache.org/licenses/LICENSE-2.0
13
+
14
+ Unless required by applicable law or agreed to in writing, software
15
+ distributed under the License is distributed on an "AS IS" BASIS,
16
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
+ See the License for the specific language governing permissions and
18
+ limitations under the License.
19
+ -->
20
+
21
+ <xsl:strip-space elements="checkstyle"/>
22
+ <xsl:preserve-space elements="file"/>
23
+ <xsl:output method="text"/>
24
+ <xsl:template match="checkstyle/file/error">
25
+ <xsl:value-of select="../@name"/>
26
+ <xsl:text>:</xsl:text>
27
+ <xsl:value-of select="@line"/>
28
+ <xsl:text>:</xsl:text>
29
+ <xsl:value-of select="@column"/>
30
+ <xsl:text> </xsl:text>
31
+ <xsl:value-of select="@message"/>
32
+ </xsl:template>
33
+ </xsl:stylesheet>
34
+