Author: maartenc
Date: Wed May 23 15:22:01 2007
New Revision: 541102
URL: http://svn.apache.org/viewvc?view=rev&rev=541102
Log:
- retrieve dependencies from maven2 repository
- added checkstyle report (TODO: we must verify the checkstyle configuration)
Added:
incubator/ivy/core/trunk/src/etc/
incubator/ivy/core/trunk/src/etc/checkstyle/
incubator/ivy/core/trunk/src/etc/checkstyle/RequiredHeader.txt
incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-config
incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-frames.xsl
incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-text.xsl
incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-xdoc.xsl
Modified:
incubator/ivy/core/trunk/CHANGES.txt
incubator/ivy/core/trunk/build.properties
incubator/ivy/core/trunk/build.xml
incubator/ivy/core/trunk/ivy.xml
incubator/ivy/core/trunk/ivysettings.xml
Modified: incubator/ivy/core/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/CHANGES.txt?view=diff&rev=541102&r1=541101&r2=541102
==============================================================================
--- incubator/ivy/core/trunk/CHANGES.txt (original)
+++ incubator/ivy/core/trunk/CHANGES.txt Wed May 23 15:22:01 2007
@@ -48,8 +48,10 @@
version in SVN
=====================================
+- NEW: A checkstyle report is generated (IVY-483) (thanks to Jan Materne)
- NEW: Hide private or specific conf when publishing (IVY-77)
+- IMPROVEMENT: Use maven2 repository to download dependencies
- IMPROVEMENT: Allow "main" parameters to be passed directly (instead of using
-args flag) (IVY-480) (thanks to Archie Cobbs)
- IMPROVEMENT: Remove @author tags (thanks to Stephane Bailliez)
- IMPROVEMENT: Remove use of deprecated elements in ivysettings.xml (IVY-505)
(with contribution from Jan Materne)
Modified: incubator/ivy/core/trunk/build.properties
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/build.properties?view=diff&rev=541102&r1=541101&r2=541102
==============================================================================
--- incubator/ivy/core/trunk/build.properties (original)
+++ incubator/ivy/core/trunk/build.properties Wed May 23 15:22:01 2007
@@ -34,6 +34,8 @@
coverage.report.dir=${reports.dir}/coverage
javadoc.build.dir=${reports.dir}/api
doc.src.dir=${basedir}/doc
+checkstyle.report.dir=${reports.dir}/checkstyle
+checkstyle.src.dir=${basedir}/src/etc/checkstyle
ivy.minimum.javaversion=1.4
debug.mode=on
@@ -42,3 +44,4 @@
status=integration
test.class.pattern = *Test
+
Modified: incubator/ivy/core/trunk/build.xml
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/build.xml?view=diff&rev=541102&r1=541101&r2=541102
==============================================================================
--- incubator/ivy/core/trunk/build.xml (original)
+++ incubator/ivy/core/trunk/build.xml Wed May 23 15:22:01 2007
@@ -318,8 +318,13 @@
<target name="emma" depends="jar" unless="skip.test">
<ivy:cachepath organisation="emma" module="emma"
revision="2.0.5312"
- inline="true" conf="ant"
pathid="emma.classpath"/>
- <taskdef resource="emma_ant.properties"
classpathref="emma.classpath" />
+ inline="true" conf="default"
pathid="emma.classpath"/>
+ <ivy:cachepath organisation="emma" module="emma_ant"
revision="2.0.5312"
+ inline="true" conf="default"
pathid="emma.ant.classpath" transitive="false"/>
+ <taskdef resource="emma_ant.properties">
+ <classpath refid="emma.classpath" />
+ <classpath refid="emma.ant.classpath" />
+ </taskdef>
<property name="emma.enabled" value="true" />
<property name="coverage.dir" value="${build.dir}/coverage" />
<property name="coverage.classes.dir"
value="${coverage.dir}/classes" />
@@ -434,7 +439,32 @@
-->
</target>
- <!-- =================================================================
+ <target name="checkstyle" depends="jar" description="checks Ivy codebase
according to ${config.dir}/checkstyle-config">
+ <ivy:cachepath organisation="checkstyle" module="checkstyle"
revision="4.3"
+ inline="true" conf="default" pathid="checkstyle.classpath"
transitive="true"/>
+ <taskdef resource="checkstyletask.properties"
classpathref="checkstyle.classpath" />
+
+ <mkdir dir="${checkstyle.report.dir}"/>
+ <checkstyle config="${checkstyle.src.dir}/checkstyle-config"
failOnViolation="false">
+ <formatter type="xml"
toFile="${checkstyle.report.dir}/checkstyle.xml"/>
+ <fileset dir="${src.dir}">
+ <include name="**/*.java"/>
+ </fileset>
+ </checkstyle>
+ </target>
+
+ <target name="checkstyle-report" depends="checkstyle">
+ <property name="checkstyle.basedir" location="${src.dir}"/>
+ <xslt in="${checkstyle.report.dir}/checkstyle.xml"
+ style="${checkstyle.src.dir}/checkstyle-frames.xsl"
+ out="${checkstyle.report.dir}/output.txt">
+ <param name="basedir" expression="${checkstyle.basedir}"/>
+ </xslt>
+
+ </target>
+
+
+ <!-- =================================================================
IDE SPECIFIC
================================================================= -->
<available file="${basedir}/.classpath"
property="eclipse.classpath.exists"/>
Modified: incubator/ivy/core/trunk/ivy.xml
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/ivy.xml?view=diff&rev=541102&r1=541101&r2=541102
==============================================================================
--- incubator/ivy/core/trunk/ivy.xml (original)
+++ incubator/ivy/core/trunk/ivy.xml Wed May 23 15:22:01 2007
@@ -37,12 +37,12 @@
<artifact name="ivy-core" type="jar" conf="core"/>
</publications>
<dependencies>
- <dependency org="apache" name="ant" rev="1.6.5" conf="default"/>
- <dependency org="apache" name="commons-httpclient" rev="3.0"
conf="default,httpclient->default"/>
- <dependency org="apache" name="commons-cli" rev="1.0"
conf="default,standalone->default"/>
- <dependency org="apache" name="oro" rev="2.0.8"
conf="default,oro->default"/>
- <dependency org="apache" name="commons-vfs" rev="20060920"
conf="vfs->default;default,webdav->webdav" />
- <dependency org="jcraft" name="jsch" rev="0.1.25"
conf="default,sftp->default" />
+ <dependency org="ant" name="ant" rev="1.6.5" conf="default"/>
+ <dependency org="commons-httpclient" name="commons-httpclient"
rev="3.0" conf="default,httpclient->default" />
+ <dependency org="commons-cli" name="commons-cli" rev="1.0"
conf="default,standalone->default" />
+ <dependency org="oro" name="oro" rev="2.0.8"
conf="default,oro->default"/>
+ <dependency org="commons-vfs" name="commons-vfs" rev="20060920"
conf="vfs->default;default,webdav->webdav" />
+ <dependency org="jsch" name="jsch" rev="0.1.25"
conf="default,sftp->default" />
<dependency org="ant" name="ant-launcher" rev="1.6.5"
conf="test->default"/>
<dependency org="junit" name="junit" rev="3.8.2"
conf="test->default" />
</dependencies>
Modified: incubator/ivy/core/trunk/ivysettings.xml
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/ivysettings.xml?view=diff&rev=541102&r1=541101&r2=541102
==============================================================================
--- incubator/ivy/core/trunk/ivysettings.xml (original)
+++ incubator/ivy/core/trunk/ivysettings.xml Wed May 23 15:22:01 2007
@@ -20,11 +20,26 @@
<include url="${ivy.default.conf.dir}/ivyconf-local.xml"/>
<settings defaultResolver="public" />
<resolvers>
- <url name="public">
- <ivy
pattern="http://ivyrep.jayasoft.org/[organisation]/[module]/ivy-[revision].xml"/>
- <artifact
pattern="http://ivyrep.jayasoft.org/[organisation]/[module]/[revision]/[artifact].[ext]"/>
- <artifact
pattern="http://repo1.maven.org/maven/[module]/[type]s/[artifact]-[revision].[ext]"/>
- <artifact
pattern="http://repo1.maven.org/maven2/[organisation]/[module]/[revision]/[artifact]-[revision].[ext]"/>
- </url>
+ <chain name="public" returnFirst="true">
+ <ibiblio name="ibiblio" m2compatible="true"/>
+ <url name="ivy" namespace="ivyrep-ns">
+ <ivy
pattern="http://ivyrep.jayasoft.org/[organisation]/[module]/ivy-[revision].xml"/>
+ <artifact
pattern="http://ivyrep.jayasoft.org/[organisation]/[module]/[revision]/[artifact].[ext]"/>
+ </url>
+ </chain>
</resolvers>
+ <namespaces>
+ <namespace name="ivyrep-ns">
+ <rule>
+ <fromsystem>
+ <src org="commons-vfs|slide" />
+ <dest org="apache"/>
+ </fromsystem>
+ <tosystem>
+ <src module="(.*)"/>
+ <dest org="$m1"/>
+ </tosystem>
+ </rule>
+ </namespace>
+ </namespaces>
</ivysettings>
Added: incubator/ivy/core/trunk/src/etc/checkstyle/RequiredHeader.txt
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/etc/checkstyle/RequiredHeader.txt?view=auto&rev=541102
==============================================================================
--- incubator/ivy/core/trunk/src/etc/checkstyle/RequiredHeader.txt (added)
+++ incubator/ivy/core/trunk/src/etc/checkstyle/RequiredHeader.txt Wed May 23
15:22:01 2007
@@ -0,0 +1,17 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ *
+ */
Added: incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-config
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-config?view=auto&rev=541102
==============================================================================
--- incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-config (added)
+++ incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-config Wed May 23
15:22:01 2007
@@ -0,0 +1,121 @@
+<?xml version="1.0"?>
+<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.1//EN"
"http://www.puppycrawl.com/dtds/configuration_1_1.dtd">
+
+<module name="Checker">
+ <module name="TreeWalker">
+ <!-- Javadoc requirements -->
+ <module name="JavadocType">
+ <property name="scope" value="protected"/>
+ </module>
+ <module name="JavadocMethod">
+ <property name="scope" value="protected"/>
+ <property name="allowUndeclaredRTE" value="true"/>
+ </module>
+ <module name="JavadocVariable">
+ <property name="scope" value="public"/>
+ </module>
+
+ <!-- element naming -->
+ <module name="PackageName"/>
+ <module name="TypeName"/>
+ <module name="ConstantName"/>
+ <module name="LocalFinalVariableName"/>
+ <module name="LocalVariableName"/>
+ <module name="MemberName"/>
+ <module name="MethodName"/>
+ <module name="ParameterName"/>
+ <module name="StaticVariableName"/>
+
+ <!-- required licence file -->
+ <module name="Header">
+ <property name="headerFile"
value="${checkstyle.src.dir}/RequiredHeader.txt"/>
+ <property name="ignoreLines" value="2"/>
+ </module>
+
+ <!-- Import conventions -->
+ <module name="AvoidStarImport"/>
+ <!-- <module name="IllegalImport"/> -->
+ <module name="RedundantImport"/>
+ <module name="UnusedImports"/>
+
+ <!-- size limits -->
+ <module name="FileLength"/>
+ <module name="LineLength">
+ <property name="max" value="100"/>
+ <property name="ignorePattern" value="^ *\* *[^ ]+$"/>
+ </module>
+ <module name="MethodLength"/>
+ <module name="ParameterNumber"/>
+
+ <!-- whitespace checks -->
+ <module name="EmptyForIteratorPad"/>
+ <module name="NoWhitespaceAfter"/>
+ <module name="NoWhitespaceBefore"/>
+ <module name="OperatorWrap"/>
+ <module name="ParenPad"/>
+ <module name="TabCharacter"/>
+ <module name="WhitespaceAfter"/>
+ <module name="WhitespaceAround"/>
+
+ <!-- Modifier Checks -->
+ <module name="ModifierOrder"/>
+ <module name="RedundantModifier"/>
+
+
+ <!-- Checks for blocks -->
+ <module name="AvoidNestedBlocks"/>
+ <module name="EmptyBlock">
+ <property name="option" value="text"/>
+ </module>
+ <module name="LeftCurly"/>
+ <module name="NeedBraces"/>
+ <module name="RightCurly"/>
+
+
+ <!-- Checks for common coding problems -->
+ <!--<module name="AvoidInlineConditionals"/> -->
+ <module name="DoubleCheckedLocking"/>
+ <module name="EmptyStatement"/>
+ <module name="EqualsHashCode"/>
+ <module name="IllegalInstantiation">
+ <property name="classes" value="java.lang.Boolean"/>
+ </module>
+ <module name="InnerAssignment"/>
+ <module name="MagicNumber"/>
+ <module name="MissingSwitchDefault"/>
+ <module name="RedundantThrows">
+ <property name="allowUnchecked" value="true"/>
+ </module>
+ <module name="SimplifyBooleanExpression"/>
+ <module name="SimplifyBooleanReturn"/>
+
+ <!-- Checks for class design -->
+ <!-- <module name="DesignForExtension"/> -->
+ <module name="FinalClass"/>
+ <module name="HideUtilityClassConstructor"/>
+ <module name="InterfaceIsType"/>
+ <module name="VisibilityModifier"/>
+
+ <!-- Miscellaneous other checks. -->
+ <module name="ArrayTypeStyle"/>
+ <module name="GenericIllegalRegexp">
+ <property name="format" value="\s+$"/>
+ <property name="message" value="Line has trailing spaces."/>
+ </module>
+ <module name="TodoComment"/>
+ <module name="UpperEll"/>
+ <!-- allow comment suppression of checks -->
+ <module name="FileContentsHolder"/>
+ </module>
+
+ <!--TODO: comment this out, if Simian is not present -->
+ <!--
+ <module name="au.com.redhillconsulting.simian.SimianCheck"/>
+ -->
+
+ <module name="SuppressionCommentFilter">
+ <property name="offCommentFormat" value="CheckStyle\:([\w\|]+) *OFF"/>
+ <property name="onCommentFormat" value="CheckStyle\:([\w\|]+) *ON"/>
+ <property name="checkFormat" value="$1"/>
+ </module>
+</module>
Added: incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-frames.xsl
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-frames.xsl?view=auto&rev=541102
==============================================================================
--- incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-frames.xsl (added)
+++ incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-frames.xsl Wed May
23 15:22:01 2007
@@ -0,0 +1,293 @@
+<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">
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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="html" indent="yes" encoding="US-ASCII"/>
+ <xsl:decimal-format decimal-separator="." grouping-separator="," />
+
+ <xsl:param name="output.dir" select="'.'"/>
+ <xsl:param name="basedir" select="'.'"/>
+
+ <xsl:template match="checkstyle">
+ <!-- create the index.html -->
+ <redirect:write file="{$output.dir}/index.html">
+ <xsl:call-template name="index.html"/>
+ </redirect:write>
+
+ <!-- create the stylesheet.css -->
+ <redirect:write file="{$output.dir}/stylesheet.css">
+ <xsl:call-template name="stylesheet.css"/>
+ </redirect:write>
+
+ <!-- create the overview-summary.html at the root -->
+ <redirect:write file="{$output.dir}/overview-frame.html">
+ <xsl:apply-templates select="." mode="overview"/>
+ </redirect:write>
+
+ <!-- create the all-classes.html at the root -->
+ <redirect:write file="{$output.dir}/allclasses-frame.html">
+ <xsl:apply-templates select="." mode="all.classes"/>
+ </redirect:write>
+
+ <!-- process all files -->
+ <xsl:apply-templates select="file[count(error) != 0]"/>
+ </xsl:template>
+
+ <xsl:template name="index.html">
+ <html>
+ <head>
+ <title>CheckStyle Audit</title>
+ </head>
+ <frameset cols="20%,80%">
+ <frame src="allclasses-frame.html" name="fileListFrame"/>
+ <frame src="overview-frame.html" name="fileFrame"/>
+ </frameset>
+ <noframes>
+ <h2>Frame Alert</h2>
+ <p>
+ 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.
+ </p>
+ </noframes>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="pageHeader">
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr>
+ <td class="text-align:right"><h2>CheckStyle Audit</h2></td>
+ </tr>
+ <tr>
+ <td class="text-align:right">Designed for use with
+ <a href='http://checkstyle.sourceforge.net/'>CheckStyle</a>
and
+ <a href='http://ant.apache.org/'>Ant</a>.</td>
+ </tr>
+ </table>
+ <hr size="1"/>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="overview">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="stylesheet.css"/>
+ </head>
+ <body>
+ <!-- page header -->
+ <xsl:call-template name="pageHeader"/>
+
+ <!-- Summary part -->
+ <xsl:apply-templates select="." mode="summary"/>
+ <hr size="1" width="100%" align="left"/>
+
+ <!-- File list part -->
+ <xsl:apply-templates select="." mode="filelist"/>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template name="stylesheet.css">
+ .bannercell {
+ border: 0px;
+ padding: 0px;
+ }
+ body {
+ margin-left: 10;
+ margin-right: 10;
+ font:normal 80% arial,helvetica,sanserif;
+ background-color:#FFFFFF;
+ color:#000000;
+ }
+ .oddrow td {
+ background: #efefef;
+ }
+ .evenrow td {
+ background: #fff;
+ }
+ th, td {
+ text-align: left;
+ vertical-align: top;
+ }
+ th {
+ font-weight:bold;
+ background: #ccc;
+ color: black;
+ }
+ table, th, td {
+ font-size:100%;
+ border: none
+ }
+ table.log tr td, tr th {
+
+ }
+ h2 {
+ font-weight:bold;
+ font-size:140%;
+ margin-bottom: 5;
+ }
+ h3 {
+ font-size:100%;
+ font-weight:bold;
+ background: #525D76;
+ color: white;
+ text-decoration: none;
+ padding: 5px;
+ margin-right: 2px;
+ margin-left: 2px;
+ margin-bottom: 0;
+ }
+ </xsl:template>
+
+ <!--
+ Creates an all-classes.html file that contains a link to all files.
+ -->
+ <xsl:template match="checkstyle" mode="all.classes">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="stylesheet.css"/>
+ </head>
+ <body>
+ <h2>Files</h2>
+ <p>
+ <table width="100%">
+ <!-- For each file create its part -->
+ <xsl:apply-templates select="file[count(error) != 0]"
mode="all.classes">
+ <xsl:sort select="substring-after(@name,
$basedir)"/>
+ </xsl:apply-templates>
+ </table>
+ </p>
+ </body>
+ </html>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="filelist">
+ <h3>Files</h3>
+ <table class="log" border="0" cellpadding="5" cellspacing="2"
width="100%">
+ <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>
+ </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" mode="all.classes">
+ <tr>
+ <td nowrap="nowrap">
+ <a target="fileFrame">
+ <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>
+ </tr>
+ </xsl:template>
+
+ <!--
+ transform string like a/b/c to ../../../
+ @param path the path to transform into a descending directory path
+ -->
+ <xsl:template name="path">
+ <xsl:param name="path"/>
+ <xsl:if test="contains($path,'/')">
+ <xsl:text>../</xsl:text>
+ <xsl:call-template name="path">
+ <xsl:with-param name="path"><xsl:value-of
select="substring-after($path,'/')"/></xsl:with-param>
+ </xsl:call-template>
+ </xsl:if>
+ <xsl:if test="not(contains($path,'/')) and not($path = '')">
+ <xsl:text>../</xsl:text>
+ </xsl:if>
+ </xsl:template>
+
+ <xsl:template match="file">
+ <redirect:write file="{$output.dir}/files/{substring-after(@name,
$basedir)}.html">
+ <html>
+ <head>
+ <link rel="stylesheet" type="text/css">
+ <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>
+ </link>
+ </head>
+ <body>
+ <xsl:call-template name="pageHeader"/>
+ <h3>File <xsl:value-of select="substring-after(@name,
$basedir)"/></h3>
+ <table class="log" border="0" cellpadding="5"
cellspacing="2" width="100%">
+ <tr>
+ <th>Error Description</th>
+ <th>Line:Column</th>
+ </tr>
+ <xsl:for-each select="error">
+ <tr>
+ <xsl:call-template name="alternated-row"/>
+ <td><a title="[EMAIL PROTECTED]"><xsl:value-of
select="@message"/></a></td>
+ <td align="center"><xsl:value-of
select="@line"/><xsl:if test="@column">:<xsl:value-of
select="@column"/></xsl:if></td>
+ </tr>
+ </xsl:for-each>
+ </table>
+ </body>
+ </html>
+ </redirect:write>
+ </xsl:template>
+
+ <xsl:template match="checkstyle" mode="summary">
+ <h3>Summary</h3>
+ <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 class="log" border="0" cellpadding="5" cellspacing="2"
width="100%">
+ <tr>
+ <th>Total 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>
+ </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>
\ No newline at end of file
Added: incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-text.xsl
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-text.xsl?view=auto&rev=541102
==============================================================================
--- incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-text.xsl (added)
+++ incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-text.xsl Wed May 23
15:22:01 2007
@@ -0,0 +1,33 @@
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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:strip-space elements="checkstyle"/>
+ <xsl:preserve-space elements="file"/>
+ <xsl:output method="text"/>
+ <xsl:template match="checkstyle/file/error">
+ <xsl:value-of select="../@name"/>
+ <xsl:text>:</xsl:text>
+ <xsl:value-of select="@line"/>
+ <xsl:text>:</xsl:text>
+ <xsl:value-of select="@column"/>
+ <xsl:text> </xsl:text>
+ <xsl:value-of select="@message"/>
+ </xsl:template>
+</xsl:stylesheet>
+
Added: incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-xdoc.xsl
URL:
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-xdoc.xsl?view=auto&rev=541102
==============================================================================
--- incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-xdoc.xsl (added)
+++ incubator/ivy/core/trunk/src/etc/checkstyle/checkstyle-xdoc.xsl Wed May 23
15:22:01 2007
@@ -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">
+
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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="[EMAIL PROTECTED]"><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>
+