Files
maven-plugins/changes/src/plugin-resources/changes.jsl
T

85 lines
3.0 KiB
XML

<?xml version="1.0"?>
<jsl:stylesheet
select="$doc"
xmlns:j="jelly:core"
xmlns:jsl="jelly:jsl"
xmlns:x="jelly:xml"
xmlns="dummy" trim="false">
<jsl:template match="document">
<document>
<jsl:applyTemplates select="*"/>
</document>
</jsl:template>
<jsl:template match="body" trim="false">
<body>
<!-- Index of releases -->
<section name="Release History">
<table>
<tr><th style='width:50px'>Version</th><th>Date</th><th>Description</th></tr>
<x:forEach select="release">
<tr>
<j:set var="version"><x:expr select="@version"/></j:set>
<j:set var="date"><x:expr select="@date"/></j:set>
<j:set var="description"><x:expr select="@description"/></j:set>
<td><a href="#${version}">${version}</a></td>
<td>${date}</td>
<td>${description}</td>
</tr>
</x:forEach>
</table>
</section>
<!-- Release information -->
<jsl:applyTemplates select="*"/>
</body>
</jsl:template>
<jsl:template match="release">
<j:set var="sectionName">Release <x:expr select="@version"/> - <x:expr select="@date"/></j:set>
<j:set var="version"><x:expr select="@version"/></j:set>
<section name="${sectionName}">
<a name="${version}"/>
<table>
<tr><th style='width:50px'>Type</th><th>Changes</th><th style='width:70px'>By</th></tr>
<jsl:applyTemplates select="*"/>
</table>
</section>
</jsl:template>
<jsl:template match="action">
<j:set var="type"><x:expr select="@type"/></j:set>
<j:set var="dev"><x:expr select="@dev"/></j:set>
<j:set var="issue"><x:expr select="@issue"/></j:set>
<tr>
<td><img src="images/${type}.gif" alt="${type}"/></td>
<td>
<jsl:applyTemplates trim="false"/>
<j:if test="${issue != null}">
<j:useBean var="finder" class="org.apache.maven.changes.IssueFinder"/>
<j:set var="template" value="${maven.changes.issue.template}"/>
<j:set var="trackerURL" value="${pom.issueTrackingUrl}"/>
Fixes <a href="${finder.getIssueURL(trackerURL,issue,template)}">${issue}</a>
</j:if>
</td>
<td><a href="team-list.html#${dev}">${dev}</a></td>
</tr>
</jsl:template>
<jsl:template match="*">
<jsl:copy trim="false">
<jsl:applyTemplates trim="false"/>
</jsl:copy>
</jsl:template>
<!-- element values don't pass through as text -->
<jsl:template match="@*"/>
<!-- CDATA and text nodes pass-thru -->
<jsl:template match="text()">
<x:expr select="."/>
</jsl:template>
</jsl:stylesheet>