PR: MPXDOC-128
Submitted by: Vincent Siveton Reviewed by: Brett Porter, Arnaud Heritier Internationalization support for xdoc. Applied with changes git-svn-id: https://svn.apache.org/repos/asf/maven/maven-1/plugins/trunk@171222 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
489cf92482
commit
4e177daa2d
@ -1,4 +1,4 @@
|
||||
<?xml version="1.0"?>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
@ -28,11 +28,11 @@
|
||||
xmlns:x="jelly:xml"
|
||||
xmlns:velocity="jelly:velocity"
|
||||
xmlns:ant="jelly:ant"
|
||||
xmlns:fmt="jelly:fmt"
|
||||
xmlns:doc="doc">
|
||||
|
||||
<j:new var="reports" className="java.util.ArrayList"/>
|
||||
|
||||
|
||||
<define:taglib uri="doc">
|
||||
<define:tag name="deregisterReport">
|
||||
<!-- @name : Report to deregister, must be same as name used to register -->
|
||||
@ -67,7 +67,7 @@
|
||||
<j:set var="add" value="false"/>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
|
||||
|
||||
<j:if test="${add.equals('true')}">
|
||||
<j:new var="report" className="java.util.HashMap"/>
|
||||
<j:set var="dummy">
|
||||
@ -179,7 +179,6 @@
|
||||
prettyPrint="${prettyPrint}"/>
|
||||
</define:tag>
|
||||
|
||||
|
||||
<!--
|
||||
@link
|
||||
@relativePath
|
||||
@ -206,7 +205,7 @@
|
||||
</j:if>
|
||||
<j:if test="${empty(state)}"><j:set var="state" value="none"/></j:if>
|
||||
<j:if test="${empty(img)}">${name}</j:if>
|
||||
<j:if test="${!empty(img)}"><img style="border: 1px" src="${pathTool.calculateLink(img,relativePath)}" title="${name}" alt="${name}"/></j:if>
|
||||
<j:if test="${!empty(img)}"><img style="border: 1px" src="${pathTool.calculateLink(img, relativePath)}" title="${name}" alt="${name}"/></j:if>
|
||||
</x:element>
|
||||
</define:tag>
|
||||
|
||||
@ -227,23 +226,24 @@
|
||||
</j:if>
|
||||
|
||||
<!-- Set default encoding if not set. -->
|
||||
<j:if test="${encoding == null}">
|
||||
<j:set var="encoding"
|
||||
value="${plugin.getVariable('maven.docs.outputencoding')}"/>
|
||||
</j:if>
|
||||
|
||||
|
||||
<j:if test="${encoding == null}">
|
||||
<j:set var="encoding"
|
||||
value="${plugin.getVariable('maven.docs.outputencoding')}"/>
|
||||
</j:if>
|
||||
|
||||
<j:file name="${output}" prettyPrint="false" encoding="${encoding}">
|
||||
<document>
|
||||
<properties><title>${title}</title></properties>
|
||||
<body>
|
||||
<section name="${section}">
|
||||
<p>${preamble}</p>
|
||||
<source><![CDATA[${inputText}]]></source>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
</j:file>
|
||||
<document>
|
||||
<properties><title>${title}</title></properties>
|
||||
<body>
|
||||
<section name="${section}">
|
||||
<p>${preamble}</p>
|
||||
<source>
|
||||
<![CDATA[${inputText}]]>
|
||||
</source>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
</j:file>
|
||||
</define:tag>
|
||||
|
||||
<!-- Alternator for row style in a table -->
|
||||
@ -260,8 +260,66 @@
|
||||
</j:if>
|
||||
</define:tag>
|
||||
|
||||
<!-- Generates the JSL files on the given srcdir attribute -->
|
||||
<!-- Generates the JSL files on the given srcdir attribute depending the locale wanted -->
|
||||
<define:tag name="performJSL">
|
||||
<!-- Safety : Reinit the defaultLocale -->
|
||||
|
||||
<echo>${defaultLocale}</echo>
|
||||
|
||||
<j:if test="${defaultLocale == null}">
|
||||
<!-- Init the default language -->
|
||||
<j:invokeStatic className="org.apache.commons.lang.StringUtils" method="isEmpty" var="isEmptyLocaleDefault">
|
||||
<j:arg value="${maven.xdoc.locale.default}" type="java.lang.String"/>
|
||||
</j:invokeStatic>
|
||||
<j:if test="${isEmptyLocaleDefault}">
|
||||
<j:invokeStatic className="java.util.Locale" method="getDefault" var="defaultLocaleTmp"/>
|
||||
<j:set var="maven.xdoc.locale.default" value="${defaultLocaleTmp.toString().substring(0, 2)}"/>
|
||||
</j:if>
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="codeToLocale" var="defaultLocale">
|
||||
<j:arg value="${maven.xdoc.locale.default}" type="java.lang.String"/>
|
||||
</j:invokeStatic>
|
||||
</j:if>
|
||||
|
||||
<!-- First step: default resource bundle -->
|
||||
<doc:performJSL-i18n srcdir="${srcdir}" destdir="${destdir}" currentLocale="${defaultLocale}"/>
|
||||
|
||||
<!-- Second step: local-specific resource bundle -->
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<doc:performJSL-i18n srcdir="${srcdir}/${locale}" destdir="${destdir}/${locale}" currentLocale="${locale}"/>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</define:tag>
|
||||
|
||||
<define:tag name="performJSLTransform">
|
||||
<!-- Safety : Reinit the defaultLocale -->
|
||||
<j:if test="${defaultLocale == null}">
|
||||
<!-- Init the default language -->
|
||||
<j:invokeStatic className="org.apache.commons.lang.StringUtils" method="isEmpty" var="isEmptyLocaleDefault">
|
||||
<j:arg value="${maven.xdoc.locale.default}" type="java.lang.String"/>
|
||||
</j:invokeStatic>
|
||||
<j:if test="${isEmptyLocaleDefault}">
|
||||
<j:invokeStatic className="java.util.Locale" method="getDefault" var="defaultLocaleTmp"/>
|
||||
<j:set var="maven.xdoc.locale.default" value="${defaultLocaleTmp.toString().substring(0, 2)}"/>
|
||||
</j:if>
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="codeToLocale" var="defaultLocale">
|
||||
<j:arg value="${maven.xdoc.locale.default}" type="java.lang.String"/>
|
||||
</j:invokeStatic>
|
||||
</j:if>
|
||||
|
||||
<!-- First step: default resource bundle -->
|
||||
<doc:performJSL-i18n srcdir="${srcdir}" destdir="${destdir}" currentLocale="${defaultLocale}"/>
|
||||
|
||||
<!-- Second step: local-specific resource bundle -->
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<doc:performJSL-i18n srcdir="${srcdir}" destdir="${destdir}/${locale}" currentLocale="${locale}"/>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</define:tag>
|
||||
|
||||
<!-- Generates the JSL files on the given srcdir attribute -->
|
||||
<define:tag name="performJSL-i18n">
|
||||
<util:file var="srcdirFile" name="${srcdir}"/>
|
||||
<j:set var="srcdir" value="${srcdirFile.getCanonicalPath()}"/>
|
||||
<util:file var="destdirFile" name="${destdir}"/>
|
||||
@ -282,102 +340,150 @@
|
||||
<maven:pluginVar var="maven_xdoc_xml_copy_pattern"
|
||||
plugin='maven-xdoc-plugin' property='maven.xdoc.xml.copy' />
|
||||
|
||||
<fileScanner var="docFiles">
|
||||
<fileset dir="${srcdir}">
|
||||
<patternset>
|
||||
<exclude name="**/project.xml"/>
|
||||
<exclude name="**/template.xml"/>
|
||||
<exclude name="**/navigation.xml"/>
|
||||
<exclude name="changes.xml"/>
|
||||
<j:if test="${maven_xdoc_xml_copy_pattern!=null and !maven_xdoc_xml_copy_pattern.equals('')}">
|
||||
<util:tokenize var="xmlPatterns" delim=",">${maven_xdoc_xml_copy_pattern}</util:tokenize>
|
||||
<j:forEach var="xmlPattern" items="${xmlPatterns}">
|
||||
<exclude name="${xmlPattern}"/>
|
||||
</j:forEach>
|
||||
</j:if>
|
||||
<include name="**/*.xml"/>
|
||||
</patternset>
|
||||
</fileset>
|
||||
</fileScanner>
|
||||
<!-- Set the current locale as default -->
|
||||
<j:if test="${currentLocale.equals(defaultLocale)}">
|
||||
<fmt:setLocale value="${defaultLocale}"/>
|
||||
</j:if>
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<fmt:setLocale value="${currentLocale}"/>
|
||||
</j:if>
|
||||
<fmt:setBundle basename="plugin-resources/templates/templates" var="msg"/>
|
||||
<!-- User bundle -->
|
||||
<!-- Goal grabClassLoader should be call first -->
|
||||
<maven:grabClassLoader resource="${maven.xdoc.bundle.src}"/>
|
||||
<!-- Failed
|
||||
<doc:grabClassLoader resource="${maven.xdoc.bundle.src}"/>
|
||||
-->
|
||||
<fmt:setBundle basename="${maven.xdoc.bundle}" var="myMsg"/>
|
||||
|
||||
<!-- determine nav file to be used:- 1. check for sitewide nav files -->
|
||||
<!-- supplied nav file as project.xml in stylesheets dir -->
|
||||
<util:available file="${maven.docs.src}/stylesheets/project.xml">
|
||||
<util:file var="siteNavFile" name="${maven.docs.src}/stylesheets/project.xml"/>
|
||||
</util:available>
|
||||
<!-- supplied nav file as project.xml in root of xdocs source tree -->
|
||||
<util:available file="${maven.docs.src}/project.xml">
|
||||
<util:file var="siteNavFile" name="${maven.docs.src}/project.xml"/>
|
||||
</util:available>
|
||||
<!-- supplied navigation file in root of xdocs source tree -->
|
||||
<util:available file="${maven.docs.src}/navigation.xml">
|
||||
<util:file var="siteNavFile" name="${maven.docs.src}/navigation.xml"/>
|
||||
</util:available>
|
||||
<!-- navigation file that was generated -->
|
||||
<util:available file="${maven.gen.docs}/navigation.xml">
|
||||
<util:file var="siteNavFile" name="${maven.gen.docs}/navigation.xml"/>
|
||||
</util:available>
|
||||
<!-- hold onto maven.docs.src for later -->
|
||||
<util:file var="docsSrcFile" name="${maven.docs.src}"/>
|
||||
<!-- Echo information -->
|
||||
<j:if test="${currentLocale.equals(defaultLocale)}">
|
||||
<echo message="The current Locale is the default one"/>
|
||||
</j:if>
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<echo message="The current Locale is '${currentLocale}'"/>
|
||||
</j:if>
|
||||
<echo message="Scanning '${srcdir}'..."/>
|
||||
|
||||
<!-- parse the project nav. Someone jellier than me can remove the temp file requirement -->
|
||||
<maven:pluginVar var="reports" plugin="maven-xdoc-plugin" property="reports" />
|
||||
|
||||
<util:file var="tempnav" name="${maven.build.dir}/project-nav.xml"/>
|
||||
<!-- This test is only used to prevent error if other plugins calls this tag like linkcheck -->
|
||||
<util:available file="${srcdir}">
|
||||
<fileScanner var="docFiles">
|
||||
<fileset dir="${srcdir}">
|
||||
<patternset>
|
||||
<exclude name="**/project.xml"/>
|
||||
<exclude name="**/template.xml"/>
|
||||
<exclude name="**/navigation.xml"/>
|
||||
<exclude name="changes.xml"/>
|
||||
<exclude name="**/*.properties"/>
|
||||
<j:if test="${maven_xdoc_xml_copy_pattern!=null and !maven_xdoc_xml_copy_pattern.equals('')}">
|
||||
<util:tokenize var="xmlPatterns" delim=",">${maven_xdoc_xml_copy_pattern}</util:tokenize>
|
||||
<j:forEach var="xmlPattern" items="${xmlPatterns}">
|
||||
<exclude name="${xmlPattern}"/>
|
||||
</j:forEach>
|
||||
</j:if>
|
||||
<include name="**/*.xml"/>
|
||||
<j:if test="${currentLocale.equals(defaultLocale)}">
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<exclude name="${locale}/**"/>
|
||||
</j:forEach>
|
||||
</j:if>
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:if test="${currentLocale.equals(locale)}">
|
||||
<include name="${locale}/**"/>
|
||||
</j:if>
|
||||
<j:if test="${!currentLocale.equals(locale)}">
|
||||
<exclude name="${locale}/**"/>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</j:if>
|
||||
</patternset>
|
||||
</fileset>
|
||||
</fileScanner>
|
||||
|
||||
<j:file name="${tempnav.toString()}" outputMode="xml">
|
||||
<j:import file="${plugin.resources}/navigation.jelly" inherit="true"/>
|
||||
</j:file>
|
||||
|
||||
<x:parse var="projectNavRoot" xml="${tempnav}"/>
|
||||
<x:set var="projectNav" select="$projectNavRoot/project"/>
|
||||
|
||||
<j:forEach var="file" items="${docFiles.iterator()}">
|
||||
|
||||
<util:replace var="inDirForward" oldChar="\" newChar="/" value="${file.parent}"/>
|
||||
<j:set var="outDir" value="${dirMapper.mapFileName(inDirForward).0}"/>
|
||||
<mkdir dir="${outDir}"/>
|
||||
|
||||
<!-- generate output file name -->
|
||||
<util:replace var="outFileForward" oldChar="\" newChar="/" value="${file.toString()}"/>
|
||||
<j:set var="outFile" value="${mapper.mapFileName(outFileForward).0}"/>
|
||||
|
||||
<echo>Generating ${outFile} from ${file}</echo>
|
||||
<!-- work out relative path -->
|
||||
<util:replace var="docsForward" oldChar="\" newChar="/" value="${srcdir}"/>
|
||||
<j:if test="${pathTool == null}">
|
||||
<j:useBean var="pathTool" class="org.apache.maven.util.DVSLPathTool"/>
|
||||
</j:if>
|
||||
<j:set var="relativePath" value="${pathTool.getRelativePath(docsForward, outFileForward)}"/>
|
||||
|
||||
<!-- determine nav file to be used: 2. check for nav file -->
|
||||
<!-- in the same directory as xml file being processed -->
|
||||
<!-- if no such nav file available use sitewide nav file -->
|
||||
<j:set var="navFile" value="${siteNavFile}" />
|
||||
<util:available file="${file.parentFile.absoluteFile}/navigation.xml">
|
||||
<!-- dont use current directory navigation.xml if it's in maven.docs.src -->
|
||||
<j:if test="${!(file.parentFile.equals(docsSrcFile))}">
|
||||
<util:file var="navFile" name="${file.parentFile.absoluteFile}/navigation.xml"/>
|
||||
</j:if>
|
||||
</util:available>
|
||||
|
||||
<!-- parse nav and make it available to the stylesheet -->
|
||||
<j:if test="${navFile != null}">
|
||||
<x:parse var="navXML" xml="${navFile}"/>
|
||||
<x:set var="nav" select="$navXML/project"/>
|
||||
</j:if>
|
||||
<!-- parse the doc and pass it to the stylesheet -->
|
||||
<x:parse var="doc" xml="${file}"/>
|
||||
<!-- determine nav file to be used:- 1. check for sitewide nav files -->
|
||||
<!-- supplied nav file as project.xml in stylesheets dir -->
|
||||
<util:available file="${maven.docs.src}/stylesheets/project.xml">
|
||||
<util:file var="siteNavFile" name="${maven.docs.src}/stylesheets/project.xml"/>
|
||||
</util:available>
|
||||
<!-- supplied nav file as project.xml in root of xdocs source tree -->
|
||||
<util:available file="${maven.docs.src}/project.xml">
|
||||
<util:file var="siteNavFile" name="${maven.docs.src}/project.xml"/>
|
||||
</util:available>
|
||||
<!-- supplied navigation file in root of xdocs source tree -->
|
||||
<util:available file="${maven.docs.src}/navigation.xml">
|
||||
<util:file var="siteNavFile" name="${maven.docs.src}/navigation.xml"/>
|
||||
</util:available>
|
||||
<!-- navigation file that was generated -->
|
||||
<util:available file="${maven.gen.docs}/navigation.xml">
|
||||
<util:file var="siteNavFile" name="${maven.gen.docs}/navigation.xml"/>
|
||||
</util:available>
|
||||
<!-- hold onto maven.docs.src for later -->
|
||||
<util:file var="docsSrcFile" name="${maven.docs.src}"/>
|
||||
|
||||
<!-- parse the project nav. Someone jellier than me can remove the temp file requirement -->
|
||||
<maven:pluginVar var="reports" plugin="maven-xdoc-plugin" property="reports" />
|
||||
|
||||
<util:file var="tempnav" name="${maven.build.dir}/project-nav.xml"/>
|
||||
|
||||
<j:file name="${outFile}" encoding="${outputencoding}"
|
||||
omitXmlDeclaration="true" outputMode="xml"
|
||||
prettyPrint="no">
|
||||
<j:include uri="${stylesheet.toString()}"/>
|
||||
</j:file>
|
||||
</j:forEach>
|
||||
|
||||
</define:tag>
|
||||
<j:file name="${tempnav.toString()}" outputMode="xml">
|
||||
<j:import file="${plugin.resources}/navigation.jelly" inherit="true"/>
|
||||
</j:file>
|
||||
|
||||
<x:parse var="projectNavRoot" xml="${tempnav}"/>
|
||||
<x:set var="projectNav" select="$projectNavRoot/project"/>
|
||||
|
||||
<j:forEach var="file" items="${docFiles.iterator()}">
|
||||
<util:replace var="inDirForward" oldChar="\" newChar="/" value="${file.parent}"/>
|
||||
<j:set var="outDir" value="${dirMapper.mapFileName(inDirForward).0}"/>
|
||||
<mkdir dir="${outDir}"/>
|
||||
|
||||
<!-- generate output file name -->
|
||||
<util:replace var="outFileForward" oldChar="\" newChar="/" value="${file.toString()}"/>
|
||||
<j:set var="outFile" value="${mapper.mapFileName(outFileForward).0}"/>
|
||||
|
||||
<echo>Generating ${outFile} from ${file}</echo>
|
||||
<!-- work out relative path -->
|
||||
<util:replace var="docsForward" oldChar="\" newChar="/" value="${srcdir}"/>
|
||||
<j:if test="${pathTool == null}">
|
||||
<j:useBean var="pathTool" class="org.apache.maven.util.DVSLPathTool"/>
|
||||
</j:if>
|
||||
<j:set var="relativePath" value="${pathTool.getRelativePath(docsForward, outFileForward)}"/>
|
||||
<j:set var="relativePathForLocale" value="${pathTool.getRelativePath(docsForward, outFileForward)}"/>
|
||||
|
||||
<!-- Relative path if locale used -->
|
||||
<j:set var="relativePathForLocale" value="${relativePath}/"/>
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<j:set var="relativePathForLocale" value="${relativePath}/../"/>
|
||||
</j:if>
|
||||
|
||||
<!-- determine nav file to be used: 2. check for nav file -->
|
||||
<!-- in the same directory as xml file being processed -->
|
||||
<!-- if no such nav file available use sitewide nav file -->
|
||||
<j:set var="navFile" value="${siteNavFile}" />
|
||||
<util:available file="${file.parentFile.absoluteFile}/navigation.xml">
|
||||
<!-- dont use current directory navigation.xml if it's in maven.docs.src -->
|
||||
<j:if test="${!(file.parentFile.equals(docsSrcFile))}">
|
||||
<util:file var="navFile" name="${file.parentFile.absoluteFile}/navigation.xml"/>
|
||||
</j:if>
|
||||
</util:available>
|
||||
|
||||
<!-- parse nav and make it available to the stylesheet -->
|
||||
<j:if test="${navFile != null}">
|
||||
<x:parse var="navXML" xml="${navFile}"/>
|
||||
<x:set var="nav" select="$navXML/project"/>
|
||||
</j:if>
|
||||
<!-- parse the doc and pass it to the stylesheet -->
|
||||
<x:parse var="doc" xml="${file}"/>
|
||||
<j:file name="${outFile}" encoding="${outputencoding}"
|
||||
omitXmlDeclaration="true" outputMode="xml"
|
||||
prettyPrint="no">
|
||||
<j:include uri="${stylesheet.toString()}"/>
|
||||
</j:file>
|
||||
</j:forEach>
|
||||
|
||||
</util:available>
|
||||
</define:tag>
|
||||
|
||||
<define:tag name="jslToSite">
|
||||
<!--
|
||||
@ -421,7 +527,6 @@
|
||||
|
||||
<!-- restore plugin.resources -->
|
||||
<j:set var="plugin.resources" value="${previous.plugin.resources}" />
|
||||
|
||||
</define:tag>
|
||||
|
||||
<!--
|
||||
@ -435,6 +540,39 @@
|
||||
<j:arg type="java.lang.String" value="__________________" useContextClassLoader="true"/>
|
||||
</j:invokeStatic>${escapedtoken}</define:tag>
|
||||
|
||||
<!--
|
||||
Grab the existing classloader
|
||||
Create a new classloader that inherits the current one
|
||||
Add URL to the classloader
|
||||
|
||||
@resource
|
||||
-->
|
||||
<define:tag name="grabClassLoader">
|
||||
<maven:param-check value="${resource}" fail="true" message="'resource' must be specified"/>
|
||||
|
||||
<util:file var="dirResource" name="${resource}" />
|
||||
<j:set var="currentClassLoader" value="${context.getClassLoader()}"/>
|
||||
<log:debug>Start to grab the current class loader ${currentClassLoader}</log:debug>
|
||||
|
||||
<j:set var="dummy">${currentClassLoader.addURL(dirResource.toURL())}</j:set>
|
||||
|
||||
<j:new className="com.werken.forehead.ForeheadClassLoader" var="foreheadClassLoader">
|
||||
<j:arg value="${currentClassLoader}" />
|
||||
<j:arg value="${currentClassLoader.getName()}_TEMP" />
|
||||
</j:new>
|
||||
<j:set var="dummy">${context.setClassLoader(foreheadClassLoader)}</j:set>
|
||||
</define:tag>
|
||||
|
||||
<!--
|
||||
Returns the old classloader
|
||||
-->
|
||||
<define:tag name="unGrabClassLoader">
|
||||
<maven:param-check value="${foreheadClassLoader}" fail="true" message="Please call xdoc:grabClassLoader first"/>
|
||||
|
||||
<j:set var="currentClassLoader" value="${context.getClassLoader()}"/>
|
||||
<log:debug>Start to ungrab the current class loader ${currentClassLoader}</log:debug>
|
||||
<j:set var="dummy">${context.setClassLoader(currentClassLoader.getParent())}</j:set>
|
||||
</define:tag>
|
||||
</define:taglib>
|
||||
|
||||
<!-- ================================================================== -->
|
||||
@ -446,16 +584,86 @@
|
||||
description="Generate html project documentation xdoc sources"/>
|
||||
|
||||
<goal name="xdoc:init"
|
||||
prereqs="xdoc:init-i18n"
|
||||
description="Generates the directory structure required for xdocs">
|
||||
|
||||
|
||||
<echo message="Generates the directory structure required for xdocs"/>
|
||||
|
||||
<mkdir dir="${maven.gen.docs}"/>
|
||||
<mkdir dir="${maven.docs.dest}"/>
|
||||
|
||||
</goal>
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<mkdir dir="${maven.gen.docs}/${locale}"/>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</goal>
|
||||
|
||||
<goal name="xdoc:init-i18n"
|
||||
description="Init the i18n support">
|
||||
|
||||
<j:if test="${initI18n == null}">
|
||||
<echo message="Init the i18n support"/>
|
||||
|
||||
<!-- Init the default language -->
|
||||
<j:invokeStatic className="org.apache.commons.lang.StringUtils" method="isEmpty" var="isEmptyLocaleDefault">
|
||||
<j:arg value="${maven.xdoc.locale.default}" type="java.lang.String"/>
|
||||
</j:invokeStatic>
|
||||
<j:if test="${isEmptyLocaleDefault}">
|
||||
<j:invokeStatic className="java.util.Locale" method="getDefault" var="defaultLocaleTmp"/>
|
||||
<j:set var="maven.xdoc.locale.default" value="${defaultLocaleTmp.toString().substring(0, 2)}"/>
|
||||
</j:if>
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="codeToLocale" var="defaultLocale">
|
||||
<j:arg value="${maven.xdoc.locale.default}" type="java.lang.String"/>
|
||||
</j:invokeStatic>
|
||||
|
||||
<!-- Init locales variables and create local-specific directories -->
|
||||
<j:catch var="ex">
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="codesToLocales" var="locales">
|
||||
<j:arg value="${maven.xdoc.locale.supported}" type="java.lang.String"/>
|
||||
</j:invokeStatic>
|
||||
</j:catch>
|
||||
<j:if test="${ex != null}">
|
||||
<log:debug>java.lang.reflect.InvocationTargetException</log:debug>
|
||||
<log:debug>Caused by: org.apache.maven.xdoc.util.LocaleUtil.codesToLocales(java.lang.String)</log:debug>
|
||||
<log:debug>${ex.getCause().getTargetException().getMessage()}</log:debug>
|
||||
</j:if>
|
||||
<j:if test="${ex == null}">
|
||||
<j:set var="localeList.isValid" value="true"/>
|
||||
</j:if>
|
||||
<maven:param-check value="${localeList.isValid}" fail="true"
|
||||
message="ERROR: The locales list '${maven.xdoc.locale.supported}' seems to contain invalid locale code. Verify the 'maven.xdoc.locale.supported' property."/>
|
||||
|
||||
<log:debug>defaultLocale=[${defaultLocale}]</log:debug>
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<log:debug>locale_supported=[${locale}]</log:debug>
|
||||
</j:forEach>
|
||||
|
||||
<j:set var="initI18n" value="true"/>
|
||||
</j:if>
|
||||
</goal>
|
||||
|
||||
<!-- Validate the user locale entries -->
|
||||
<goal name="xdoc:i18n-validation"
|
||||
description="Validation of the locale entries for internationalization support">
|
||||
|
||||
<echo message="Validation of the locale entries"/>
|
||||
|
||||
<j:invokeStatic method="getAvailableLocales" className="java.util.Locale" var="availableLocales"/>
|
||||
<j:invokeStatic className="java.util.Arrays" method="asList" var="availableLocalesAsList">
|
||||
<j:arg value="${availableLocales}" type="[Ljava.lang.Object;"/>
|
||||
</j:invokeStatic>
|
||||
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:if test="${!availableLocalesAsList.contains(locale)}">
|
||||
<echo message="WARNING: The locale '${locale}' is not a valid one."/>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</goal>
|
||||
|
||||
<goal
|
||||
name="xdoc:generate-from-pom"
|
||||
prereqs="xdoc:init, xdoc:register-reports"
|
||||
prereqs="xdoc:init, xdoc:i18n-validation, xdoc:register-reports"
|
||||
description="Generates xdocs for site based on project descriptor">
|
||||
|
||||
<echo>Generating xdocs from POM ... </echo>
|
||||
@ -512,9 +720,35 @@
|
||||
<fail>Unknown report format for report [${pomDocument}].</fail>
|
||||
</j:otherwise>
|
||||
</j:choose>
|
||||
|
||||
</j:forEach>
|
||||
|
||||
<!-- Copy all generated files in an internationalize site structure, ie:
|
||||
|__ en\
|
||||
|__ index.xml
|
||||
|__ ... (mail-lists.xml, maven-reports.xml...)
|
||||
|__ fr\
|
||||
|__ index.xml
|
||||
|__ ... (mail-lists.xml, maven-reports.xml...)
|
||||
|__ index.xml
|
||||
|__ ... (mail-lists.xml, maven-reports.xml...)
|
||||
-->
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<copy todir="${maven.gen.docs}/${locale}" filtering="no">
|
||||
<fileset dir="${maven.gen.docs}">
|
||||
<exclude name="**/CVS/*"/>
|
||||
<exclude name="images/**"/>
|
||||
<exclude name="**/*.properties"/>
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<exclude name="${locale}/**"/>
|
||||
</j:forEach>
|
||||
<exclude name="stylesheets/*"/>
|
||||
<include name="**/*.xml"/>
|
||||
<include name="**/*.fml"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</goal>
|
||||
|
||||
<!-- ================================================================== -->
|
||||
@ -548,7 +782,6 @@
|
||||
<!-- ================================================================== -->
|
||||
<!-- C O P Y R E S O U R C E S -->
|
||||
<!-- ================================================================== -->
|
||||
|
||||
<!-- copy resources needed for xdocs -->
|
||||
<goal name="xdoc:copy-resources"
|
||||
prereqs="xdoc:init"
|
||||
@ -603,7 +836,7 @@
|
||||
</j:if>
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
|
||||
<!-- excluded by default from previous -->
|
||||
<j:set var="var" value="${maven.xdoc.poweredby.image}" />
|
||||
<j:if test="${!empty(var)}">
|
||||
@ -616,14 +849,43 @@
|
||||
<!-- ================================================================== -->
|
||||
<!-- C O P Y U S E R S U P P L I E D R E S O U R C E S -->
|
||||
<!-- ================================================================== -->
|
||||
<!-- copy user bundles for xdocs -->
|
||||
<!-- Known issue with a multiproject goal. -->
|
||||
<!-- http://www.mail-archive.com/dev@maven.apache.org/msg21646.html -->
|
||||
<!-- Lets see multiproject:prepare-site-i18n -->
|
||||
<goal name="xdoc:copy-user-bundles"
|
||||
description="Copy user provided resources to docs destination">
|
||||
<!--
|
||||
<available file="${maven.docs.src}" type="dir"
|
||||
property="maven.docs.src.available"/>
|
||||
|
||||
<j:if test="${maven.docs.src.available}">
|
||||
<log:info>
|
||||
Copying user bundles.
|
||||
</log:info>
|
||||
<util:available file="${maven.xdoc.bundle.src}/${maven.xdoc.bundle}.properties">
|
||||
<copy todir="${plugin.resources}/temp" filtering="no">
|
||||
<fileset dir="${maven.xdoc.bundle.src}">
|
||||
<include name="${maven.xdoc.bundle}*"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
<j:set var="user.bundle.available" value="true"/>
|
||||
</util:available>
|
||||
|
||||
<j:if test="${!empty(maven.xdoc.locale.supported)}">
|
||||
<maven:param-check value="${user.bundle.available}" fail="true"
|
||||
message="ERROR: Unable to translate the documentation. Disagreement between the definition of 'maven.xdoc.locale.supported' property and the local-specific resources bundles."/>
|
||||
</j:if>
|
||||
</j:if>
|
||||
-->
|
||||
</goal>
|
||||
|
||||
<!-- copy user resources -->
|
||||
<goal name="xdoc:copy-user-resources"
|
||||
prereqs="xdoc:init"
|
||||
prereqs="xdoc:init, xdoc:copy-user-bundles"
|
||||
description="Copy user provided resources to docs destination">
|
||||
|
||||
<j:if test="${maven.docs.src.available}">
|
||||
|
||||
<log:info>
|
||||
Copying user supplied resources.
|
||||
</log:info>
|
||||
@ -635,15 +897,50 @@
|
||||
<exclude name="**/*.fml"/>
|
||||
<exclude name="**/CVS/*"/>
|
||||
<exclude name="stylesheets/*"/>
|
||||
<exclude name="**/*.properties"/>
|
||||
</fileset>
|
||||
<!-- copy file in generated docs folder: this allows for reporting plugins to add images -->
|
||||
|
||||
<fileset dir="${maven.gen.docs}">
|
||||
<exclude name="**/*.xml"/>
|
||||
<exclude name="**/CVS/*"/>
|
||||
<exclude name="**/*.properties"/>
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<exclude name="${locale}/**"/>
|
||||
</j:forEach>
|
||||
<exclude name="stylesheets/*"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
|
||||
<!-- Copy all default site structure to differents locales -->
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<copy todir="${maven.gen.docs}/${locale}" filtering="no">
|
||||
<fileset dir="${maven.docs.src}">
|
||||
<exclude name="**/CVS/*"/>
|
||||
<exclude name="images/**"/>
|
||||
<exclude name="**/*.properties"/>
|
||||
<include name="**/*.xml"/>
|
||||
<include name="**/*.fml"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
|
||||
<!-- Multi project bugs
|
||||
<util:available file="${maven.xdoc.bundle.src}/${maven.xdoc.bundle}.properties">
|
||||
<copy todir="${plugin.resources}/temp" filtering="no">
|
||||
<fileset dir="${maven.xdoc.bundle.src}">
|
||||
<include name="${maven.xdoc.bundle}*"/>
|
||||
</fileset>
|
||||
</copy>
|
||||
<j:set var="user.bundle.available" value="true"/>
|
||||
</util:available>
|
||||
|
||||
<j:if test="${!empty(maven.xdoc.locale.supported)}">
|
||||
<maven:param-check value="${user.bundle.available}" fail="true"
|
||||
message="ERROR: Unable to translate the documentation. Disagreement between the definition of 'maven.xdoc.locale.supported' property and the local-specific resources bundles."/>
|
||||
</j:if>
|
||||
-->
|
||||
<util:available file="${maven.docs.src}/stylesheets">
|
||||
<!-- Copy user supplied stylesheets, can override maven -->
|
||||
<copy todir="${maven.docs.dest}/style">
|
||||
@ -652,8 +949,7 @@
|
||||
</fileset>
|
||||
</copy>
|
||||
</util:available>
|
||||
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<maven:pluginVar var="maven_xdoc_xml_copy_pattern"
|
||||
plugin='maven-xdoc-plugin' property='maven.xdoc.xml.copy' />
|
||||
@ -683,12 +979,7 @@
|
||||
prereqs="xdoc:init"
|
||||
description="Generate html project documentation xdoc sources">
|
||||
|
||||
<tstamp>
|
||||
<format property="mavenCurrentYear" pattern="yyyy"/>
|
||||
</tstamp>
|
||||
|
||||
<!-- Use jelly utils here -->
|
||||
|
||||
<available
|
||||
file="${maven.gen.docs}"
|
||||
type="dir"
|
||||
@ -705,7 +996,10 @@
|
||||
<attainGoal name="xdoc:copy-resources"/>
|
||||
<attainGoal name="xdoc:copy-user-resources"/>
|
||||
<attainGoal name="xdoc:jelly-transform"/>
|
||||
|
||||
<maven:unGrabClassLoader/>
|
||||
<!-- Failed
|
||||
<doc:unGrabClassLoader/>
|
||||
-->
|
||||
</goal>
|
||||
|
||||
<!-- ================================================================== -->
|
||||
@ -713,17 +1007,19 @@
|
||||
<!-- ================================================================== -->
|
||||
|
||||
<goal name="xdoc:jelly-init" description="Set up jelly xdoc requirements">
|
||||
<!-- moving here temporarily -->
|
||||
<tstamp>
|
||||
<format property="mavenCurrentYear" pattern="yyyy"/>
|
||||
</tstamp>
|
||||
|
||||
<!-- Set the current time in a locale-sensitive manner (pattern/locale) -->
|
||||
<tstamp>
|
||||
<format property="build.date" pattern="${maven.xdoc.date.format}"
|
||||
locale="${maven.xdoc.date.locale}"/>
|
||||
</tstamp>
|
||||
|
||||
<!-- Set the current time to display the date in the current locale -->
|
||||
<j:useBean var="now" class="java.util.Date"/>
|
||||
</goal>
|
||||
|
||||
|
||||
|
||||
<goal name="xdoc:register-reports">
|
||||
<!--
|
||||
@ -731,7 +1027,6 @@
|
||||
| build up our navbar. To do this, we call the plugin:register
|
||||
| goal on each report plugin.
|
||||
|-->
|
||||
|
||||
<j:if test="${!pom.reports.isEmpty()}">
|
||||
<j:forEach var="report" items="${pom.reports}">
|
||||
<attainGoal name="${report}:register"/>
|
||||
@ -766,7 +1061,6 @@
|
||||
|
||||
<!-- mapper for determining output file name -->
|
||||
<j:new var="mapper" className="org.apache.maven.util.CaseInsensitiveGlobPatternMapper"/>
|
||||
|
||||
|
||||
<!-- path tool for relative processing -->
|
||||
<j:useBean var="pathTool" class="org.apache.maven.util.DVSLPathTool"/>
|
||||
@ -796,11 +1090,10 @@
|
||||
<log:info>
|
||||
Transforming user supplied documentation.
|
||||
</log:info>
|
||||
<doc:performJSL srcdir="${maven.docs.src}" destdir="${maven.docs.dest}"/>
|
||||
</j:if>
|
||||
<doc:performJSLTransform srcdir="${maven.docs.src}" destdir="${maven.docs.dest}"/>
|
||||
</j:if>
|
||||
|
||||
</goal>
|
||||
|
||||
</goal>
|
||||
|
||||
<!--
|
||||
! This is required as the linkchecker runs as a final pass over the generated
|
||||
@ -808,7 +1101,7 @@
|
||||
! FIXME: Why isn't this in linkcheck?
|
||||
!-->
|
||||
<goal name="xdoc:performJSL"
|
||||
description="Allows the LinkCheck plugin to xdoc a single directory">
|
||||
description="Allows the LinkCheck plugin to xdoc a single directory">
|
||||
|
||||
<maven:pluginVar var="maven.xdoc.src" plugin="maven-linkcheck-plugin" property="maven.xdoc.src" />
|
||||
<doc:performJSL
|
||||
@ -832,6 +1125,14 @@
|
||||
<ant:delete file="${basedir}/velocity.log.1" quiet="true" failonerror="false"/>
|
||||
</goal>
|
||||
|
||||
<!-- Used to clean the directory ${user.home}/.maven/cache/maven-xdoc-plugin-XXX/plugin-resources/temp/ -->
|
||||
<goal name="xdoc:clean-user-bundles"
|
||||
description="Clean the user bundles in the plugin resources">
|
||||
<delete>
|
||||
<fileset dir="${plugin.resources}/temp" includes="${maven.xdoc.bundle}*"/>
|
||||
</delete>
|
||||
</goal>
|
||||
|
||||
<preGoal name="clean:clean">
|
||||
<attainGoal name="xdoc:clean" />
|
||||
</preGoal>
|
||||
|
||||
@ -40,18 +40,6 @@ maven.xdoc.legend=true
|
||||
# NOTE: In the future this information will be described in the POM
|
||||
maven.xdoc.distributionType=jar
|
||||
|
||||
#
|
||||
# DATE Preferences
|
||||
#
|
||||
|
||||
# The place of the date on the pages : choices are 'bottom', 'left', 'right', 'navigation-top', 'navigation-bottom'
|
||||
maven.xdoc.date =
|
||||
|
||||
maven.xdoc.date.format = dd MMMM yyyy
|
||||
|
||||
# The date locale
|
||||
maven.xdoc.date.locale = en
|
||||
|
||||
# The default logo to show on the generated site.
|
||||
maven.xdoc.poweredby.image=maven-button-1.png
|
||||
maven.xdoc.poweredby.title=Built by Maven
|
||||
@ -88,3 +76,34 @@ maven.xdoc.projectInfo = cvs-usage.xml,\
|
||||
maven.xdoc.copy.excludes=file.gif,folder-closed.gif,folder-open.gif,icon_alert.gif,icon_alertsml.gif,icon_arrowfolder1_sml.gif,icon_arrowfolder2_sml.gif,icon_arrowmembers1_sml.gif,icon_arrowmembers2_sml.gif,icon_arrowusergroups1_sml.gif,icon_arrowusergroups2_sml.gif,icon_confirmsml.gif,icon_help_lrg.gif,icon_infosml.gif,icon_members_sml.gif,icon_sortleft.gif,icon_sortright.gif,icon_usergroups_sml.gif,icon_waste_lrg.gif,icon_waste_sml.gif,none.png,nw_maj.gif,nw_maj_hi.gif,nw_med.gif,nw_med_hi.gif,nw_med_rond.gif,nw_min.gif,nw_min_036.gif,nw_min_hi.gif,poweredby_036.gif,product_logo.gif,se_maj_rond.gif,sw_min.gif,logos/**
|
||||
# Files not copied unless skin is classic
|
||||
maven.xdoc.copy.excludes.classic=external-classic.png,help_logo.gif,icon_arrowfolderclosed1_sml.gif,icon_arrowwaste1_sml.gif,icon_arrowwaste2_sml.gif,icon_doc_lrg.gif,icon_doc_sml.gif,icon_error_lrg.gif,icon_folder_lrg.gif,icon_folder_sml.gif,icon_help_sml.gif,icon_info_lrg.gif,icon_members_lrg.gif,icon_sortdown.gif,icon_sortup.gif,icon_success_lrg.gif,icon_usergroups_lrg.gif,icon_arrowfolderopen2_sml.gif,icon_warning_lrg.gif,newwindow-classic.png,nw_maj_rond.gif,strich.gif,sw_maj_rond.gif,sw_med_rond.gif
|
||||
|
||||
#
|
||||
# I18N Preferences
|
||||
#
|
||||
|
||||
# NOTE: Only used for the default language
|
||||
# The place of the date on the pages : choices are 'bottom', 'left', 'right', 'navigation-top', 'navigation-bottom'
|
||||
maven.xdoc.date=
|
||||
maven.xdoc.date.format=dd MMMM yyyy
|
||||
# The date locale
|
||||
maven.xdoc.date.locale=en
|
||||
|
||||
# The default locale (if null, it is the default locale for this instance of the Java Virtual Machine)
|
||||
# By default it is en to ensure backward compatible
|
||||
maven.xdoc.locale.default=en
|
||||
# A comma separated of locales supported by the project
|
||||
maven.xdoc.locale.supported=
|
||||
|
||||
# Should be in ${maven.docs.src} directory
|
||||
maven.xdoc.bundle.src=${maven.docs.src}
|
||||
# NOT CLEAN: we need to copy ${maven.docs.src}/xdocs.properties to
|
||||
# ${user.home}\.maven\cache\maven-xdoc-plugin-XXX\plugin-resources\temp\${maven.xdoc.bundle}.properties
|
||||
maven.xdoc.bundle=xdocs
|
||||
|
||||
# If true, display the default language with [defaultLocale.byDefault]
|
||||
# Ex: English [By default]
|
||||
maven.xdoc.ui.displayByDefault=false
|
||||
# If true, display the maven.xdoc.locale.list property as an HTML <select/> tag
|
||||
maven.xdoc.ui.localeList.asSelect=false
|
||||
# The maximum number of locales displayed without an HTML select tag.
|
||||
maven.xdoc.ui.localeList.max=5
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
@ -16,6 +17,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
-->
|
||||
|
||||
<project>
|
||||
<extend>../plugin-parent/project.xml</extend>
|
||||
<pomVersion>3</pomVersion>
|
||||
@ -140,7 +142,7 @@
|
||||
<role>Developer</role>
|
||||
</roles>
|
||||
<timezone>-3</timezone>
|
||||
</developer>
|
||||
</developer>
|
||||
</developers>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
@ -204,5 +206,14 @@
|
||||
<artifactId>xml-apis</artifactId>
|
||||
<version>1.0.b2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-jelly</groupId>
|
||||
<artifactId>commons-jelly-tags-fmt</artifactId>
|
||||
<version>1.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<id>forehead</id>
|
||||
<version>1.0-beta-5</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
||||
152
xdoc/src/main/org/apache/maven/xdoc/util/LocaleUtil.java
Normal file
152
xdoc/src/main/org/apache/maven/xdoc/util/LocaleUtil.java
Normal file
@ -0,0 +1,152 @@
|
||||
package org.apache.maven.xdoc.util;
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
* ====================================================================
|
||||
*/
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Arrays;
|
||||
import java.util.StringTokenizer;
|
||||
|
||||
/**
|
||||
* Utility class to handle the <code>java.util.Locale</code> object.
|
||||
*
|
||||
* @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton </a>
|
||||
* @version $Id:$
|
||||
*/
|
||||
public final class LocaleUtil extends Object {
|
||||
|
||||
/**
|
||||
* Converts a locale code like "en", "en_US" or "en_US_win" to a <code>java.util.Locale</code>
|
||||
* object. <br>
|
||||
* If localeCode = "default", return the current value of the default locale for this instance
|
||||
* of the Java Virtual Machine.
|
||||
*
|
||||
* @see <a
|
||||
* href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/Locale.html">java.util.Locale#getDefault()
|
||||
* </a>
|
||||
* @param localeCode
|
||||
* the locale code string.
|
||||
* @return a java.util.Locale object instancied or null if errors occurred
|
||||
*/
|
||||
public static Locale codeToLocale(final String localeCode) {
|
||||
if (localeCode == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (localeCode.toLowerCase().equals("default")) {
|
||||
return Locale.getDefault();
|
||||
}
|
||||
|
||||
Locale locale = null;
|
||||
String language = "";
|
||||
String country = "";
|
||||
String variant = "";
|
||||
|
||||
StringTokenizer tokenizer = new StringTokenizer(localeCode, "_");
|
||||
if (tokenizer.countTokens() > 3) {
|
||||
System.out.println("The locale code=[" + localeCode + "] is not a valid java.util.Locale");
|
||||
return null;
|
||||
}
|
||||
|
||||
if (tokenizer.hasMoreTokens()) {
|
||||
language = tokenizer.nextToken();
|
||||
if (tokenizer.hasMoreTokens()) {
|
||||
country = tokenizer.nextToken();
|
||||
if (tokenizer.hasMoreTokens()) {
|
||||
variant = tokenizer.nextToken();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
locale = new Locale(language, country, variant);
|
||||
|
||||
return locale;
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse a comma separated list of locale codes and converts to an array of
|
||||
* <code>java.util.Locale</code> object.
|
||||
*
|
||||
* @param localeCodes
|
||||
* a comma separated list of locale codes.
|
||||
* @return a array of java.util.Locale object instancied or null if errors occurred
|
||||
*/
|
||||
public static Locale[] codesToLocales(final String localeCodes) {
|
||||
if (localeCodes == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
List arrays = new ArrayList();
|
||||
StringTokenizer strToken = new StringTokenizer(localeCodes, ", ");
|
||||
|
||||
while (strToken.hasMoreTokens()) {
|
||||
final String locale = strToken.nextToken().trim();
|
||||
|
||||
final Locale currentLocale = codeToLocale(locale);
|
||||
if (!Arrays.asList(Locale.getAvailableLocales()).contains(currentLocale)) {
|
||||
System.out.println("The current locale parsed defined by '" + locale
|
||||
+ "' is not available in the Java version " + System.getProperty("java.version") + " from "
|
||||
+ System.getProperty("java.vendor"));
|
||||
}
|
||||
arrays.add(currentLocale);
|
||||
}
|
||||
|
||||
return (Locale[]) arrays.toArray(new Locale[0]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the name for the <code>locale</code>. This will be the values returned by
|
||||
* <code>java.util.Locale.getDisplayName()</code>, but the first character will be in upper
|
||||
* case.
|
||||
*
|
||||
* @param locale
|
||||
* The locale to display
|
||||
* @return The display name of the locale with the first character in upper case
|
||||
*/
|
||||
public static String displayName(final Locale locale) {
|
||||
return displayName(locale, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the name for the <code>locale</code>. This will be the values returned by
|
||||
* <code>java.util.Locale.getDisplayName()</code>, but the first character will be in upper
|
||||
* case. The display name can be in a locale wanted.
|
||||
*
|
||||
* @param locale
|
||||
* The locale to display
|
||||
* @param localeWanted
|
||||
* The locale wanted to display the locale
|
||||
* @return The display name of the locale with the first character in upper case
|
||||
*/
|
||||
public static String displayName(final Locale locale, final Locale localeWanted) {
|
||||
if (locale == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
String localeAsStr = null;
|
||||
if (localeWanted == null) {
|
||||
localeAsStr = locale.getDisplayName();
|
||||
} else {
|
||||
localeAsStr = locale.getDisplayName(localeWanted);
|
||||
}
|
||||
char[] letters = localeAsStr.toCharArray();
|
||||
letters[0] = Character.toUpperCase(letters[0]);
|
||||
|
||||
return new String(letters);
|
||||
}
|
||||
}
|
||||
@ -17,67 +17,95 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
<j:whitespace
|
||||
xmlns:j="jelly:core"
|
||||
xmlns:util="jelly:util"
|
||||
xmlns="dummy"
|
||||
trim="true">
|
||||
|
||||
<j:whitespace
|
||||
xmlns:j="jelly:core"
|
||||
xmlns:util="jelly:util"
|
||||
xmlns="dummy"
|
||||
trim="true">
|
||||
|
||||
<project>
|
||||
<body>
|
||||
<j:if test="${includeProjectDocumentation.equals('yes')}">
|
||||
<menu name="Project Documentation">
|
||||
<item name="About ${pom.name}" href="/index.html"/>
|
||||
<body>
|
||||
<j:if test="${includeProjectDocumentation.equals('yes')}">
|
||||
<menu key="navigation.menu.project_documentation"
|
||||
bundle="plugin-resources/templates/templates">
|
||||
<item key="navigation.menu.item.about"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/index.html" />
|
||||
|
||||
<!-- Only display a "Downloads" menu link if the
|
||||
maven.xdoc.distributionUrl has been defined -->
|
||||
<j:if test="${context.getVariable('maven.xdoc.distributionUrl') != null}">
|
||||
<item name="Downloads" href="/downloads.html"/>
|
||||
<!-- Only display a "Downloads" menu link if the
|
||||
maven.xdoc.distributionUrl has been defined -->
|
||||
<j:if test="${context.getVariable('maven.xdoc.distributionUrl') != null}">
|
||||
<item key="navigation.menu.item.downloads"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/downloads.html" />
|
||||
</j:if>
|
||||
|
||||
<item key="navigation.menu.item.project_info"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/project-info.html" collapse="true">
|
||||
<item key="navigation.menu.item.mailing_lists"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/mail-lists.html" />
|
||||
<item key="navigation.menu.item.project_team"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/team-list.html" />
|
||||
<item key="navigation.menu.item.dependencies"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/dependencies.html" />
|
||||
|
||||
<j:set var="url" value="${pom.repository.url}" />
|
||||
<j:if test="${!empty(url)}">
|
||||
<item key="navigation.menu.item.source_repository"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/cvs-usage.html" />
|
||||
</j:if>
|
||||
|
||||
<j:set var="url"
|
||||
value="${pom.issueTrackingUrl}" />
|
||||
<j:if test="${!empty(url)}">
|
||||
<item key="navigation.menu.item.issue_tracking"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/issue-tracking.html" />
|
||||
</j:if>
|
||||
</item>
|
||||
<item key="navigation.menu.item.project_reports"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/maven-reports.html" collapse="true">
|
||||
<j:forEach var="report" items="${reports}">
|
||||
<j:set var="link" value="${report.link}" />
|
||||
<j:set var="externalLink" value="${report.externalLink}" />
|
||||
<j:if test="${!empty(link)}">
|
||||
<item name="${report.name}"
|
||||
href="/${report.link}.html"
|
||||
target="${report.target}" />
|
||||
</j:if>
|
||||
<j:if test="${empty(link) and !empty(externalLink)}">
|
||||
<item name="${report.name}"
|
||||
href="${report.externalLink}"
|
||||
target="${report.target}" />
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</item>
|
||||
<j:set var="devProcess" value="false" />
|
||||
<util:available file="${maven.docs.src}/development-process.xml">
|
||||
<j:set var="devProcess" value="true" />
|
||||
</util:available>
|
||||
<j:if test="${devProcess}">
|
||||
<item key="navigation.menu.item.development_process"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="/development-process.html" />
|
||||
</j:if>
|
||||
<j:if test="${!devProcess}">
|
||||
<j:set var="devProcessUrl"
|
||||
value="${maven.xdoc.developmentProcessUrl}" />
|
||||
<j:if test="${!empty(devProcessUrl)}">
|
||||
<item key="navigation.menu.item.development_process"
|
||||
bundle="plugin-resources/templates/templates"
|
||||
href="${devProcessUrl}" />
|
||||
</j:if>
|
||||
</j:if>
|
||||
</menu>
|
||||
</j:if>
|
||||
|
||||
<item name="Project Info" href="/project-info.html" collapse="true">
|
||||
<item name="Mailing Lists" href="/mail-lists.html"/>
|
||||
<item name="Project Team" href="/team-list.html"/>
|
||||
<item name="Dependencies" href="/dependencies.html"/>
|
||||
|
||||
<j:set var="url" value="${pom.repository.url}"/>
|
||||
<j:if test="${!empty(url)}">
|
||||
<item name="Source Repository" href="/cvs-usage.html"/>
|
||||
</j:if>
|
||||
|
||||
<j:set var="url" value="${pom.issueTrackingUrl}"/>
|
||||
<j:if test="${!empty(url)}">
|
||||
<item name="Issue Tracking" href="/issue-tracking.html"/>
|
||||
</j:if>
|
||||
</item>
|
||||
<item name="Project Reports" href="/maven-reports.html" collapse="true">
|
||||
<j:forEach var="report" items="${reports}">
|
||||
<j:set var="link" value="${report.link}"/>
|
||||
<j:set var="externalLink" value="${report.externalLink}"/>
|
||||
<j:if test="${!empty(link)}">
|
||||
<item name="${report.name}" href="/${report.link}.html" target="${report.target}"/>
|
||||
</j:if>
|
||||
<j:if test="${empty(link) and !empty(externalLink)}">
|
||||
<item name="${report.name}" href="${report.externalLink}" target="${report.target}"/>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</item>
|
||||
<j:set var="devProcess" value="false"/>
|
||||
<util:available file="${maven.docs.src}/development-process.xml">
|
||||
<j:set var="devProcess" value="true"/>
|
||||
</util:available>
|
||||
<j:if test="${devProcess}">
|
||||
<item name="Development Process" href="/development-process.html"/>
|
||||
</j:if>
|
||||
<j:if test="${!devProcess}">
|
||||
<j:set var="devProcessUrl" value="${maven.xdoc.developmentProcessUrl}"/>
|
||||
<j:if test="${!empty(devProcessUrl)}">
|
||||
<item name="Development Process" href="${devProcessUrl}"/>
|
||||
</j:if>
|
||||
</j:if>
|
||||
</menu>
|
||||
</j:if>
|
||||
</body>
|
||||
</body>
|
||||
</project>
|
||||
|
||||
</j:whitespace>
|
||||
|
||||
@ -27,6 +27,7 @@
|
||||
xmlns:log="jelly:log"
|
||||
xmlns:util="jelly:util"
|
||||
xmlns:x="jelly:xml"
|
||||
xmlns:fmt="jelly:fmt"
|
||||
xmlns:doc="doc"
|
||||
xmlns:maven="jelly:maven"
|
||||
xmlns="dummy">
|
||||
@ -42,40 +43,104 @@
|
||||
<j:setProperties object="${navbean}" document="${doc}" location="${location}"/>
|
||||
<x:set var="templateContext" select="." />
|
||||
|
||||
<!-- Format the build date depending the current locale if no pattern is defined -->
|
||||
<j:if test="${currentLocale.equals(defaultLocale)}">
|
||||
<j:if test="${now == null}">
|
||||
<j:useBean var="now" class="java.util.Date"/>
|
||||
</j:if>
|
||||
<fmt:formatDate value="${now}" type="both" dateStyle="long" timeStyle="long" var="build.date"/>
|
||||
</j:if>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<j:set var="docTitle"><x:expr select="./properties/title"/></j:set>
|
||||
|
||||
<!-- Key is more important than message... -->
|
||||
<!-- From doc -->
|
||||
<j:set var="_docKey">
|
||||
<x:expr select="./properties/title/@key" />
|
||||
</j:set>
|
||||
<j:set var="_docBundle">
|
||||
<x:expr select="./properties/title/@bundle" />
|
||||
</j:set>
|
||||
<j:if test="${empty(_docKey)}">
|
||||
<j:set var="_docTitle">
|
||||
<x:expr select="./properties/title" />
|
||||
</j:set>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_docKey)}">
|
||||
<!-- Shortcut for the user bundle -->
|
||||
<j:if test="${empty(_docBundle)}">
|
||||
<fmt:message key="${_docKey}" bundle="${myMsg}" var="_docTitle"/>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_docBundle)}">
|
||||
<fmt:bundle basename="${_docBundle}">
|
||||
<fmt:message key="${_docKey}" var="_docTitle"/>
|
||||
</fmt:bundle>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<!-- From nav -->
|
||||
<j:set var="_navKey">
|
||||
<x:expr select="$nav/title/@key" />
|
||||
</j:set>
|
||||
<j:set var="_navBundle">
|
||||
<x:expr select="$nav/title/@bundle" />
|
||||
</j:set>
|
||||
<j:if test="${empty(_navKey)}">
|
||||
<j:set var="_navTitle">
|
||||
<x:expr select="$nav/title" />
|
||||
</j:set>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_navKey)}">
|
||||
<!-- Shortcut for the user bundle -->
|
||||
<j:if test="${empty(_navBundle)}">
|
||||
<fmt:message key="${_navKey}" bundle="${myMsg}" var="_navTitle"/>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_navBundle)}">
|
||||
<fmt:bundle basename="${_navBundle}">
|
||||
<fmt:message key="${_navKey}" var="_navTitle"/>
|
||||
</fmt:bundle>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<j:set var="titleSeparator" value=" - "/>
|
||||
|
||||
<x:if select="$nav/title">
|
||||
<title><x:expr select="$nav/title"/> - ${docTitle}</title>
|
||||
<title>
|
||||
${_docTitle}${titleSeparator}${_navTitle}
|
||||
</title>
|
||||
</x:if>
|
||||
<x:if select="not($nav/title)">
|
||||
<title>${pom.name} - ${docTitle}</title>
|
||||
<title>
|
||||
${pom.name}${titleSeparator}${_navTitle}
|
||||
</title>
|
||||
</x:if>
|
||||
|
||||
|
||||
<j:set var="themeUrl" value="${maven.xdoc.theme.url}"/>
|
||||
<util:file var="projectCssFile" name="${maven.docs.src}/style/project.css"/>
|
||||
|
||||
<style type="text/css" media="all"><![CDATA[
|
||||
@import url("${relativePath}/style/maven-base.css");
|
||||
@import url("${relativePathForLocale}style/maven-base.css");
|
||||
]]>
|
||||
<j:if test="${!empty(themeUrl)}"><![CDATA[
|
||||
@import url("${maven.xdoc.theme.url}");
|
||||
]]></j:if>
|
||||
<j:if test="${empty(themeUrl)}"><![CDATA[
|
||||
@import url("${relativePath}/style/maven-${maven.xdoc.theme}.css");
|
||||
@import url("${relativePathForLocale}style/maven-${maven.xdoc.theme}.css");
|
||||
]]></j:if>
|
||||
<j:if test="${projectCssFile.exists()}"><![CDATA[
|
||||
@import url("${relativePath}/style/project.css");
|
||||
@import url("${relativePathForLocale}style/project.css");
|
||||
]]></j:if>
|
||||
</style>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="${relativePath}/style/print.css" media="print"/>
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="${relativePathForLocale}style/print.css" media="print"/>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=${outputencoding}"/>
|
||||
<x:forEach var="author" select="$templateContext/properties/author">
|
||||
<x:forEach var="author" select="./properties/author">
|
||||
<meta name="author" content="${author.text}"/>
|
||||
<meta name="email" content="${author.attribute('email').value}"/>
|
||||
</x:forEach>
|
||||
|
||||
|
||||
<jsl:applyTemplates select="$templateContext/head/*" />
|
||||
</head>
|
||||
<jsl:applyTemplates select="$templateContext/*" />
|
||||
@ -90,202 +155,314 @@
|
||||
|
||||
<jsl:template match="body" trim="true">
|
||||
<x:set var="templateContext" select="." />
|
||||
<x:element name="body"><j:whitespace trim="true">
|
||||
<x:attribute name="class">composite</x:attribute>
|
||||
<x:element name="body"><j:whitespace trim="true">
|
||||
<x:attribute name="class">composite</x:attribute>
|
||||
<x:forEach var="attr" select="@*">
|
||||
<x:attribute name="${attr.name}">${attr.value}</x:attribute>
|
||||
</x:forEach>
|
||||
</j:whitespace>
|
||||
<div id="banner">
|
||||
<!-- organization logo -->
|
||||
<j:set var="logo" value="${pom.organization.logo}"/>
|
||||
<j:if test="${!empty(logo)}">
|
||||
<!-- set url to org or project url -->
|
||||
<j:set var="url" value="${pom.organization.url}"/>
|
||||
<j:if test="${!empty(url)}">
|
||||
<j:set var="home" value="${pom.organization.url}"/>
|
||||
<x:attribute name="${attr.name}">${attr.value}</x:attribute>
|
||||
</x:forEach>
|
||||
</j:whitespace>
|
||||
|
||||
<div id="banner">
|
||||
<!-- organization logo -->
|
||||
<j:set var="logo" value="${pom.organization.logo}"/>
|
||||
<j:if test="${!empty(logo)}">
|
||||
<!-- set url to org or project url -->
|
||||
<j:set var="url" value="${pom.organization.url}"/>
|
||||
<j:if test="${!empty(url)}">
|
||||
<j:set var="home" value="${pom.organization.url}"/>
|
||||
</j:if>
|
||||
<j:if test="${empty(url)}">
|
||||
<j:set var="home" value="${pom.url}"/>
|
||||
</j:if>
|
||||
<!-- set home to relative or complete -->
|
||||
<j:if test="${!home.startsWith('http://') and !home.startsWith('https://')}">
|
||||
<j:set var="home" value="${relativePath}${home}"/>
|
||||
</j:if>
|
||||
|
||||
<!-- set image to relative or complete -->
|
||||
<j:set var="image" value="${pom.organization.logo}"/>
|
||||
<j:if test="${!image.startsWith('http://') and !image.startsWith('https://')}">
|
||||
<j:if test="${!image.startsWith('/')}" trim="yes">
|
||||
<j:set var="image" value="${relativePathForLocale}${image}"/>
|
||||
</j:if>
|
||||
<j:if test="${image.startsWith('/')}" trim="yes">
|
||||
<j:set var="image" value="${relativePathForLocale}${image.substring(1)}"/>
|
||||
</j:if>
|
||||
</j:if>
|
||||
<a href="${home}" id="organizationLogo">
|
||||
<img src="${image}" alt="${pom.organization.name}" />
|
||||
</a>
|
||||
</j:if>
|
||||
<j:if test="${empty(url)}">
|
||||
<j:set var="home" value="${pom.url}"/>
|
||||
</j:if>
|
||||
<!-- set home to relative or complete -->
|
||||
|
||||
<!-- set project to relative or complete -->
|
||||
<j:set var="home" value="${pom.url}"/>
|
||||
<j:if test="${!home.startsWith('http://') and !home.startsWith('https://')}">
|
||||
<j:set var="home" value="${relativePath}${home}"/>
|
||||
</j:if>
|
||||
|
||||
<!-- set image to relative or complete -->
|
||||
<j:set var="image" value="${pom.organization.logo}"/>
|
||||
<j:if test="${!image.startsWith('http://') and !image.startsWith('https://')}">
|
||||
<j:set var="image" value="${relativePath}${image}"/>
|
||||
<!-- project logo and link -->
|
||||
<j:set var="logo" value="${pom.logo}"/>
|
||||
<j:if test="${logo != null and logo != ''}">
|
||||
<!-- set image to relative or complete -->
|
||||
<j:set var="image" value="${pom.logo}"/>
|
||||
<j:if test="${!image.startsWith('http://') and !image.startsWith('https://')}">
|
||||
<j:if test="${!image.startsWith('/')}" trim="yes">
|
||||
<j:set var="image" value="${relativePathForLocale}${image}"/>
|
||||
</j:if>
|
||||
<j:if test="${image.startsWith('/')}" trim="yes">
|
||||
<j:set var="image" value="${relativePathForLocale}${image.substring(1)}"/>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<a href="${home}" id="projectLogo">
|
||||
<img src="${image}" alt="${pom.name}"/>
|
||||
</a>
|
||||
</j:if>
|
||||
<a href="${home}" id="organizationLogo">
|
||||
<img src="${image}" alt="${pom.organization.name}" />
|
||||
</a>
|
||||
</j:if>
|
||||
|
||||
<!-- set project to relative or complete -->
|
||||
<j:set var="home" value="${pom.url}"/>
|
||||
<j:if test="${!home.startsWith('http://') and !home.startsWith('https://')}">
|
||||
<j:set var="home" value="${relativePath}${home}"/>
|
||||
</j:if>
|
||||
|
||||
<!-- project logo and link -->
|
||||
<j:set var="logo" value="${pom.logo}"/>
|
||||
<j:if test="${logo != null and logo != ''}">
|
||||
<!-- set image to relative or complete -->
|
||||
<j:set var="image" value="${pom.logo}"/>
|
||||
<j:if test="${!image.startsWith('http://') and !image.startsWith('https://')}">
|
||||
<j:set var="image" value="${relativePath}${image}"/>
|
||||
<j:if test="${logo == null or logo == ''}">
|
||||
<a href="${home}" id="projectLogo">
|
||||
<span>${pom.name}</span>
|
||||
</a>
|
||||
</j:if>
|
||||
|
||||
<a href="${home}" id="projectLogo">
|
||||
<img src="${image}" alt="${pom.name}"/>
|
||||
</a>
|
||||
</j:if>
|
||||
<j:if test="${logo == null or logo == ''}">
|
||||
<a href="${home}" id="projectLogo">
|
||||
<span>${pom.name}</span>
|
||||
</a>
|
||||
</j:if>
|
||||
<div class="clear"><hr /></div>
|
||||
</div>
|
||||
|
||||
<div id="breadcrumbs">
|
||||
<maven:property var="version" name="maven.xdoc.version" defaultValue="${pom.currentVersion}"/>
|
||||
|
||||
<j:set var="breadcrumbsUsed" value=""/>
|
||||
<x:if select="$nav/body/breadcrumbs">
|
||||
<j:set var="breadcrumbsUsed" value="'true'"/>
|
||||
</x:if>
|
||||
|
||||
<div class="xleft">
|
||||
<j:if test="${empty(breadcrumbsUsed)}">
|
||||
<j:if test="${date == 'left'}">
|
||||
Last published: ${build.date}
|
||||
<j:if test="${!empty(version)}">
|
||||
<j:if test="${!(maven.xdoc.crumb.separator == '')}">
|
||||
<span class="separator">${maven.xdoc.crumb.separator}</span>
|
||||
</j:if>
|
||||
Doc for ${version}
|
||||
</j:if>
|
||||
</j:if>
|
||||
</j:if>
|
||||
<j:if test="${!empty( breadcrumbsUsed )}">
|
||||
<jsl:applyTemplates select="$nav/body/breadcrumbs" />
|
||||
${pom.name} <span class="separator">></span> ${docTitle}
|
||||
</j:if>
|
||||
<div class="clear"><hr /></div>
|
||||
</div>
|
||||
|
||||
<div class="xright">
|
||||
<j:if test="${empty(breadcrumbsUsed)}">
|
||||
<j:if test="${date == 'right'}">
|
||||
Last published: ${build.date}
|
||||
|
||||
<div id="breadcrumbs">
|
||||
<maven:property var="version" name="maven.xdoc.version" defaultValue="${pom.currentVersion}"/>
|
||||
|
||||
<j:set var="breadcrumbsUsed" value=""/>
|
||||
<x:if select="$nav/body/breadcrumbs">
|
||||
<j:set var="breadcrumbsUsed" value="'true'"/>
|
||||
</x:if>
|
||||
|
||||
<div class="xleft">
|
||||
<j:if test="${empty(breadcrumbsUsed)}">
|
||||
<j:if test="${date == 'left'}">
|
||||
<fmt:message key="site.last_published" bundle="${msg}"/>: ${build.date}
|
||||
<j:if test="${!empty(version)}">
|
||||
<j:if test="${!(maven.xdoc.crumb.separator == '')}">
|
||||
<span class="separator">${maven.xdoc.crumb.separator}</span>
|
||||
</j:if>
|
||||
<fmt:message key="site.doc_for" bundle="${msg}"/> ${version}
|
||||
</j:if>
|
||||
</j:if>
|
||||
</j:if>
|
||||
<j:if test="${!empty( breadcrumbsUsed )}">
|
||||
<jsl:applyTemplates select="$nav/body/breadcrumbs" />
|
||||
${pom.name} <span class="separator">></span> ${docTitle}
|
||||
</j:if>
|
||||
</div>
|
||||
|
||||
<div class="xright">
|
||||
<j:if test="${empty(breadcrumbsUsed)}">
|
||||
<j:if test="${date == 'right'}">
|
||||
<fmt:message key="site.last_published" bundle="${msg}"/>: ${build.date}
|
||||
<j:if test="${!empty(version)}">
|
||||
<j:if test="${!(maven.xdoc.crumb.separator == '')}">
|
||||
<span class="separator">${maven.xdoc.crumb.separator}</span>
|
||||
</j:if>
|
||||
<fmt:message key="site.doc_for" bundle="${msg}"/> ${version}
|
||||
</j:if>
|
||||
</j:if>
|
||||
</j:if>
|
||||
<!-- render links -->
|
||||
<x:if select="$nav/body/links">
|
||||
<jsl:applyTemplates select="$nav/body/links"/>
|
||||
</x:if>
|
||||
</div>
|
||||
<div class="clear"><hr /></div>
|
||||
</div>
|
||||
|
||||
<!-- left column start -->
|
||||
<div id="leftColumn">
|
||||
<div id="navcolumn">
|
||||
<x:if select="$nav">
|
||||
<jsl:applyTemplates select="$nav/body/menu[not(@type) | @type='header'] | $nav/body/search"/>
|
||||
</x:if>
|
||||
<jsl:applyTemplates select="$projectNav/body/menu"/>
|
||||
<!-- allows user to put menu items after standard reports -->
|
||||
<x:if select="$nav">
|
||||
<jsl:applyTemplates select="$nav/body/menu[@type='footer']"/>
|
||||
</x:if>
|
||||
<j:if test="${context.getVariable('maven.xdoc.legend') == 'true'}">
|
||||
<div id="legend">
|
||||
<h5><fmt:message key="site.legend" bundle="${msg}"/></h5>
|
||||
<ul>
|
||||
<li class="externalLink"><fmt:message key="site.external_link" bundle="${msg}"/></li>
|
||||
<li class="newWindow"><fmt:message key="site.opens_new_window" bundle="${msg}"/></li>
|
||||
</ul>
|
||||
</div>
|
||||
</j:if>
|
||||
|
||||
<!-- Display all availables locales depending :
|
||||
* the user preferences
|
||||
* the size of the maven.xdoc.locale.supported property -->
|
||||
<j:if test="${locales != null}">
|
||||
<j:if test="${size(locales) gt 0}">
|
||||
<j:set var="displaySelect" value="${maven.xdoc.ui.localeList.asSelect}" />
|
||||
<j:set var="displayMaxElt" value="${maven.xdoc.ui.localeList.max}"/>
|
||||
<j:useBean var="mavenTool" class="org.apache.maven.util.MavenTool"/>
|
||||
<j:set var="displayMaxEltAsInteger" value="${mavenTool.toInteger(displayMaxElt)}"/>
|
||||
|
||||
<div id="language">
|
||||
<h5><fmt:message key="site.language" bundle="${msg}"/></h5>
|
||||
<ul>
|
||||
<!-- Display language in a form with select tag -->
|
||||
<j:if test="${displaySelect == 'true' or size(locales) gt displayMaxEltAsInteger}">
|
||||
<form name="languageForm" method="GET">
|
||||
<select size="1" name="languageSelect"
|
||||
onChange="javascript:window.location=this.options[this.selectedIndex].value;">
|
||||
<!-- Default language -->
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="displayName" var="displayLocale">
|
||||
<j:arg value="${defaultLocale}" type="java.util.Locale"/>
|
||||
<j:arg value="${defaultLocale}" type="java.util.Locale"/>
|
||||
</j:invokeStatic>
|
||||
<j:if test="${maven.xdoc.ui.displayByDefault == 'true'}">
|
||||
<j:set var="displayLocale">${displayLocale} <fmt:message key="defaultLocale.byDefault" bundle="${msg}"/></j:set>
|
||||
</j:if>
|
||||
<option value="${relativePathForLocale}${location}">${displayLocale}</option>
|
||||
|
||||
<!-- Supported language -->
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="displayName" var="displayLocale">
|
||||
<j:arg value="${locale}" type="java.util.Locale"/>
|
||||
<j:arg value="${locale}" type="java.util.Locale"/>
|
||||
</j:invokeStatic>
|
||||
<j:if test="${currentLocale.equals(defaultLocale)}">
|
||||
<option value="${relativePathForLocale}${locale}${location}">${displayLocale}</option>
|
||||
</j:if>
|
||||
<j:if test="${!currentLocale.equals(defaultLocale)}">
|
||||
<j:if test="${locale.equals(currentLocale)}">
|
||||
<option value="${relativePathForLocale}${locale}${location}" selected="true">${displayLocale}</option>
|
||||
</j:if>
|
||||
<j:if test="${!locale.equals(currentLocale)}">
|
||||
<option value="${relativePathForLocale}${locale}${location}">${displayLocale}</option>
|
||||
</j:if>
|
||||
</j:if>
|
||||
</j:forEach>
|
||||
</select>
|
||||
</form>
|
||||
</j:if>
|
||||
|
||||
<!-- Display language as listing -->
|
||||
<j:if test="${!(displaySelect == 'true' or size(locales) gt displayMaxEltAsInteger)}">
|
||||
<!-- Default language -->
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="displayName" var="displayLocale">
|
||||
<j:arg value="${defaultLocale}" type="java.util.Locale"/>
|
||||
<j:arg value="${defaultLocale}" type="java.util.Locale"/>
|
||||
</j:invokeStatic>
|
||||
<j:if test="${maven.xdoc.ui.displayByDefault == 'true'}">
|
||||
<j:set var="displayLocale">${displayLocale} <fmt:message key="defaultLocale.byDefault" bundle="${msg}"/></j:set>
|
||||
</j:if>
|
||||
<li><doc:itemLink name="${displayLocale}" link="/${location}" relativePath="${relativePathForLocale}"/></li>
|
||||
|
||||
<!-- Supported language -->
|
||||
<j:forEach var="locale" items="${locales}">
|
||||
<j:invokeStatic className="org.apache.maven.xdoc.util.LocaleUtil" method="displayName" var="displayLocale">
|
||||
<j:arg value="${locale}" type="java.util.Locale"/>
|
||||
<j:arg value="${locale}" type="java.util.Locale"/>
|
||||
</j:invokeStatic>
|
||||
<li><doc:itemLink name="${displayLocale}" link="${locale}${location}" relativePath="${relativePathForLocale}"/></li>
|
||||
</j:forEach>
|
||||
</j:if>
|
||||
</ul>
|
||||
</div>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<!-- Standard Maven Navigation -->
|
||||
<j:set var="fileName">${file}</j:set>
|
||||
<j:set var="poweredbyimage">${maven.xdoc.poweredby.image}</j:set>
|
||||
<j:set var="poweredbytitle">${maven.xdoc.poweredby.title}</j:set>
|
||||
<j:set var="poweredbyurl" value="${maven.xdoc.poweredby.url}" />
|
||||
<j:if test="${!empty(poweredbyimage)}">
|
||||
<a id="poweredBy" href="${poweredbyurl}" title="${poweredbytitle}">
|
||||
<img alt="${maven.xdoc.poweredby.title}" src="${relativePathForLocale}images/logos/${poweredbyimage}" />
|
||||
</a>
|
||||
</j:if>
|
||||
<j:if test="${empty( breadcrumbsUsed )}">
|
||||
<j:if test="${date == 'navigation-bottom'}">
|
||||
<div id="lastPublished"><fmt:message key="site.last_published" bundle="${msg}"/>: ${build.date}</div>
|
||||
</j:if>
|
||||
</j:if>
|
||||
</div>
|
||||
</div>
|
||||
<!-- left column end -->
|
||||
|
||||
<!-- body start -->
|
||||
<div id="bodyColumn">
|
||||
<div class="contentBox">
|
||||
<jsl:applyTemplates select="$templateContext/*" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"><hr /></div>
|
||||
<!-- body end -->
|
||||
|
||||
<!-- footer start -->
|
||||
<div id="footer">
|
||||
<jsl:applyTemplates select="$nav/body/footer"/>
|
||||
|
||||
<j:if test="${!empty(breadcrumbsUsed)}">
|
||||
<div class="xleft">
|
||||
<fmt:message key="site.last_published" bundle="${msg}"/>: ${build.date}
|
||||
<j:if test="${!empty(version)}">
|
||||
<j:if test="${!(maven.xdoc.crumb.separator == '')}">
|
||||
<span class="separator">${maven.xdoc.crumb.separator}</span>
|
||||
</j:if>
|
||||
Doc for ${version}
|
||||
</j:if>
|
||||
</j:if>
|
||||
</j:if>
|
||||
<!-- render links -->
|
||||
<x:if select="$nav/body/links">
|
||||
<jsl:applyTemplates select="$nav/body/links" />
|
||||
</x:if>
|
||||
</div>
|
||||
<div class="clear"><hr /></div>
|
||||
</div>
|
||||
|
||||
<!-- left column start -->
|
||||
<div id="leftColumn">
|
||||
<div id="navcolumn">
|
||||
<x:if select="$nav">
|
||||
<jsl:applyTemplates select="$nav/body/menu[not(@type) | @type='header'] | $nav/body/search"/>
|
||||
</x:if>
|
||||
<jsl:applyTemplates select="$projectNav/body/menu"/>
|
||||
<!-- allows user to put menu items after standard reports -->
|
||||
<x:if select="$nav">
|
||||
<jsl:applyTemplates select="$nav/body/menu[@type='footer']"/>
|
||||
</x:if>
|
||||
<j:if test="${context.getVariable('maven.xdoc.legend') == 'true'}">
|
||||
<div id="legend">
|
||||
<h5>Legend</h5>
|
||||
<ul>
|
||||
<li class="externalLink">External Link</li>
|
||||
<li class="newWindow">Opens in a new window</li>
|
||||
</ul>
|
||||
<fmt:message key="site.doc_for" bundle="${msg}"/> ${version}
|
||||
</j:if>
|
||||
</div>
|
||||
</j:if>
|
||||
<!-- Standard Maven Navigation -->
|
||||
<j:set var="fileName">${file}</j:set>
|
||||
<j:set var="poweredbyimage">${maven.xdoc.poweredby.image}</j:set>
|
||||
<j:set var="poweredbytitle">${maven.xdoc.poweredby.title}</j:set>
|
||||
<j:set var="poweredbyurl" value="${maven.xdoc.poweredby.url}" />
|
||||
<j:if test="${!empty(poweredbyimage)}">
|
||||
<a id="poweredBy" href="${poweredbyurl}" title="${poweredbytitle}">
|
||||
<img alt="${maven.xdoc.poweredby.title}" src="${relativePath}/images/logos/${poweredbyimage}" />
|
||||
</a>
|
||||
</j:if>
|
||||
<j:if test="${empty( breadcrumbsUsed )}">
|
||||
<j:if test="${date == 'navigation-bottom'}">
|
||||
<div id="lastPublished">Last published: ${build.date}</div>
|
||||
</j:if>
|
||||
</j:if>
|
||||
</div>
|
||||
</div>
|
||||
<!-- left column end -->
|
||||
|
||||
<!-- body start -->
|
||||
<div id="bodyColumn">
|
||||
<div class="contentBox">
|
||||
<jsl:applyTemplates select="$templateContext/*" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="clear"><hr /></div>
|
||||
<!-- body end -->
|
||||
|
||||
<!-- footer start -->
|
||||
<div id="footer">
|
||||
<jsl:applyTemplates select="$nav/body/footer"/>
|
||||
|
||||
|
||||
|
||||
<j:if test="${!empty(breadcrumbsUsed)}">
|
||||
<div class="xleft">
|
||||
<div id="lastPublished">Last published: ${build.date} Doc for ${pom.currentVersion}</div>
|
||||
</div>
|
||||
</j:if>
|
||||
<div class="xright">
|
||||
<j:if test="${!empty(pom.organization.name)}">
|
||||
<j:if test="${!empty(pom.inceptionYear)}">
|
||||
<j:if test="${pom.inceptionYear == mavenCurrentYear}">
|
||||
<div class="xright">
|
||||
<j:if test="${!empty(pom.organization.name)}">
|
||||
<j:if test="${!empty(pom.inceptionYear)}">
|
||||
<j:if test="${pom.inceptionYear == mavenCurrentYear}">
|
||||
© ${mavenCurrentYear}, ${pom.organization.name}
|
||||
</j:if>
|
||||
<j:if test="${pom.inceptionYear != mavenCurrentYear}">
|
||||
© ${pom.inceptionYear}-${mavenCurrentYear}, ${pom.organization.name}
|
||||
</j:if>
|
||||
</j:if>
|
||||
<j:if test="${empty(pom.inceptionYear)}">
|
||||
© ${mavenCurrentYear}, ${pom.organization.name}
|
||||
</j:if>
|
||||
<j:if test="${pom.inceptionYear != mavenCurrentYear}">
|
||||
© ${pom.inceptionYear}-${mavenCurrentYear}, ${pom.organization.name}
|
||||
</j:if>
|
||||
<j:if test="${empty(breadcrumbsUsed)}">
|
||||
<j:if test="${date == 'bottom'}">
|
||||
© - <fmt:message key="site.last_published" bundle="${msg}"/>: ${build.date}
|
||||
</j:if>
|
||||
<j:if test="${empty(pom.inceptionYear)}">
|
||||
© ${mavenCurrentYear}, ${pom.organization.name}
|
||||
</j:if>
|
||||
<j:if test="${empty(breadcrumbsUsed)}">
|
||||
<j:if test="${date == 'bottom'}">
|
||||
- Last published: ${build.date}
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
</j:if>
|
||||
</div>
|
||||
<div class="clear"><hr /></div>
|
||||
</div>
|
||||
<div class="clear"><hr /></div>
|
||||
</div>
|
||||
<!-- footer end -->
|
||||
</x:element>
|
||||
<!-- footer end -->
|
||||
</x:element>
|
||||
</jsl:template>
|
||||
|
||||
|
||||
<!-- process a documentation section -->
|
||||
<jsl:template match="section" trim="true">
|
||||
<div class="section">
|
||||
<j:set var="_sectionName"><x:expr select="@name"/></j:set>
|
||||
|
||||
<!-- Key is more important than message... -->
|
||||
<j:set var="_key">
|
||||
<x:expr select="@key" />
|
||||
</j:set>
|
||||
<j:set var="_bundle">
|
||||
<x:expr select="@bundle" />
|
||||
</j:set>
|
||||
<j:if test="${!empty(_key)}">
|
||||
<!-- Default bundle is the user one in ${maven.xdoc.bundle} -->
|
||||
<j:if test="${empty(_bundle)}">
|
||||
<fmt:message key="${_key}" bundle="${myMsg}" var="_sectionName"/>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_bundle)}">
|
||||
<fmt:bundle basename="${_bundle}">
|
||||
<fmt:message key="${_key}" var="_sectionName"/>
|
||||
</fmt:bundle>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<!-- named anchors can't contain whitespaces -->
|
||||
<j:set var="_anchorName"><doc:escapeNameToken value="${_sectionName}"/></j:set>
|
||||
<j:if test="${!empty(_sectionName)}">
|
||||
@ -298,6 +475,26 @@
|
||||
<jsl:template match="subsection" trim="true">
|
||||
<div class="subsection">
|
||||
<j:set var="_sectionName"><x:expr select="@name"/></j:set>
|
||||
|
||||
<!-- Key is more important than message... -->
|
||||
<j:set var="_key">
|
||||
<x:expr select="@key" />
|
||||
</j:set>
|
||||
<j:set var="_bundle">
|
||||
<x:expr select="@bundle" />
|
||||
</j:set>
|
||||
<j:if test="${!empty(_key)}">
|
||||
<!-- Default bundle is the user one in ${maven.xdoc.bundle} -->
|
||||
<j:if test="${empty(_bundle)}">
|
||||
<fmt:message key="${_key}" bundle="${myMsg}" var="_sectionName"/>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_bundle)}">
|
||||
<fmt:bundle basename="${_bundle}">
|
||||
<fmt:message key="${_key}" var="_sectionName"/>
|
||||
</fmt:bundle>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<!-- named anchors can't contain whitespaces -->
|
||||
<j:set var="_anchorName"><doc:escapeNameToken value="${_sectionName}"/></j:set>
|
||||
<j:if test="${!empty(_sectionName)}">
|
||||
@ -306,7 +503,7 @@
|
||||
<jsl:applyTemplates />
|
||||
</div>
|
||||
</jsl:template>
|
||||
|
||||
|
||||
<jsl:template match="source" trim="false">
|
||||
<div class="source"><pre><jsl:applyTemplates /></pre></div>
|
||||
</jsl:template>
|
||||
@ -356,7 +553,7 @@
|
||||
<jsl:applyTemplates/>
|
||||
</x:element>
|
||||
</jsl:template>
|
||||
|
||||
|
||||
<!-- Process the breadcrumb navbar -->
|
||||
<jsl:template match="links" trim="true">
|
||||
<j:set var="linkCount" value="1"/>
|
||||
@ -377,8 +574,7 @@
|
||||
</x:forEach>
|
||||
</jsl:template>
|
||||
|
||||
|
||||
<!-- Process the breadcrumb navbar -->
|
||||
<!-- Process the breadcrumb navbar -->
|
||||
<jsl:template match="breadcrumbs" trim="true">
|
||||
<x:forEach var="link" select="item">
|
||||
<j:set var="_name"><x:expr select="@name"/></j:set>
|
||||
@ -387,16 +583,35 @@
|
||||
 <span class="separator">></span> 
|
||||
</x:forEach>
|
||||
</jsl:template>
|
||||
|
||||
|
||||
<!-- Process a menu for the navigation bar -->
|
||||
<jsl:template match="menu" trim="true">
|
||||
<j:set var="_menuName"><x:expr select="@name"/></j:set>
|
||||
<j:set var="_menuName"><doc:escapeNameToken value="${_menuName}"/></j:set>
|
||||
|
||||
<!-- Key is more important than message... -->
|
||||
<j:set var="_key">
|
||||
<x:expr select="@key" />
|
||||
</j:set>
|
||||
<j:set var="_bundle">
|
||||
<x:expr select="@bundle" />
|
||||
</j:set>
|
||||
<j:if test="${!empty(_key)}">
|
||||
<!-- Default bundle is the user one in ${maven.xdoc.bundle} -->
|
||||
<j:if test="${empty(_bundle)}">
|
||||
<fmt:message key="${_key}" bundle="${myMsg}" var="_menuName"/>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_bundle)}">
|
||||
<fmt:bundle basename="${_bundle}">
|
||||
<fmt:message key="${_key}" var="_menuName"/>
|
||||
</fmt:bundle>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<j:choose>
|
||||
<j:when test="${!empty(_menuName)}">
|
||||
<div id="menu${_menuName}">
|
||||
<h5><x:expr select="@name"/></h5>
|
||||
<h5>${_menuName}</h5>
|
||||
<ul><jsl:applyTemplates select="item"/></ul>
|
||||
</div>
|
||||
</j:when>
|
||||
@ -417,6 +632,23 @@
|
||||
<x:set var="_childCount" select="count(./item)"/>
|
||||
<j:set var="_isCollapsed" value="${navbean.isCollapsed(item.get(0))}"/>
|
||||
<j:set var="_state" value="none"/>
|
||||
|
||||
<!-- Key is more important than message... -->
|
||||
<j:set var="_key">
|
||||
<x:expr select="@key" />
|
||||
</j:set>
|
||||
<j:if test="${!empty(_key)}">
|
||||
<!-- Default bundle is the user one in ${maven.xdoc.bundle} -->
|
||||
<j:if test="${empty(_bundle)}">
|
||||
<fmt:message key="${_key}" bundle="${myMsg}" var="_name"/>
|
||||
</j:if>
|
||||
<j:if test="${!empty(_bundle)}">
|
||||
<fmt:bundle basename="${_bundle}">
|
||||
<fmt:message key="${_key}" var="_name"/>
|
||||
</fmt:bundle>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<j:if test="${_childCount.intValue() gt 0}">
|
||||
<j:if test="${!_isCollapsed}"><j:set var="_state" value="expanded"/></j:if>
|
||||
<j:if test="${_isCollapsed}"><j:set var="_state" value="collapsed"/></j:if>
|
||||
@ -441,7 +673,7 @@
|
||||
<!-- Search code: http://www.google.com/searchcode.html -->
|
||||
<!-- Google logos: http://www.google.com/stickers.html -->
|
||||
<!-- Terms: http://www.google.com./services/terms_free.html -->
|
||||
<div id="searchbar">
|
||||
<div id="search">
|
||||
<h5>Search ${pom.name}</h5>
|
||||
<form method="get" action="http://www.google.com/search">
|
||||
<a class="navlink" href="http://www.google.com">
|
||||
@ -513,44 +745,46 @@
|
||||
<x:attribute name="${attr.name}">${attr.value}</x:attribute>
|
||||
</x:forEach>
|
||||
<jsl:applyTemplates />
|
||||
</j:whitespace></x:element>
|
||||
</jsl:template>
|
||||
</j:whitespace></x:element>
|
||||
</jsl:template>
|
||||
|
||||
<!-- goals documentation -->
|
||||
<jsl:template match="goals" trim="true">
|
||||
<!-- reset row alternation -->
|
||||
<j:set var="rowMode" value="" />
|
||||
<div class="h3">
|
||||
<a name="Goals"/><h3>Goals</h3>
|
||||
<table class="bodyTable">
|
||||
<thead>
|
||||
<tr><th>Goal</th><th>Description</th></tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<jsl:applyTemplates select="goal"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</jsl:template>
|
||||
<!-- goals documentation -->
|
||||
<jsl:template match="goals" trim="true">
|
||||
<!-- reset row alternation -->
|
||||
<j:set var="rowMode" value="" />
|
||||
<div class="h3">
|
||||
<a name="Goals"/><h3><fmt:message key="site.goals" bundle="${msg}"/></h3>
|
||||
<table class="bodyTable">
|
||||
<thead>
|
||||
<tr><th><fmt:message key="site.goal" bundle="${msg}"/></th><th><fmt:message key="site.description" bundle="${msg}"/></th></tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<jsl:applyTemplates select="goal"/>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</jsl:template>
|
||||
|
||||
<!-- a goal -->
|
||||
<jsl:template match="goal" trim="true">
|
||||
<j:choose>
|
||||
<j:when test="${rowMode == 'a'}">
|
||||
<j:set var="rowMode" value="b"/>
|
||||
</j:when>
|
||||
<j:otherwise>
|
||||
<j:set var="rowMode" value="a"/>
|
||||
</j:otherwise>
|
||||
</j:choose>
|
||||
<!-- a goal -->
|
||||
<jsl:template match="goal" trim="true">
|
||||
<j:choose>
|
||||
<j:when test="${rowMode == 'a'}">
|
||||
<j:set var="rowMode" value="b"/>
|
||||
</j:when>
|
||||
<j:otherwise>
|
||||
<j:set var="rowMode" value="a"/>
|
||||
</j:otherwise>
|
||||
</j:choose>
|
||||
|
||||
<x:element name="tr"><j:whitespace trim="true">
|
||||
<x:attribute name="class">${rowMode}</x:attribute>
|
||||
<j:set var="_goalName"><x:expr select="./name" /></j:set>
|
||||
<td style="width:20%"><a name="${_goalName}"/>${_goalName}</td>
|
||||
<td ><jsl:applyTemplates select="description" /></td>
|
||||
</j:whitespace></x:element>
|
||||
</jsl:template>
|
||||
<x:element name="tr">
|
||||
<j:whitespace trim="true">
|
||||
<x:attribute name="class">${rowMode}</x:attribute>
|
||||
<j:set var="_goalName"><x:expr select="./name" /></j:set>
|
||||
<td style="width:20%"><a name="${_goalName}"/>${_goalName}</td>
|
||||
<td ><jsl:applyTemplates select="description" /></td>
|
||||
</j:whitespace>
|
||||
</x:element>
|
||||
</jsl:template>
|
||||
|
||||
<jsl:template match="description">
|
||||
<jsl:applyTemplates trim="false"/>
|
||||
@ -565,4 +799,28 @@
|
||||
<!-- copy any other elements through -->
|
||||
<jsl:template match="*" trim="false"><jsl:copy trim="false"><jsl:applyTemplates trim="false"/></jsl:copy></jsl:template>
|
||||
|
||||
<!-- process a message -->
|
||||
<!-- Key is more important than message... -->
|
||||
<jsl:template match="message" trim="true">
|
||||
<j:set var="_key">
|
||||
<x:expr select="@key" />
|
||||
</j:set>
|
||||
<j:set var="_bundle">
|
||||
<x:expr select="@bundle" />
|
||||
</j:set>
|
||||
<j:if test="${!empty(_key)}">
|
||||
<!-- Default bundle is the user one in ${maven.xdoc.bundle} -->
|
||||
<j:if test="${empty(_bundle)}">
|
||||
<fmt:message key="${_key}" bundle="${myMsg}" />
|
||||
</j:if>
|
||||
<j:if test="${!empty(_bundle)}">
|
||||
<fmt:bundle basename="${_bundle}">
|
||||
<fmt:message key="${_key}" />
|
||||
</fmt:bundle>
|
||||
</j:if>
|
||||
</j:if>
|
||||
|
||||
<jsl:applyTemplates />
|
||||
</jsl:template>
|
||||
|
||||
</jsl:stylesheet>
|
||||
|
||||
@ -17,143 +17,155 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
|
||||
<document>
|
||||
|
||||
|
||||
<properties>
|
||||
<title>CVS</title>
|
||||
</properties>
|
||||
<properties>
|
||||
<title key="template.cvs_usage.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
#set ($repository = $project.repository)
|
||||
|
||||
#if (!$repository)
|
||||
<section name="Repository">
|
||||
<p>
|
||||
No SCM repository is defined.
|
||||
</p>
|
||||
</section>
|
||||
#else
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
#set ($url = $escape.getText($repository.url))
|
||||
<section name="Web Access">
|
||||
<p>
|
||||
<a href="$url">$url</a>
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
|
||||
#if ($repository.connection && $repository.connection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
#if ($connscm == 'cvs')
|
||||
#set ($conn = $repository.getCvsRoot($repository.connection, ''))
|
||||
#set ($module = $repository.getCvsModule($repository.connection))
|
||||
<section name="Anonymous Access with Maven">
|
||||
<p>
|
||||
This project's CVS repository can be checked out through anonymous (pserver)
|
||||
CVS with the following instruction on a single line.
|
||||
</p>
|
||||
|
||||
<source><![CDATA[
|
||||
maven scm:checkout-project
|
||||
-Dmaven.scm.method=$connscm
|
||||
-Dmaven.scm.cvs.module=$module
|
||||
-Dmaven.scm.cvs.root=$conn
|
||||
-Dmaven.scm.checkout.dir=.
|
||||
]]></source>
|
||||
|
||||
</section>
|
||||
|
||||
<section name="Anonymous CVS Access">
|
||||
<p>
|
||||
This project's CVS repository can be checked out through anonymous (pserver)
|
||||
CVS with the following instruction set.
|
||||
When prompted for a password for anonymous, simply press the Enter key.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
cvs -d $conn login
|
||||
<br/>
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
<body>
|
||||
#set ($repository = $project.repository)
|
||||
|
||||
<p>
|
||||
Updates from within the module's directory do not need the -d parameter.
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.developerConnection && $repository.developerConnection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
#if ($connscm == 'cvs')
|
||||
|
||||
#set ($conn = $repository.getCvsRoot($repository.developerConnection, 'username'))
|
||||
#set ($module = $repository.getCvsModule($repository.developerConnection))
|
||||
#set ($server = $repository.getCvsServer($repository.developerConnection))
|
||||
|
||||
<section name="Developer Access with Maven">
|
||||
<p>
|
||||
Only project developers can access the CVS tree via this method.
|
||||
Substitute <b>username</b> with the proper value.
|
||||
</p>
|
||||
|
||||
<source><![CDATA[
|
||||
maven scm:checkout-project
|
||||
-Dmaven.scm.method=$connscm
|
||||
-Dmaven.scm.cvs.module=$module
|
||||
-Dmaven.scm.cvs.root=$conn
|
||||
-Dmaven.scm.checkout.dir=.
|
||||
-Dmaven.scm.cvs.rsh=ssh
|
||||
]]></source>
|
||||
|
||||
<p>
|
||||
Remember to replace 'username' with your actual username on $server.<br/>
|
||||
Also change <code>ssh</code> in <code>maven.scm.cvs.rsh=ssh</code>
|
||||
to the name of your ssh executable.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section name="Developer CVS Access via SSH">
|
||||
|
||||
<p>
|
||||
Only project developers can access the CVS tree via this method.
|
||||
SSH1 must be installed on your client machine. Substitute
|
||||
<b>username</b> with the proper value. Enter your site password when prompted.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
export CVS_RSH=ssh
|
||||
<br/>
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Remember to replace 'username' with your actual username on $server.
|
||||
</p>
|
||||
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
#if ($connscm == 'cvs')
|
||||
<section name="CVS Access behind a firewall">
|
||||
|
||||
#if (!$repository)
|
||||
<section key="template.cvs_usage.section1.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
For those developers who are stuck behind a corporate
|
||||
firewall, <a href="http://cvsgrab.sourceforge.net/">CVSGrab</a>
|
||||
can use the viewcvs web interface to checkout the source code.
|
||||
<message key="template.cvs_usage.section1.no_repository"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
</section>
|
||||
#else
|
||||
#set ($url = $escape.getText($repository.url))
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
<section key="template.cvs_usage.section2.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<a href="$url">$url</a>
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
|
||||
#if ($repository.connection && $repository.connection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
|
||||
#if ($connscm == 'cvs')
|
||||
#set ($conn = $repository.getCvsRoot($repository.connection, ''))
|
||||
#set ($module = $repository.getCvsModule($repository.connection))
|
||||
|
||||
<section key="template.cvs_usage.section3.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.cvs_usage.section3.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<source>
|
||||
<![CDATA[
|
||||
maven scm:checkout-project
|
||||
-Dmaven.scm.method=$connscm
|
||||
-Dmaven.scm.cvs.module=$module
|
||||
-Dmaven.scm.cvs.root=$conn
|
||||
-Dmaven.scm.checkout.dir=.
|
||||
]]>
|
||||
</source>
|
||||
</section>
|
||||
|
||||
<section key="template.cvs_usage.section4.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.cvs_usage.section4.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<p>
|
||||
cvs -d $conn login
|
||||
<br />
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<message key="template.cvs_usage.section4.updates"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.developerConnection && $repository.developerConnection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
|
||||
#if ($connscm == 'cvs')
|
||||
#set ($conn = $repository.getCvsRoot($repository.developerConnection, 'username'))
|
||||
#set ($module = $repository.getCvsModule($repository.developerConnection))
|
||||
#set ($server = $repository.getCvsServer($repository.developerConnection))
|
||||
|
||||
<section key="template.cvs_usage.section5.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.cvs_usage.section5.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<source>
|
||||
<![CDATA[
|
||||
maven scm:checkout-project
|
||||
-Dmaven.scm.method=$connscm
|
||||
-Dmaven.scm.cvs.module=$module
|
||||
-Dmaven.scm.cvs.root=$conn
|
||||
-Dmaven.scm.checkout.dir=.
|
||||
-Dmaven.scm.cvs.rsh=ssh
|
||||
]]>
|
||||
</source>
|
||||
|
||||
<p>
|
||||
<message key="template.cvs_usage.section5.remember"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section key="template.cvs_usage.section6.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
|
||||
<p>
|
||||
<message key="template.cvs_usage.section6.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<p>
|
||||
export CVS_RSH=ssh
|
||||
<br />
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<message key="template.cvs_usage.section6.remember"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
|
||||
#if ($connscm == 'cvs')
|
||||
<section key="template.cvs_usage.section7.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
|
||||
<p>
|
||||
<message key="template.cvs_usage.section7.description1"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
<a href="http://cvsgrab.sourceforge.net/">CVSGrab</a>
|
||||
<message key="template.cvs_usage.section7.description2"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
|
||||
#end
|
||||
</body>
|
||||
|
||||
</body>
|
||||
</document>
|
||||
|
||||
|
||||
@ -17,55 +17,63 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title key="template.dependencies.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<properties>
|
||||
<title>Dependencies</title>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section name="Dependencies">
|
||||
#if ($project.dependencies.size() == 0)
|
||||
<p>
|
||||
There are no dependencies for this project. It is a standalone
|
||||
application that does not depend on any other project.
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
The following is a list of dependencies for this project. These
|
||||
dependencies are required to compile and run the application:
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Artifact ID</th>
|
||||
<th>Type</th>
|
||||
<th>Version</th>
|
||||
<th>URL</th>
|
||||
<th>Comment</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($dep in $dependencyDescriber.Dependencies)
|
||||
<tr>
|
||||
<td>${dep.ArtifactId}</td>
|
||||
<td>${dep.Type}</td>
|
||||
<td>${dep.Version}</td>
|
||||
<td>
|
||||
#if ($dep.Url)
|
||||
<a href="${dep.Url}">${dep.Url}</a>
|
||||
#end
|
||||
</td>
|
||||
<td>
|
||||
#if(${dep.comment})
|
||||
${dep.comment}
|
||||
#end
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</section>
|
||||
</body>
|
||||
<body>
|
||||
<section key="template.dependencies.section.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
#if ($project.dependencies.size() == 0)
|
||||
<p>
|
||||
<message key="template.dependencies.section.no_dependency"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
<message key="template.dependencies.section.dependencies"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<message key="template.dependencies.section.artifactID"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.dependencies.section.type"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.dependencies.section.version"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.dependencies.section.url"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($dep in $dependencyDescriber.Dependencies)
|
||||
<tr>
|
||||
<td>${dep.ArtifactId}</td>
|
||||
<td>${dep.Type}</td>
|
||||
<td>${dep.Version}</td>
|
||||
<td>
|
||||
#if ($dep.Url)
|
||||
<a href="${dep.Url}">${dep.Url}</a>
|
||||
#end
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
|
||||
@ -17,21 +17,20 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
|
||||
<document>
|
||||
|
||||
<properties>
|
||||
<title>Issue Tracking</title>
|
||||
</properties>
|
||||
<properties>
|
||||
<title key="template.issue_tracking.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section name="Issue Tracking">
|
||||
<p>
|
||||
#if ($project.issueTrackingUrl && $project.issueTrackingUrl != '')
|
||||
#set ($url = $escape.getText($project.issueTrackingUrl))
|
||||
<a href="$url">$url</a>
|
||||
#end
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
<body>
|
||||
<section key="template.issue_tracking.section.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
#set ($url = $escape.getText($project.issueTrackingUrl))
|
||||
<a href="$url">$url</a>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
|
||||
|
||||
@ -20,58 +20,71 @@
|
||||
|
||||
#macro (displayLink $label $link)
|
||||
<td>
|
||||
#if ($link && $link.length() != 0)
|
||||
#if ($link.trim().startsWith("http"))
|
||||
<a href="$escape.getText($link)">$label</a>
|
||||
#if ($link && $link.length() != 0)
|
||||
#if ($link.trim().startsWith("http"))
|
||||
<a href="$escape.getText($link)">$label</a>
|
||||
#else
|
||||
<a href="mailto:$link">$label</a>
|
||||
#end
|
||||
#else
|
||||
<a href="mailto:$link">$label</a>
|
||||
<message key="template.mail_lists.not_available"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
#end
|
||||
#else
|
||||
Not Available
|
||||
#end
|
||||
</td>
|
||||
#end
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title key="template.mail_lists.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<properties>
|
||||
<title>Mailing Lists</title>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section name="Mailing Lists">
|
||||
#if ($project.mailingLists.size() == 0)
|
||||
<p>
|
||||
There are no mailing lists established for this project. Please
|
||||
check back at a later date.
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
These are the mailing lists that have been established for this
|
||||
project. For each list, there is a subscribe, unsubscribe, and an
|
||||
archive link.
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>List Name</th>
|
||||
<th>Subscribe</th>
|
||||
<th>Unsubscribe</th>
|
||||
<th>Archive</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($list in $project.mailingLists)
|
||||
<tr>
|
||||
<td>$list.name</td>
|
||||
#displayLink("Subscribe" $list.subscribe)
|
||||
#displayLink("Unsubscribe" $list.unsubscribe)
|
||||
#displayLink("Archive" $list.archive)
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</section>
|
||||
</body>
|
||||
<body>
|
||||
<section key="template.mail_lists.section.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
#if ($project.mailingLists.size() == 0)
|
||||
<p>
|
||||
<message key="template.mail_lists.section.no_mail_list"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
<message key="template.mail_lists.section.mail_lists"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<message key="template.mail_lists.section.list_name"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.mail_lists.section.subscribe"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.mail_lists.section.unsubscribe"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.mail_lists.section.archive"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($list in $project.mailingLists)
|
||||
<tr>
|
||||
<td>$list.name</td>
|
||||
#displayLink("Subscribe" $list.subscribe)
|
||||
#displayLink("Unsubscribe" $list.unsubscribe)
|
||||
#displayLink("Archive" $list.archive)
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
|
||||
@ -17,49 +17,84 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title key="template.maven_reports.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<properties>
|
||||
<title>Project Reports</title>
|
||||
</properties>
|
||||
<body>
|
||||
<section key="template.maven_reports.section.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.maven_reports.section.maven_reports1"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
<a href="http://maven.apache.org/">Maven</a>
|
||||
<message key="template.maven_reports.section.maven_reports2"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<body>
|
||||
<section name="Maven Generated Reports">
|
||||
<p>
|
||||
This document provides an overview of the various reports that
|
||||
are automatically generated by
|
||||
<a href="http://maven.apache.org/">Maven</a>.
|
||||
Each report is briefly described below.
|
||||
</p>
|
||||
#set ($reports = $project.getPluginContext('maven-xdoc-plugin').getVariable('reports'))
|
||||
#set ($currentLocale = $project.getPluginContext('maven-xdoc-plugin').getVariable('currentLocale'))
|
||||
|
||||
#set ($reports = $project.getPluginContext('maven-xdoc-plugin').getVariable('reports'))
|
||||
<subsection name="Overview">
|
||||
<table>
|
||||
<tr><th>Document</th><th>Description</th></tr>
|
||||
#foreach ($report in $reports)
|
||||
#if ($report.link && $report.link.length() != 0)
|
||||
<tr>
|
||||
#if($report.target && $report.target.length() != 0)
|
||||
<td><a href="${report.link}.html" target="${report.target}">$report.name</a></td>
|
||||
#else
|
||||
<td><a href="${report.link}.html">$report.name</a></td>
|
||||
#end
|
||||
<td>$report.description</td>
|
||||
</tr>
|
||||
#end
|
||||
#if ($report.externalLink && $report.externalLink.length() != 0)
|
||||
<tr>
|
||||
#if($report.target && $report.target.length() != 0)
|
||||
<td><a href="${report.externalLink}" class="externalLink" target="${report.target}">$report.name</a></td>
|
||||
#else
|
||||
<td><a href="${report.externalLink}" class="externalLink">$report.name</a></td>
|
||||
#end
|
||||
<td>$report.description</td>
|
||||
</tr>
|
||||
#end
|
||||
#end
|
||||
</table>
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
<subsection key="template.maven_reports.section.subsection.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<message key="template.maven_reports.section.subsection.document"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.maven_reports.section.subsection.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
</tr>
|
||||
#foreach ($report in $reports)
|
||||
#if ($report.link && $report.link.length() != 0)
|
||||
<tr>
|
||||
#if($report.target && $report.target.length() != 0)
|
||||
<td>
|
||||
<a href="${report.link}.html"
|
||||
target="${report.target}">
|
||||
$report.name
|
||||
</a>
|
||||
</td>
|
||||
#else
|
||||
<td>
|
||||
<a href="${report.link}.html">
|
||||
$report.name
|
||||
</a>
|
||||
</td>
|
||||
#end
|
||||
<td>$report.description</td>
|
||||
</tr>
|
||||
#end
|
||||
#if ($report.externalLink && $report.externalLink.length() != 0)
|
||||
<tr>
|
||||
#if($report.target && $report.target.length() != 0)
|
||||
<td>
|
||||
<a href="${report.externalLink}"
|
||||
class="externalLink"
|
||||
target="${report.target}">
|
||||
$report.name
|
||||
</a>
|
||||
</td>
|
||||
#else
|
||||
<td>
|
||||
<a href="${report.externalLink}"
|
||||
class="externalLink">
|
||||
$report.name
|
||||
</a>
|
||||
</td>
|
||||
#end
|
||||
<td>$report.description</td>
|
||||
</tr>
|
||||
#end
|
||||
#end
|
||||
</table>
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
|
||||
@ -17,71 +17,109 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title key="template.project_info.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<properties>
|
||||
<title>Project Information</title>
|
||||
</properties>
|
||||
<body>
|
||||
<section key="template.project_info.section.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.project_info.section.project_information1"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
<a href="http://maven.apache.org/">Maven</a>
|
||||
<message key="template.project_info.section.project_information2"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<body>
|
||||
<section name="General Project Information">
|
||||
<p>
|
||||
This document provides an overview of the various documents and
|
||||
links that are part of this project's general information. All
|
||||
of this content is automatically generated by
|
||||
<a href="http://maven.apache.org/">Maven</a> on
|
||||
behalf of the project.
|
||||
</p>
|
||||
<subsection key="template.project_info.section.subsection.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<table>
|
||||
<tr>
|
||||
<th>
|
||||
<message key="template.project_info.section.subsection.document"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.project_info.section.subsection.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="mail-lists.html">
|
||||
<message key="template.project_info.section.subsection.document.mailing_lists"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<message key="template.project_info.section.subsection.description.mailing_lists"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="team-list.html">
|
||||
<message key="template.project_info.section.subsection.document.project_team"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<message key="template.project_info.section.subsection.description.project_team"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="dependencies.html">
|
||||
<message key="template.project_info.section.subsection.document.dependencies"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<message key="template.project_info.section.subsection.description.dependencies"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<subsection name="Overview">
|
||||
<table>
|
||||
<tr><th>Document</th><th>Description</th></tr>
|
||||
<tr><td><a href="mail-lists.html">Mailing Lists</a></td>
|
||||
<td>
|
||||
This document provides subscription and archive
|
||||
information for this project's mailing lists.
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td><a href="team-list.html">Project Team</a></td>
|
||||
<td>
|
||||
This document provides information on the members of
|
||||
this project. These are the individuals who have
|
||||
contributed to the project in one form or another.
|
||||
</td>
|
||||
</tr>
|
||||
<tr><td><a href="dependencies.html">Dependencies</a></td>
|
||||
<td>
|
||||
This document lists the projects dependencies and provides
|
||||
information on each dependency.
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<!--
|
||||
|
||||
This is really bad that the url requires specification in two
|
||||
places. Makes pluggable reporting impossible. FIX
|
||||
|
||||
-->
|
||||
|
||||
#if ($project.repository.url && $project.repository.url != '')
|
||||
<tr><td><a href="cvs-usage.html">Source Repository</a></td>
|
||||
<td>
|
||||
This is a link to the online source repository that can be
|
||||
viewed via a web browser.
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
#if ($project.issueTrackingUrl && $project.issueTrackingUrl != '')
|
||||
<tr><td><a href="issue-tracking.html">Issue Tracking</a></td>
|
||||
<td>
|
||||
This is a link to the issue tracking system for this
|
||||
project. Issues (bugs, features, change requests) can be
|
||||
created and queried using this link.
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
</table>
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
<!--
|
||||
This is really bad that the url requires specification in two
|
||||
places. Makes pluggable reporting impossible. FIX
|
||||
-->
|
||||
|
||||
#if ($project.repository.url && $project.repository.url != '')
|
||||
<tr>
|
||||
<td>
|
||||
<a href="cvs-usage.html">
|
||||
<message key="template.project_info.section.subsection.document.source_repository"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<message key="template.project_info.section.subsection.description.source_repository"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
#if ($project.issueTrackingUrl && $project.issueTrackingUrl != '')
|
||||
<tr>
|
||||
<td>
|
||||
<a href="issue-tracking.html">
|
||||
<message key="template.project_info.section.subsection.document.issue_tracking"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
<message key="template.project_info.section.subsection.description.issue_tracking"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
</table>
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
|
||||
@ -17,102 +17,106 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
|
||||
<document>
|
||||
|
||||
|
||||
<properties>
|
||||
<title>CVS</title>
|
||||
</properties>
|
||||
<properties>
|
||||
<title key="template.cvs.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
#set ($repository = $project.repository)
|
||||
|
||||
#if (!$repository)
|
||||
<section name="Repository">
|
||||
<p>
|
||||
No SCM repository is defined.
|
||||
</p>
|
||||
</section>
|
||||
#else
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
#set ($url = $escape.getText($repository.url))
|
||||
<section name="Web Access">
|
||||
<p>
|
||||
<a href="$url">$url</a>
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
|
||||
#if ($repository.connection && $repository.connection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
#if ($connscm == 'cvs')
|
||||
#set ($conn = $repository.getCvsRoot($repository.connection, ''))
|
||||
#set ($module = $repository.getCvsModule($repository.connection))
|
||||
<section name="Anonymous CVS Access">
|
||||
<p>
|
||||
This project's CVS repository can be checked out through anonymous (pserver)
|
||||
CVS with the following instruction set.
|
||||
When prompted for a password for anonymous, simply press the Enter key.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
cvs -d $conn login
|
||||
<br/>
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
<body>
|
||||
#set ($repository = $project.repository)
|
||||
|
||||
<p>
|
||||
Updates from within the module's directory do not need the -d parameter.
|
||||
</p>
|
||||
</section>
|
||||
#if (!$repository)
|
||||
<section key="template.cvs.section1.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.cvs.section1.no_repository"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
</section>
|
||||
#else
|
||||
#set ($url = $escape.getText($repository.url))
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
<section key="template.cvs.section2.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<a href="$url">$url</a>
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
|
||||
#if ($repository.connection && $repository.connection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
|
||||
#if ($connscm == 'cvs')
|
||||
#set ($conn = $repository.getCvsRoot($repository.connection, ''))
|
||||
#set ($module = $repository.getCvsModule($repository.connection))
|
||||
<section key="template.cvs.section3.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.cvs.section3.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<p>
|
||||
cvs -d $conn login
|
||||
<br />
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<message key="template.cvs.section3.updates"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.developerConnection && $repository.developerConnection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
|
||||
#if ($connscm == 'cvs')
|
||||
#set ($conn = $repository.getCvsRoot($repository.developerConnection, 'username'))
|
||||
#set ($module = $repository.getCvsModule($repository.developerConnection))
|
||||
#set ($server = $repository.getCvsServer($repository.developerConnection))
|
||||
|
||||
<section key="template.cvs.section4.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
|
||||
<p>
|
||||
<message key="template.cvs.section4.description"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<p>
|
||||
export CVS_RSH=ssh
|
||||
<br />
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<message key="template.cvs.section4.remember"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
<section key="template.cvs.section5.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.cvs.section5.description1"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
<a href="http://cvsgrab.sourceforge.net/">CVSGrab</a>
|
||||
<message key="template.cvs.section5.description2"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.developerConnection && $repository.developerConnection != '')
|
||||
#set ($connscm = $repository.getScmType())
|
||||
#if ($connscm == 'cvs')
|
||||
|
||||
#set ($conn = $repository.getCvsRoot($repository.developerConnection, 'username'))
|
||||
#set ($module = $repository.getCvsModule($repository.developerConnection))
|
||||
#set ($server = $repository.getCvsServer($repository.developerConnection))
|
||||
|
||||
<section name="Developer CVS Access via SSH">
|
||||
|
||||
<p>
|
||||
Only project developers can access the CVS tree via this method.
|
||||
SSH1 must be installed on your client machine. Substitute
|
||||
<b>name</b> with the proper value. Enter your site password when prompted.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
export CVS_RSH=ssh
|
||||
<br/>
|
||||
cvs -z3 -d $conn co $module
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Remember to replace 'username' with your actual username on $server.
|
||||
</p>
|
||||
|
||||
</section>
|
||||
#end
|
||||
#end
|
||||
|
||||
#if ($repository.url && $repository.url != '')
|
||||
<section name="CVS Access behind a firewall">
|
||||
|
||||
<p>
|
||||
For those developers who are stuck behind a corporate
|
||||
firewall, <a href="http://cvsgrab.sourceforge.net/">CVSGrab</a>
|
||||
can use the viewcvs web interface to checkout the source code.
|
||||
</p>
|
||||
|
||||
</section>
|
||||
#end
|
||||
|
||||
#end
|
||||
</body>
|
||||
|
||||
</body>
|
||||
</document>
|
||||
|
||||
|
||||
@ -17,141 +17,194 @@
|
||||
*/
|
||||
-->
|
||||
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title key="template.team_list.title"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</properties>
|
||||
|
||||
<properties>
|
||||
<title>Project Team</title>
|
||||
</properties>
|
||||
|
||||
<head>
|
||||
<script type="text/javascript">
|
||||
function offsetDate(id, offset) {
|
||||
<head>
|
||||
<script type="text/javascript">
|
||||
function offsetDate(id, offset) {
|
||||
var now = new Date() ;
|
||||
var nowTime = now.getTime() ;
|
||||
var localOffset = now.getTimezoneOffset() ;
|
||||
var developerTime = nowTime + (offset * 60 * 60 * 1000) + (localOffset * 60 * 1000) ;
|
||||
var developerDate = new Date(developerTime) ;
|
||||
|
||||
var now = new Date() ;
|
||||
var nowTime = now.getTime() ;
|
||||
var localOffset = now.getTimezoneOffset() ;
|
||||
var developerTime = nowTime + (offset * 60 * 60 * 1000) + (localOffset * 60 * 1000) ;
|
||||
var developerDate = new Date(developerTime) ;
|
||||
document.getElementById(id).innerHTML = developerDate;
|
||||
}
|
||||
|
||||
document.getElementById(id).innerHTML = developerDate;
|
||||
}
|
||||
|
||||
function init() {
|
||||
#foreach ($developer in $project.developers)
|
||||
#if ($developer.timezone)
|
||||
#if ($developer.timezone != "")
|
||||
offsetDate("developer-$developer.id", "$developer.timezone");
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body onload="init();">
|
||||
function init() {
|
||||
#foreach ($developer in $project.developers)
|
||||
#if ($developer.timezone)
|
||||
#if ($developer.timezone != "")
|
||||
offsetDate("developer-$developer.id", "$developer.timezone");
|
||||
#end
|
||||
#end
|
||||
#end
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<section name="The Team">
|
||||
<p>
|
||||
A successful project requires many people to play many roles.
|
||||
Some members write code or documentation, while others are
|
||||
valuable as testers, submitting patches and suggestions.
|
||||
</p>
|
||||
<body onload="init();">
|
||||
|
||||
<p>
|
||||
The team is comprised of <a href="#Members">Members</a>
|
||||
and <a href="#Contributors">Contributors</a>. Members
|
||||
have direct access to the source of a project and actively
|
||||
evolve the code-base. Contributors improve the project
|
||||
through submission of patches and suggestions to the Members.
|
||||
The number of Contributors to the project is unbounded.
|
||||
Get involved today. All contributions to the project are
|
||||
greatly appreciated.
|
||||
</p>
|
||||
<section key="template.team_list.section.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
<p>
|
||||
<message key="template.team_list.section.description1"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<subsection name="Members">
|
||||
#if ($project.developers.size() == 0)
|
||||
<p>
|
||||
There are no developers working on this project. Please check
|
||||
back at a later date.
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
The following is a list of developers with commit privileges that have
|
||||
directly contributed to the project in one way or another.
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Id</th>
|
||||
<th>Email</th>
|
||||
<th>Organization</th>
|
||||
<th>Roles</th>
|
||||
<th>TZ Offset</th>
|
||||
<th>Time</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($developer in $project.developers)
|
||||
<tr>
|
||||
#if ($developer.url.length() != 0)
|
||||
<td><a href="$developer.url">$!developer.name</a></td>
|
||||
#else
|
||||
<td>$!developer.name</td>
|
||||
#end
|
||||
<td><a name="$!developer.id"/>$!developer.id</td>
|
||||
<td><a href="mailto:$!developer.email">$!developer.email</a></td>
|
||||
<td>$!developer.organization</td>
|
||||
<td>
|
||||
#foreach ($role in $developer.roles)
|
||||
$role<br/>
|
||||
#end
|
||||
</td>
|
||||
<td>$!developer.timezone</td>
|
||||
<td><span id="developer-$developer.id">Unknown</span></td>
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</subsection>
|
||||
<subsection name="Contributors">
|
||||
#if ($project.contributors.size() == 0)
|
||||
<p>
|
||||
There are no contributors listed for this project. Please check
|
||||
back again later.
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
The following additional people have contributed to this project
|
||||
through the way of suggestions, patches or documentation.
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Email</th>
|
||||
<th>Organization</th>
|
||||
<th>Roles</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($contributor in $project.contributors)
|
||||
<tr>
|
||||
<td>$!contributor.name</td>
|
||||
<td><a href="mailto:$!contributor.email">$!contributor.email</a></td>
|
||||
<td>$!contributor.organization</td>
|
||||
<td>
|
||||
#foreach ($role in $contributor.roles)
|
||||
$role<br/>
|
||||
#end
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
<p>
|
||||
<message key="template.team_list.section.description2"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
|
||||
<subsection key="template.team_list.section.members.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
#if ($project.developers.size() == 0)
|
||||
<p>
|
||||
<message
|
||||
key="template.team_list.section.no_developer"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
<message key="template.team_list.section.developers"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<message key="template.team_list.section.developer.name"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.developer.id"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.developer.email"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.developer.organization"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.developer.roles"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.developer.offset"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.developer.time"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($developer in $project.developers)
|
||||
<tr>
|
||||
#if ($developer.url.length() != 0)
|
||||
<td>
|
||||
<a href="$developer.url">
|
||||
$!developer.name
|
||||
</a>
|
||||
</td>
|
||||
#else
|
||||
<td>$!developer.name</td>
|
||||
#end
|
||||
<td>
|
||||
<a name="$!developer.id" />
|
||||
$!developer.id
|
||||
</td>
|
||||
<td>
|
||||
<a href="mailto:$!developer.email">
|
||||
$!developer.email
|
||||
</a>
|
||||
</td>
|
||||
<td>$!developer.organization</td>
|
||||
<td>
|
||||
#foreach ($role in $developer.roles)
|
||||
$role
|
||||
<br />
|
||||
#end
|
||||
</td>
|
||||
<td>$!developer.timezone</td>
|
||||
<td>
|
||||
<span id="developer-$developer.id">
|
||||
<message key="template.team_list.section.developer.timezone.unknown"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</subsection>
|
||||
<subsection
|
||||
key="template.team_list.section.contributors.title"
|
||||
bundle="plugin-resources\templates\templates">
|
||||
#if ($project.contributors.size() == 0)
|
||||
<p>
|
||||
<message key="template.team_list.section.no_contributor"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
#else
|
||||
<p>
|
||||
<message key="template.team_list.section.contributors"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</p>
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<message key="template.team_list.section.contributor.name"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.contributor.email"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.contributor.organization"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
<th>
|
||||
<message key="template.team_list.section.contributor.roles"
|
||||
bundle="plugin-resources\templates\templates" />
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
#foreach ($contributor in $project.contributors)
|
||||
<tr>
|
||||
<td>$!contributor.name</td>
|
||||
<td>
|
||||
<a href="mailto:$!contributor.email">
|
||||
$!contributor.email
|
||||
</a>
|
||||
</td>
|
||||
<td>$!contributor.organization</td>
|
||||
<td>
|
||||
#foreach ($role in $contributor.roles)
|
||||
$role
|
||||
<br />
|
||||
#end
|
||||
</td>
|
||||
</tr>
|
||||
#end
|
||||
</tbody>
|
||||
</table>
|
||||
#end
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
|
||||
154
xdoc/src/plugin-resources/templates/templates.properties
Normal file
154
xdoc/src/plugin-resources/templates/templates.properties
Normal file
@ -0,0 +1,154 @@
|
||||
# -------------------------------------------------------------------
|
||||
# Copyright 2001-2004 The Apache Software Foundation.
|
||||
#
|
||||
# Licensed 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.
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
# To display the default language
|
||||
defaultLocale.byDefault=English [By default]
|
||||
|
||||
# For cvs.xml
|
||||
template.cvs.title=CVS
|
||||
template.cvs.section1.title=Repository
|
||||
template.cvs.section1.no_repository=No SCM repository is defined.
|
||||
template.cvs.section2.title=Web Access
|
||||
template.cvs.section3.title=Anonymous CVS Access
|
||||
template.cvs.section3.description=This project's CVS repository can be checked out through anonymous (pserver) CVS with the following instruction set. When prompted for a password for anonymous, simply press the Enter key.
|
||||
template.cvs.section3.updates=Updates from within the module's directory do not need the -d parameter.
|
||||
template.cvs.section4.title=Developer CVS Access via SSH
|
||||
template.cvs.section4.description=Only project developers can access the CVS tree via this method. SSH1 must be installed on your client machine. Substitute <b>name</b> with the proper value. Enter your site password when prompted.
|
||||
template.cvs.section4.remember=Remember to replace 'username' with your actual username on the server.
|
||||
template.cvs.section5.title=CVS Access behind a firewall
|
||||
template.cvs.section5.description1=For those developers who are stuck behind a corporate firewall,
|
||||
template.cvs.section5.description2=can use the viewcvs web interface to checkout the source code.
|
||||
|
||||
# For cvs-usage.xml
|
||||
template.cvs_usage.title=CVS
|
||||
template.cvs_usage.section1.title=Repository
|
||||
template.cvs_usage.section1.no_repository=No SCM repository is defined.
|
||||
template.cvs_usage.section2.title=Web Access
|
||||
template.cvs_usage.section3.title=Anonymous Access with Maven
|
||||
template.cvs_usage.section3.description=This project's CVS repository can be checked out through anonymous (pserver) CVS with the following instruction on a single line.
|
||||
template.cvs_usage.section4.title=Anonymous CVS Access
|
||||
template.cvs_usage.section4.description=This project's CVS repository can be checked out through anonymous (pserver) CVS with the following instruction set. When prompted for a password for anonymous, simply press the Enter key.
|
||||
template.cvs_usage.section4.updates=Updates from within the module's directory do not need the -d parameter.
|
||||
template.cvs_usage.section5.title=Developer Access with Maven
|
||||
template.cvs_usage.section5.description=Only project developers can access the CVS tree via this method. Substitute <b>username</b> with the proper value.
|
||||
template.cvs_usage.section5.remember=Remember to replace 'username' with your actual username on the server.<br/> Also change <code>ssh</code> in <code>maven.scm.cvs.rsh=ssh</code> to the name of your ssh executable.
|
||||
template.cvs_usage.section6.title=Developer CVS Access via SSH
|
||||
template.cvs_usage.section6.description=Only project developers can access the CVS tree via this method. SSH1 must be installed on your client machine. Substitute <b>username</b> with the proper value. Enter your site password when prompted.
|
||||
template.cvs_usage.section6.remember=Remember to replace 'username' with your actual username on the server.
|
||||
template.cvs_usage.section7.title=CVS Access behind a firewall
|
||||
template.cvs_usage.section7.description1=For those developers who are stuck behind a corporate firewall,
|
||||
template.cvs_usage.section7.description2=can use the viewcvs web interface to checkout the source code.
|
||||
|
||||
# For dependencies.xml
|
||||
template.dependencies.title=Dependencies
|
||||
template.dependencies.section.title=Dependencies
|
||||
template.dependencies.section.no_dependency=There are no dependencies for this project. It is a standalone application that does not depend on any other project.
|
||||
template.dependencies.section.dependencies=The following is a list of dependencies for this project. These dependencies are required to compile and run the application:
|
||||
template.dependencies.section.artifactID=Artifact ID
|
||||
template.dependencies.section.type=Type
|
||||
template.dependencies.section.version=Version
|
||||
template.dependencies.section.url=URL
|
||||
|
||||
# For issue-tracking.xml
|
||||
template.issue_tracking.title=Issue Tracking
|
||||
template.issue_tracking.section.title=Issue Tracking
|
||||
|
||||
# For mail_lists.xml
|
||||
template.mail_lists.not_available=Not Available
|
||||
template.mail_lists.title=Mailing Lists
|
||||
template.mail_lists.section.title=Mailing Lists
|
||||
template.mail_lists.section.no_mail_list=There are no mailing lists established for this project. Please check back at a later date.
|
||||
template.mail_lists.section.mail_lists=These are the mailing lists that have been established for this project. For each list, there is a subscribe, unsubscribe, and an archive link.
|
||||
template.mail_lists.section.list_name=List Name
|
||||
template.mail_lists.section.subscribe=Subscribe
|
||||
template.mail_lists.section.unsubscribe=Unsubscribe
|
||||
template.mail_lists.section.archive=Archive
|
||||
|
||||
# For maven-reports.xml
|
||||
template.maven_reports.title=Project Reports
|
||||
template.maven_reports.section.title=Maven Generated Reports
|
||||
template.maven_reports.section.maven_reports1=This document provides an overview of the various reports that are automatically generated by
|
||||
template.maven_reports.section.maven_reports2=. Each report is briefly described below.
|
||||
template.maven_reports.section.subsection.title=Overview
|
||||
template.maven_reports.section.subsection.document=Document
|
||||
template.maven_reports.section.subsection.description=Description
|
||||
|
||||
# For project-info.xml
|
||||
template.project_info.title=Project Information
|
||||
template.project_info.section.title=General Project Information
|
||||
template.project_info.section.project_information1=This document provides an overview of the various documents and links that are part of this project's general information. All of this content is automatically generated by
|
||||
template.project_info.section.project_information2=on behalf of the project.
|
||||
template.project_info.section.subsection.title=Overview
|
||||
template.project_info.section.subsection.document=Document
|
||||
template.project_info.section.subsection.description=Description
|
||||
template.project_info.section.subsection.document.mailing_lists=Mailing Lists
|
||||
template.project_info.section.subsection.description.mailing_lists=This document provides subscription and archive information for this project's mailing lists.
|
||||
template.project_info.section.subsection.document.project_team=Project Team
|
||||
template.project_info.section.subsection.description.project_team=This document provides information on the members of this project. These are the individuals who have contributed to the project in one form or another.
|
||||
template.project_info.section.subsection.document.dependencies=Dependencies
|
||||
template.project_info.section.subsection.description.dependencies=This document lists the projects dependencies and provides information on each dependency.
|
||||
template.project_info.section.subsection.document.source_repository=Source Repository
|
||||
template.project_info.section.subsection.description.source_repository=This is a link to the online source repository that can be viewed via a web browser.
|
||||
template.project_info.section.subsection.document.issue_tracking=Issue Tracking
|
||||
template.project_info.section.subsection.description.issue_tracking=This is a link to the issue tracking system for this project. Issues (bugs, features, change requests) can be created and queried using this link.
|
||||
|
||||
# For team-list.xml
|
||||
template.team_list.title=Team list
|
||||
template.team_list.section.title=The Team
|
||||
template.team_list.section.description1=A successful project requires many people to play many roles. Some members write code or documentation, while others are valuable as testers, submitting patches and suggestions.
|
||||
template.team_list.section.description2=The team is comprised of Members and Contributors. Members have direct access to the source of a project and actively evolve the code-base. Contributors improve the project through submission of patches and suggestions to the Members. The number of Contributors to the project is unbounded. Get involved today. All contributions to the project are greatly appreciated.
|
||||
template.team_list.section.members.title=Members
|
||||
template.team_list.section.no_developer=There are no developers working on this project. Please check back at a later date.
|
||||
template.team_list.section.developers=The following is a list of developers with commit privileges that have directly contributed to the project in one way or another.
|
||||
template.team_list.section.developer.name=Name
|
||||
template.team_list.section.developer.id=Id
|
||||
template.team_list.section.developer.email=Email
|
||||
template.team_list.section.developer.organization=Organization
|
||||
template.team_list.section.developer.roles=Roles
|
||||
template.team_list.section.developer.offset=TZ Offset
|
||||
template.team_list.section.developer.time=Time
|
||||
template.team_list.section.contributors.title=Contributors
|
||||
template.team_list.section.no_contributor=There are no contributors listed for this project. Please check back again later.
|
||||
template.team_list.section.contributors=The following additional people have contributed to this project through the way of suggestions, patches or documentation.
|
||||
template.team_list.section.contributor.name=Name
|
||||
template.team_list.section.contributor.email=Email
|
||||
template.team_list.section.contributor.organization=Organization
|
||||
template.team_list.section.contributor.roles=Roles
|
||||
template.team_list.section.developer.timezone.unknown=Unknown
|
||||
|
||||
# For navigation.jelly
|
||||
navigation.menu.project_documentation=Project Documentation
|
||||
navigation.menu.item.about=About
|
||||
navigation.menu.item.downloads=Downloads
|
||||
navigation.menu.item.project_info=Project Info
|
||||
navigation.menu.item.mailing_lists=Mailing Lists
|
||||
navigation.menu.item.project_team=Project Team
|
||||
navigation.menu.item.dependencies=Dependencies
|
||||
navigation.menu.item.source_repository=Source Repository
|
||||
navigation.menu.item.issue_tracking=Issue Tracking
|
||||
navigation.menu.item.project_reports=Project Reports
|
||||
navigation.menu.item.development_process=Development Process
|
||||
|
||||
# For site.jsl
|
||||
site.legend=Legend
|
||||
site.last_published=Last published
|
||||
site.doc_for=Doc for
|
||||
site.external_link=External Link
|
||||
site.opens_new_window=Opens in a new window
|
||||
site.language=Language
|
||||
site.goals=Goals
|
||||
site.goal=Goal
|
||||
site.description=Description
|
||||
153
xdoc/src/plugin-resources/templates/templates_de.properties
Normal file
153
xdoc/src/plugin-resources/templates/templates_de.properties
Normal file
@ -0,0 +1,153 @@
|
||||
# -------------------------------------------------------------------
|
||||
# Copyright 2001-2004 The Apache Software Foundation.
|
||||
#
|
||||
# Licensed 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.
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
# Translated by Daniel Frey (daniel.frey@xmatrix.ch)
|
||||
|
||||
# To display the default language
|
||||
defaultLocale.byDefault=Deutsche [Durch Rückstellung]
|
||||
|
||||
# For cvs.xml
|
||||
template.cvs.title = CVS
|
||||
template.cvs.section1.title = Repository
|
||||
template.cvs.section1.no_repository = Es ist kein SCM definiert.
|
||||
template.cvs.section2.title = Zugriff über das Web
|
||||
template.cvs.section3.title = Anonymer CVS Zugriff
|
||||
template.cvs.section3.description = This project's CVS repository can be checked out through anonymous (pserver) CVS with the following instruction set. When prompted for a password for anonymous, simply press the Enter key.
|
||||
template.cvs.section3.updates = Updates from within the module's directory do not need the -d parameter.
|
||||
template.cvs.section4.title = Developer CVS Access via SSH
|
||||
template.cvs.section4.description = Only project developers can access the CVS tree via this method. SSH1 must be installed on your client machine. Substitute <b>name</b> with the proper value. Enter your site password when prompted.
|
||||
template.cvs.section4.remember = Remember to replace 'username' with your actual username on the server.
|
||||
template.cvs.section5.title = CVS Access behind a firewall
|
||||
template.cvs.section5.description1 = For those developers who are stuck behind a corporate firewall,
|
||||
template.cvs.section5.description2 = can use the viewcvs web interface to checkout the source code.
|
||||
|
||||
# For cvs-usage.xml
|
||||
template.cvs_usage.title = CVS
|
||||
template.cvs_usage.section1.title = Repository
|
||||
template.cvs_usage.section1.no_repository = No SCM repository is defined.
|
||||
template.cvs_usage.section2.title = Web Access
|
||||
template.cvs_usage.section3.title = Anonymous Access with Maven
|
||||
template.cvs_usage.section3.description = This project's CVS repository can be checked out through anonymous (pserver) CVS with the following instruction on a single line.
|
||||
template.cvs_usage.section4.title = Anonymous CVS Access
|
||||
template.cvs_usage.section4.description = This project's CVS repository can be checked out through anonymous (pserver) CVS with the following instruction set. When prompted for a password for anonymous, simply press the Enter key.
|
||||
template.cvs_usage.section4.updates = Updates from within the module's directory do not need the -d parameter.
|
||||
template.cvs_usage.section5.title = Developer Access with Maven
|
||||
template.cvs_usage.section5.description = Only project developers can access the CVS tree via this method. Substitute <b>username</b> with the proper value.
|
||||
template.cvs_usage.section5.remember = Remember to replace 'username' with your actual username on the server.<br/> Also change <code>ssh</code> in <code>maven.scm.cvs.rsh = ssh</code> to the name of your ssh executable.
|
||||
template.cvs_usage.section6.title = Developer CVS Access via SSH
|
||||
template.cvs_usage.section6.description = Only project developers can access the CVS tree via this method. SSH1 must be installed on your client machine. Substitute <b>username</b> with the proper value. Enter your site password when prompted.
|
||||
template.cvs_usage.section6.remember = Remember to replace 'username' with your actual username on the server.
|
||||
template.cvs_usage.section7.title = CVS Access behind a firewall
|
||||
template.cvs_usage.section7.description1 = For those developers who are stuck behind a corporate firewall,
|
||||
template.cvs_usage.section7.description2 = can use the viewcvs web interface to checkout the source code.
|
||||
|
||||
# For dependencies.xml
|
||||
template.dependencies.title = Abhängigkeiten
|
||||
template.dependencies.section.title = Abhängigkeiten
|
||||
template.dependencies.section.no_dependency = Für dieses Projekt existieren keine Abhängigkeiten. Es ist eine autonome Lösung ohne externe Abhängigkeiten.
|
||||
template.dependencies.section.dependencies = Im Foldenden finden Sie eine Liste der Abhängikeiten für dieses Projekt. Diese Abhängikeiten müssen zur Verfügung stehen, um das Projekt zu kompilieren oder laufen zu lassen:
|
||||
template.dependencies.section.artifactID = Artifact ID
|
||||
template.dependencies.section.type = Typ
|
||||
template.dependencies.section.version = Version
|
||||
template.dependencies.section.url = URL
|
||||
|
||||
# For issue-tracking.xml
|
||||
template.issue_tracking.title = Fehlerbehandlung
|
||||
template.issue_tracking.section.title = Fehlerbehandlung
|
||||
|
||||
# For mail_lists.xml
|
||||
template.mail_lists.title = Mailinglisten
|
||||
template.mail_lists.section.title = Mailinglisten
|
||||
template.mail_lists.section.no_mail_list = Für dieses Projekt wurden keine Mailinglisten eingerichtet. Bitte schauen Sie später nochmals rein.
|
||||
template.mail_lists.section.mail_lists = Dies sind die Mailinglisten, die für dieses Projekt eingerichtet worden sind. Für jede Liste gibt es einen Abonnieren-, Abbestellen- und einen Archiv-Link.
|
||||
template.mail_lists.section.list_name = Mailinglisten Name
|
||||
template.mail_lists.section.subscribe = Abonnieren
|
||||
template.mail_lists.section.unsubscribe = Abbgestellen
|
||||
template.mail_lists.section.archive = Archiv
|
||||
|
||||
# For maven-reports.xml
|
||||
template.maven_reports.title = Projekt Reports
|
||||
template.maven_reports.section.title = Maven Generierte Reports
|
||||
template.maven_reports.section.maven_reports1 = Dieses Dokument zeigt einen Überblick über die verschiedenen Reports, die von
|
||||
template.maven_reports.section.maven_reports2 = generiert worden sind. Für jeden Report finden Sie unten eine kurze Beschreibung.
|
||||
template.maven_reports.section.subsection.title = Überblick
|
||||
template.maven_reports.section.subsection.document = Dokument
|
||||
template.maven_reports.section.subsection.description = Beschreibung
|
||||
|
||||
# For project-info.xml
|
||||
template.project_info.title = Projektinformation
|
||||
template.project_info.section.title = Allgemeine Projekinformation
|
||||
template.project_info.section.project_information1 = Dieses Dokument zeigt einen Überblick über die verschiedenen Dokumente und Verknüpfungen, die zur allgemeinen Information dieses Projekte gehören. Der Inhalt dieser Dokumente ist automatisch durch
|
||||
template.project_info.section.project_information2 = generiert worden.
|
||||
template.project_info.section.subsection.title = Überblick
|
||||
template.project_info.section.subsection.document = Dokument
|
||||
template.project_info.section.subsection.description = Beschreibung
|
||||
template.project_info.section.subsection.document.mailing_lists = Mailinglisten
|
||||
template.project_info.section.subsection.description.mailing_lists = Dieses Dokument zeigt Abonnier- und Archivierungs-Informationen für die Mailinglisten dieses Projektes.
|
||||
template.project_info.section.subsection.document.project_team = Projekt Team
|
||||
template.project_info.section.subsection.description.project_team = Dieses Dokument zeigt Informationen über die Leute, die zu diesem Projekt beigetragen haben. Diese Leute haben in der einen oder anderen Form zum Gelingen dieses Projektes beigetragen.
|
||||
template.project_info.section.subsection.document.dependencies = Abhängigkeiten
|
||||
template.project_info.section.subsection.description.dependencies = Dieses Dokument listet die Abhängigkeiten von diesem Projekt zu anderen Resourcen an und liefert Informationen dazu.
|
||||
template.project_info.section.subsection.document.source_repository = Quell-Verzichnis
|
||||
template.project_info.section.subsection.description.source_repository = Dieses Dokument zeigt Zugriffsmöglichkeiten auf den Quellbaum dieses Projektes.
|
||||
template.project_info.section.subsection.document.issue_tracking = Fehlerbehandlung
|
||||
template.project_info.section.subsection.description.issue_tracking = Dieses Dokument zeigt einen Link zur Website für die Fehlerbehandlung für dieses Projekt. Dort können Fehler, Änderungen und neue Anforderungen gemeldet werden.
|
||||
|
||||
# For team-list.xml
|
||||
template.team_list.title = Team
|
||||
template.team_list.section.title = Das Team
|
||||
template.team_list.section.description1 = Ein erfolgreiches Projekt erfordert, dass viele Leute verschieden Rollen innerhalb des Teams wahrnehmen. Einige schreiben Quellcode, während andere ausprobieren und testen, wieder andere Vorschläge für Verbesserungen machen.
|
||||
template.team_list.section.description2 = Das Team besteht aus Entwickler und Beitragende. Entwickler haben direkten Zugriff auf den Quellcode des Projektes und entwickeln die Quellcode-Basis weiter. Beitragende helfen, das Projekt zu verbessern, indem sie Fehlermeldungen, Änderungswünsche oder sogar Verbeserungsvorschläge einbringen und den Entwicklern melden. Die Anzahl von Beitragenden in diesem Projekt ist unbegrenzt. Beteiligen Sie sich heute noch! Jeder Beitrag ist von höchstem Wert.
|
||||
template.team_list.section.members.title = Entwickler
|
||||
template.team_list.section.no_developer = In diesem Projekt arbeiten keine Entwickler. Schauen Sie doch später nochmals rein.
|
||||
template.team_list.section.developers = Im Folgenden finden Sie eine Liste der Entwickler dieses Projektes, die auf die eine oder andere Weise zum Gelingen dieses Projektes beigetragen haben.
|
||||
template.team_list.section.developer.name = Name
|
||||
template.team_list.section.developer.id = Kennung
|
||||
template.team_list.section.developer.email = E-Mail
|
||||
template.team_list.section.developer.organization = Organisation
|
||||
template.team_list.section.developer.roles = Rolle
|
||||
template.team_list.section.developer.offset = Zeitverschiebung
|
||||
template.team_list.section.developer.time = Zeit
|
||||
template.team_list.section.contributors.title = Helfer
|
||||
template.team_list.section.no_contributor = Für dieses Projekt sind keine Helfer definiert. Bitte schauen Sie später nochmals rein.
|
||||
template.team_list.section.contributors = Im Folgenden finden Sie Leute, die auf die eine oder andere Weise zu Gelingen dieses Projektes biegetragen haben. Dies kann zum Beisiel in der Form von Fehlermeldungen, Änderungswünschen, Lösungsvorschlägen, Tests, Dokumentation erfolgt sein.
|
||||
template.team_list.section.contributor.name = Name
|
||||
template.team_list.section.contributor.email = E-Mail
|
||||
template.team_list.section.contributor.organization = Organisation
|
||||
template.team_list.section.contributor.roles = Rolle
|
||||
|
||||
# For navigation.jelly
|
||||
navigation.menu.project_documentation = Dokumentation
|
||||
navigation.menu.item.about = Über
|
||||
navigation.menu.item.downloads = Downloads
|
||||
navigation.menu.item.project_info = Informationen
|
||||
navigation.menu.item.mailing_lists = Mailinglisten
|
||||
navigation.menu.item.project_team = Projekt Team
|
||||
navigation.menu.item.dependencies = Abhängigkeiten
|
||||
navigation.menu.item.source_repository = Quelle
|
||||
navigation.menu.item.issue_tracking = Fehlerbehandlung
|
||||
navigation.menu.item.project_reports = Reports
|
||||
navigation.menu.item.development_process = Entwicklungs Prozess
|
||||
|
||||
# For site.jsl
|
||||
site.legend = Legende
|
||||
site.last_published = Letzte Änderung
|
||||
site.doc_for = Dokumentation für
|
||||
site.external_link = Externe Links
|
||||
site.opens_new_window = Öffnet in einem neuen Fenster
|
||||
site.language = Sprache
|
||||
site.locale.en = Englisch
|
||||
site.locale.fr = Französisch
|
||||
156
xdoc/src/plugin-resources/templates/templates_fr.properties
Normal file
156
xdoc/src/plugin-resources/templates/templates_fr.properties
Normal file
@ -0,0 +1,156 @@
|
||||
# -------------------------------------------------------------------
|
||||
# Copyright 2001-2004 The Apache Software Foundation.
|
||||
#
|
||||
# Licensed 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.
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
# Translated by Vincent Siveton (vincent.siveton@gmail.com)
|
||||
|
||||
# To display the default language
|
||||
defaultLocale.byDefault=Français [Par défaut]
|
||||
|
||||
# For cvs.xml
|
||||
template.cvs.title=CVS
|
||||
template.cvs.section1.title=Repository
|
||||
template.cvs.section1.no_repository=Aucun dépôt SCM n'est défini.
|
||||
template.cvs.section2.title=Accès Web
|
||||
template.cvs.section3.title=Accès de façon anonyme
|
||||
template.cvs.section3.description=Le dépôt d'archive CVS de ce projet peut être vérifié de façon anonyme (pserver) avec les instructions suivantes. Lorsqu'un mot de passe pour anonyme est demandé, appuyez simplement sur la touche Enter.
|
||||
template.cvs.section3.updates=Les mises à jour à partir d'un module n'ont pas besoin du paramètre -d.
|
||||
template.cvs.section4.title=Accès CVS pour les dévelopeurs via SSH
|
||||
template.cvs.section4.description=Seulement les dévelopeurs du projet peuvent accéder à l'arbre de CVS par l'intermédiaire de cette méthode. SSH1 doit être installé sur votre machine client. Remplacez <b>nom</b> avec la valeur appropriée. Entrez votre mot de passe une fois incité.
|
||||
template.cvs.section4.remember=Rappelez-vous de remplacer le 'username' par votre nom d'utilisateur réel dans le serveur.
|
||||
template.cvs.section5.title=Accès CVS derrière un firewall
|
||||
template.cvs.section5.description1=Pour les dévelopeurs qui sont coincés derrière un firewall,
|
||||
template.cvs.section5.description2=peut utiliser l'interface Web pour effectuer un checkout du code source.
|
||||
|
||||
# For cvs-usage.xml
|
||||
template.cvs_usage.title=CVS
|
||||
template.cvs_usage.section1.title=Repository
|
||||
template.cvs_usage.section1.no_repository=Aucun dépôt SCM n'est défini.
|
||||
template.cvs_usage.section2.title=Accès Web
|
||||
template.cvs_usage.section3.title=Accès de façon anonyme avec Maven
|
||||
template.cvs_usage.section3.description=Le dépôt d'archive CVS de ce projet peut être vérifié de façon anonyme (pserver) avec les instructions suivantes. Lorsqu'un mot de passe pour anonyme est demandé, appuyez simplement sur la touche Enter.
|
||||
template.cvs_usage.section4.title=Accés CVS de façon anonyme
|
||||
template.cvs_usage.section4.description=Le dépôt d'archive CVS de ce projet peut être vérifié de façon anonyme (pserver) avec les instructions suivantes. Lorsqu'un mot de passe pour anonyme est demandé, appuyez simplement sur la touche Enter.
|
||||
template.cvs_usage.section4.updates=Les mises à jour à partir d'un module n'ont pas besoin du paramètre -d.
|
||||
template.cvs_usage.section5.title=Accès CVS pour les dévelopeurs avec Maven
|
||||
template.cvs_usage.section5.description=Seulement les dévelopeurs du projet peuvent accéder à l'arbre de CVS par l'intermédiaire de cette méthode. Remplacez <b>nom</b> avec la valeur appropriée.
|
||||
template.cvs_usage.section5.remember=Rappelez-vous de remplacer le 'username' par votre nom d'utilisateur réel dans le serverr. <br /> Changez aussi <code>ssh</code> dans <code>maven.scm.cvs.rsh=ssh</code> avec le nom de exécutable SSH.
|
||||
template.cvs_usage.section6.title=Accès CVS pour les dévelopeurs via SSH
|
||||
template.cvs_usage.section6.description=Seulement les dévelopeurs du projet peuvent accéder à l'arbre de CVS par l'intermédiaire de cette méthode. SSH1 doit être installé sur votre machine client. Remplacez <b>nom</b> avec la valeur appropriée. Entrez votre mot de passe une fois incité.
|
||||
template.cvs_usage.section6.remember=Rappelez-vous de remplacer le 'username' par votre nom d'utilisateur réel dans le serveur.
|
||||
template.cvs_usage.section7.title=Accès CVS derrière un firewall
|
||||
template.cvs_usage.section7.description1=Pour les dévelopeurs qui sont coincés derrière un firewal,
|
||||
template.cvs_usage.section7.description2=peut utiliser l'interface Web pour effectuer un checkout du code source.
|
||||
|
||||
# For dependencies.xml
|
||||
template.dependencies.title=Dépendances
|
||||
template.dependencies.section.title=Dépendances
|
||||
template.dependencies.section.no_dependency=Il n'y a aucune dépendance pour ce projet. C'est une application autonome qui ne dépend d'aucun autre projet.
|
||||
template.dependencies.section.dependencies=Ce qui suit est une liste des dépendances pour ce projet. Ces dépendances sont exigées pour compiler et exécuter l'application:
|
||||
template.dependencies.section.artifactID=Artefact ID
|
||||
template.dependencies.section.type=Type
|
||||
template.dependencies.section.version=Version
|
||||
template.dependencies.section.url=URL
|
||||
|
||||
# For issue-tracking.xml
|
||||
template.issue_tracking.title=Contrôle des livraisons
|
||||
template.issue_tracking.section.title=Contrôle des livraisons
|
||||
|
||||
# For mail_lists.xml
|
||||
template.mail_lists.not_available=Non-disponible
|
||||
template.mail_lists.title=Listes de diffusion
|
||||
template.mail_lists.section.title=Listes de diffusion
|
||||
template.mail_lists.section.no_mail_list=Il n'y a aucune liste de diffusion établie pour ce projet. Vérifiez plus tard si une liste de diffusion est disponible.
|
||||
template.mail_lists.section.mail_lists=Ce sont les listes de diffusion qui ont été établies pour ce projet. Pour chaque liste, il y a une souscription, une annulation de souscription, et un lien vers les archives.
|
||||
template.mail_lists.section.list_name=Nom de la liste
|
||||
template.mail_lists.section.subscribe=Souscription
|
||||
template.mail_lists.section.unsubscribe=Annulation de souscription
|
||||
template.mail_lists.section.archive=Archive
|
||||
|
||||
# For maven-reports.xml
|
||||
template.maven_reports.title=Rapports sur le projet
|
||||
template.maven_reports.section.title=Rapports produits par Maven
|
||||
template.maven_reports.section.maven_reports1=Ce document fournit une vue d'ensemble des divers rapports qui sont automatiquement produits par
|
||||
template.maven_reports.section.maven_reports2=. Chaque document est brièvement décrit.
|
||||
template.maven_reports.section.subsection.title=Vue d'ensemble
|
||||
template.maven_reports.section.subsection.document=Document
|
||||
template.maven_reports.section.subsection.description=Description
|
||||
|
||||
# For project-info.xml
|
||||
template.project_info.title=Information sur le projet
|
||||
template.project_info.section.title=Information générale sur le project
|
||||
template.project_info.section.project_information1=Ce document fournit une vue d'ensemble des divers documents et liens qui font partie des informations générales de ce projet. Tout ce contenu est automatiquement produit par
|
||||
template.project_info.section.project_information2=pour ce projet.
|
||||
template.project_info.section.subsection.title=Vue d'ensemble
|
||||
template.project_info.section.subsection.document=Document
|
||||
template.project_info.section.subsection.description=Description
|
||||
template.project_info.section.subsection.document.mailing_lists=Listes de diffusion
|
||||
template.project_info.section.subsection.description.mailing_lists=Ce document fournit l'abonnement ainsi que les archives pour les listes de diffusion de ce projet.
|
||||
template.project_info.section.subsection.document.project_team=Membres de ce projet
|
||||
template.project_info.section.subsection.description.project_team=Ce document fournit des informations sur les membres de ce projet. Ce sont les individus qui ont contribué au projet d'une façon ou d'une autre.
|
||||
template.project_info.section.subsection.document.dependencies=Dépendances
|
||||
template.project_info.section.subsection.description.dependencies=Ce document énumère les dépendances de ce projet et fournit des informations sur chaque dépendance.
|
||||
template.project_info.section.subsection.document.source_repository=Dépôt de sources
|
||||
template.project_info.section.subsection.description.source_repository=C'est un lien au dépôt de sources en ligne qui peut être regardé par l'intermédiaire d'un browser Web.
|
||||
template.project_info.section.subsection.document.issue_tracking=Contrôle des livraisons
|
||||
template.project_info.section.subsection.description.issue_tracking=C'est un lien au système de contrôle des livraisons pour ce projet. Des issues (bogues, dispositifs, demandes de changement) peuvent être créées et questionnées en utilisant ce lien.
|
||||
|
||||
# For team-list.xml
|
||||
template.team_list.title=Membres de l'équipe
|
||||
template.team_list.section.title=L'équipe
|
||||
template.team_list.section.description1=Un projet réussi exige que beaucoup de personnes jouent plusieurs rôles. Quelques personnes écrivent le code ou la documentation, alors que d'autres testent, soumettent des patches ou des suggestions.
|
||||
template.team_list.section.description2=L'équipe est composée des membres et des collaborateurs . Les membres ont un accès direct aux sources du projet et font évolué activement le code de base. Les contribuants améliorent le projet par la soumission de patches et des suggestions aux membres. Le nombre de contribuants au projet est illimité. Toutes les contributions au projet sont considérablement appréciées.
|
||||
template.team_list.section.members.title=Members=Membres
|
||||
template.team_list.section.no_developer=Il n'y a aucun dévelopeur travaillant sur ce projet. Vérifiez plus tard si des dévelopeurs ont été ajouté.
|
||||
template.team_list.section.developers=Ce qui suit est la liste des dévelopeurs avec leurs rôles qui ont contribué d'une manière ou d'une autre au projet.
|
||||
template.team_list.section.developer.name=Nom
|
||||
template.team_list.section.developer.id=Id
|
||||
template.team_list.section.developer.email=Email
|
||||
template.team_list.section.developer.organization=Organisation
|
||||
template.team_list.section.developer.roles=Rôles
|
||||
template.team_list.section.developer.offset=TZ Offset
|
||||
template.team_list.section.developer.time=Heure GMT
|
||||
template.team_list.section.contributors.title=Collaborateurs
|
||||
template.team_list.section.no_contributor=Il n'y a aucun collaborateur travaillant sur ce projet. Vérifiez plus tard si des collaborateurs ont été ajouté.
|
||||
template.team_list.section.contributors=Les personnes additionnelles suivantes ont contribué à ce projet pour leurs suggestions, ou leurs apports à la documentation ou aux patches.
|
||||
template.team_list.section.contributor.name=Nom
|
||||
template.team_list.section.contributor.email=Email
|
||||
template.team_list.section.contributor.organization=Organisation
|
||||
template.team_list.section.contributor.roles=Rôles
|
||||
template.team_list.section.developer.timezone.unknown=Inconnu
|
||||
|
||||
# For navigation.jelly
|
||||
navigation.menu.project_documentation=Documentation sur le projet
|
||||
navigation.menu.downloads=Téléchargements
|
||||
navigation.menu.item.about=A propos
|
||||
navigation.menu.item.project_info=Info sur le projet
|
||||
navigation.menu.item.mailing_lists=Listes de diffusion
|
||||
navigation.menu.item.project_team=Equipe du projet
|
||||
navigation.menu.item.dependencies=Dépendances
|
||||
navigation.menu.item.source_repository=Source Repository
|
||||
navigation.menu.item.issue_tracking=Contrôle des livraisons
|
||||
navigation.menu.item.project_reports=Rapports sur le projet
|
||||
navigation.menu.item.development_process=Processus de développement
|
||||
|
||||
# For site.jsl
|
||||
site.legend=Légende
|
||||
site.last_published=Dernière publication
|
||||
site.doc_for=Doc pour
|
||||
site.external_link=Lien externe
|
||||
site.opens_new_window=Ouverture dans une nouvelle fenêtre
|
||||
site.language=Langue
|
||||
site.goals=Buts
|
||||
site.goal=But
|
||||
site.description=Description
|
||||
@ -19,4 +19,9 @@
|
||||
<goal name="testPlugin">
|
||||
<maven:reactor basedir="${basedir}" includes="test*/project.xml" goals="testPlugin" banner="Test" ignoreFailures="false"/>
|
||||
</goal>
|
||||
<goal name="multixdoc">
|
||||
<maven:reactor basedir="${basedir}"
|
||||
includes="test*/project.xml"
|
||||
goals="xdoc" banner="Test" ignoreFailures="false" />
|
||||
</goal>
|
||||
</project>
|
||||
|
||||
76
xdoc/src/plugin-test/test03/maven.xml
Normal file
76
xdoc/src/plugin-test/test03/maven.xml
Normal file
@ -0,0 +1,76 @@
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
<project xmlns:util="jelly:util"
|
||||
xmlns:j="jelly:core"
|
||||
xmlns:assert="assert"
|
||||
xmlns:doc="doc"
|
||||
xmlns:x="jelly:xml">
|
||||
|
||||
<goal name="testPlugin" prereqs="clean,xdoc">
|
||||
<j:set var="linkcheck" value="${maven.build.dir}/linkcheck/linkcheck-results.xml"/>
|
||||
<assert:assertFileExists file="${linkcheck}"/>
|
||||
<util:file var="linkcheckFile" name="${linkcheck}"/>
|
||||
<x:parse var="linkcheckDoc" xml="${linkcheckFile.toURL()}"/>
|
||||
<x:set var="countLogo" select="count($linkcheckDoc/linkcheck/file/result[contains(child::target,'apache-maven-project.png')][contains(child::status,'NOT FOUND')])"/>
|
||||
<assert:assertEquals expected="0" value="${countLogo.intValue().toString()}" msg="Logo not found."/>
|
||||
<x:set var="countUrl" select="count($linkcheckDoc/linkcheck/file/result[contains(child::target,'project-info.html')][contains(child::status,'NOT FOUND')])"/>
|
||||
<assert:assertEquals expected="0" value="${countUrl.intValue().toString()}" msg="Url not found."/>
|
||||
<assert:assertFileExists file="velocity.log"/>
|
||||
|
||||
<!-- Test the output according the project.properties file -->
|
||||
<!-- maven.xdoc.locale.supported=en_CA, fr_CA -->
|
||||
<!-- Test Default language -->
|
||||
<assert:assertFileExists file="${maven.docs.dest}/cvs-usage.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/mail-lists.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/dependencies.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/maven-reports.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/team-list.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/downloads.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/index.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/myfile_i18n.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/issue-tracking.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/project-info.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/subdir/testjsltosite.html"/>
|
||||
<!-- Test en_CA language -->
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/cvs-usage.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/mail-lists.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/dependencies.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/maven-reports.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/team-list.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/downloads.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/index.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/myfile_i18n.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/issue-tracking.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/project-info.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/subdir/testjsltosite.html"/>
|
||||
|
||||
<!-- Test fr_CA language -->
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/cvs-usage.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/mail-lists.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/dependencies.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/maven-reports.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/team-list.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/downloads.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/index.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/myfile_i18n.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/issue-tracking.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/project-info.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/subdir/testjsltosite.html"/>
|
||||
</goal>
|
||||
|
||||
</project>
|
||||
23
xdoc/src/plugin-test/test03/project.properties
Normal file
23
xdoc/src/plugin-test/test03/project.properties
Normal file
@ -0,0 +1,23 @@
|
||||
# -------------------------------------------------------------------
|
||||
# Copyright 2001-2004 The Apache Software Foundation.
|
||||
#
|
||||
# Licensed 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.
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
maven.xdoc.locale.default=en
|
||||
maven.xdoc.locale.supported=en_CA, fr_CA
|
||||
|
||||
# Presentation Properties
|
||||
maven.xdoc.date=left
|
||||
maven.xdoc.date.format=dd MMMM yyyy HH:mm z
|
||||
maven.xdoc.date.locale=en
|
||||
36
xdoc/src/plugin-test/test03/project.xml
Normal file
36
xdoc/src/plugin-test/test03/project.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
<project>
|
||||
<pomVersion>3</pomVersion>
|
||||
<issueTrackingUrl>http://jira.codehaus.org/browse/MAVEN</issueTrackingUrl>
|
||||
<id>test-maven-xdoc-plugin-03</id>
|
||||
<name>MPXDOC-128</name>
|
||||
<groupId>maven</groupId>
|
||||
<currentVersion>1.0</currentVersion>
|
||||
<organization>
|
||||
<name>Apache Software Foundation</name>
|
||||
<url>/project-info.html</url>
|
||||
<logo>/images/apache-maven-project.png</logo>
|
||||
</organization>
|
||||
<logo>/images/maven.gif</logo>
|
||||
<description>Test for MPXDOC-128</description>
|
||||
<shortDescription>Test for MPXDOC-128</shortDescription>
|
||||
<url>/project-info.html</url>
|
||||
</project>
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
BIN
xdoc/src/plugin-test/test03/xdocs/images/maven.gif
Normal file
BIN
xdoc/src/plugin-test/test03/xdocs/images/maven.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.7 KiB |
36
xdoc/src/plugin-test/test03/xdocs/myfile_i18n.xml
Normal file
36
xdoc/src/plugin-test/test03/xdocs/myfile_i18n.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
<title key="myfile_i18n.title"/>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section key="myfile_i18n.section1.title">
|
||||
<p>
|
||||
<message key="myfile_i18n.section1.description1"/>
|
||||
</p>
|
||||
<p>
|
||||
<message key="myfile_i18n.section1.description2"/>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
36
xdoc/src/plugin-test/test03/xdocs/navigation-pdf.xml
Normal file
36
xdoc/src/plugin-test/test03/xdocs/navigation-pdf.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<project name="Nanuq"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="MAVEN_HOME/maven-navigation-1.0.xsd">
|
||||
|
||||
<title>MPXDOC128</title>
|
||||
|
||||
<body>
|
||||
<menu name="General Project Information">
|
||||
<item name="myfile_i18n"
|
||||
href="/myfile_i18n.html" />
|
||||
<item name="testjsltosite"
|
||||
href="/subdir/testjsltosite.html" />
|
||||
<item name="testjsltosite2"
|
||||
href="/subdir/subdir2/testjsltosite2.html" />
|
||||
</menu>
|
||||
</body>
|
||||
</project>
|
||||
48
xdoc/src/plugin-test/test03/xdocs/navigation.xml
Normal file
48
xdoc/src/plugin-test/test03/xdocs/navigation.xml
Normal file
@ -0,0 +1,48 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<project name="MPXDOC-128"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="MAVEN_HOME/maven-navigation-1.0.xsd">
|
||||
|
||||
<title key="navigation.title"/>
|
||||
|
||||
<body>
|
||||
<breadcrumbs>
|
||||
<item name="Maven" href="http://maven.apache.org"/>
|
||||
<item name="Maven Plugins" href="http://maven.apache.org/reference/plugins/index.html"/>
|
||||
</breadcrumbs>
|
||||
<links>
|
||||
<!--
|
||||
<item name="PDF Documentation" href="app.pdf"
|
||||
img="images/pdf.gif"/>
|
||||
-->
|
||||
</links>
|
||||
|
||||
<!-- project overview -->
|
||||
<menu key="navigation.menu1.title">
|
||||
<item key="navigation.menu1.item1"
|
||||
href="/myfile_i18n.html" />
|
||||
<item key="navigation.menu1.item2"
|
||||
href="/subdir/testjsltosite.html" />
|
||||
<item key="navigation.menu1.item3"
|
||||
href="/subdir/subdir2/testjsltosite2.html" />
|
||||
</menu>
|
||||
</body>
|
||||
</project>
|
||||
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
<title key="testjstltosite.title"/>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section key="testjstltosite.section1.title">
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description1"/>
|
||||
</p>
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description2"/>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
<title key="testjstltosite.title"/>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section key="testjstltosite.section1.title">
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description1"/>
|
||||
</p>
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description2"/>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
38
xdoc/src/plugin-test/test03/xdocs/subdir/testjsltosite.xml
Normal file
38
xdoc/src/plugin-test/test03/xdocs/subdir/testjsltosite.xml
Normal file
@ -0,0 +1,38 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
<title key="testjstltosite.title"/>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section key="testjstltosite.section1.title">
|
||||
<subsection key="testjstltosite.section1.title">
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description1"/>
|
||||
</p>
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description2"/>
|
||||
</p>
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
18
xdoc/src/plugin-test/test03/xdocs/xdocs.properties
Normal file
18
xdoc/src/plugin-test/test03/xdocs/xdocs.properties
Normal file
@ -0,0 +1,18 @@
|
||||
# From navigation.xml
|
||||
navigation.title=MPXDOC-128
|
||||
navigation.menu1.title=General Project Information
|
||||
navigation.menu1.item1=myfile_i18n
|
||||
navigation.menu1.item2=testjsltosite
|
||||
navigation.menu1.item3=testjsltosite2
|
||||
|
||||
# From myfile_i18n.xml
|
||||
myfile_i18n.title=Xdoc test Document
|
||||
myfile_i18n.section1.title=Title 1
|
||||
myfile_i18n.section1.description1=empty document
|
||||
myfile_i18n.section1.description2=This document is generated separately from other xdoc documents but should retain the site stylesheet and navigation.
|
||||
|
||||
# From testjstltosite.xml
|
||||
testjstltosite.title=test jslToSite tag
|
||||
testjstltosite.section1.title=Title 1
|
||||
testjstltosite.section1.description1=empty document
|
||||
testjstltosite.section1.description2=This document is generated separately from other xdoc documents but should retain the site stylesheet and navigation.
|
||||
18
xdoc/src/plugin-test/test03/xdocs/xdocs_fr.properties
Normal file
18
xdoc/src/plugin-test/test03/xdocs/xdocs_fr.properties
Normal file
@ -0,0 +1,18 @@
|
||||
# From navigation.xml
|
||||
navigation.title=MPXDOC-128
|
||||
navigation.menu1.title=Information générale sur le projet
|
||||
navigation.menu1.item1=myfile_i18n
|
||||
navigation.menu1.item2=testjsltosite
|
||||
navigation.menu1.item3=testjsltosite2
|
||||
|
||||
# From myfile_i18n.xml
|
||||
myfile_i18n.title=Document Xdoc test
|
||||
myfile_i18n.section1.title=Titre 1
|
||||
myfile_i18n.section1.description1=document vide
|
||||
myfile_i18n.section1.description2=Ce document est produit séparément des autres documents XDOC mais devrait maintenir le stylesheet et la navigation d'emplacement.
|
||||
|
||||
# From testjstltosite.xml
|
||||
testjstltosite.title=test jslToSite tag
|
||||
testjstltosite.section1.title=Titre 1
|
||||
testjstltosite.section1.description1=document vide
|
||||
testjstltosite.section1.description2=Ce document est produit séparément des autres documents XDOC mais devrait maintenir le stylesheet et la navigation d'emplacement.
|
||||
76
xdoc/src/plugin-test/test04/maven.xml
Normal file
76
xdoc/src/plugin-test/test04/maven.xml
Normal file
@ -0,0 +1,76 @@
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
<project xmlns:util="jelly:util"
|
||||
xmlns:j="jelly:core"
|
||||
xmlns:assert="assert"
|
||||
xmlns:doc="doc"
|
||||
xmlns:x="jelly:xml">
|
||||
|
||||
<goal name="testPlugin" prereqs="clean,xdoc">
|
||||
<j:set var="linkcheck" value="${maven.build.dir}/linkcheck/linkcheck-results.xml"/>
|
||||
<assert:assertFileExists file="${linkcheck}"/>
|
||||
<util:file var="linkcheckFile" name="${linkcheck}"/>
|
||||
<x:parse var="linkcheckDoc" xml="${linkcheckFile.toURL()}"/>
|
||||
<x:set var="countLogo" select="count($linkcheckDoc/linkcheck/file/result[contains(child::target,'apache-maven-project.png')][contains(child::status,'NOT FOUND')])"/>
|
||||
<assert:assertEquals expected="0" value="${countLogo.intValue().toString()}" msg="Logo not found."/>
|
||||
<x:set var="countUrl" select="count($linkcheckDoc/linkcheck/file/result[contains(child::target,'project-info.html')][contains(child::status,'NOT FOUND')])"/>
|
||||
<assert:assertEquals expected="0" value="${countUrl.intValue().toString()}" msg="Url not found."/>
|
||||
<assert:assertFileExists file="velocity.log"/>
|
||||
|
||||
<!-- Test the output according the project.properties file -->
|
||||
<!-- maven.xdoc.locale.list=en_CA, fr_CA -->
|
||||
<!-- Test Default language -->
|
||||
<assert:assertFileExists file="${maven.docs.dest}/cvs-usage.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/mail-lists.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/dependencies.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/maven-reports.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/team-list.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/downloads.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/index.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/myfile_i18n.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/issue-tracking.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/project-info.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/subdir/testjsltosite.html"/>
|
||||
<!-- Test en_CA language -->
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/cvs-usage.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/mail-lists.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/dependencies.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/maven-reports.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/team-list.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/downloads.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/index.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/myfile_i18n.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/issue-tracking.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/project-info.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/en_CA/subdir/testjsltosite.html"/>
|
||||
|
||||
<!-- Test fr_CA language -->
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/cvs-usage.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/mail-lists.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/dependencies.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/maven-reports.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/team-list.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/downloads.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/index.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/myfile_i18n.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/issue-tracking.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/project-info.html"/>
|
||||
<assert:assertFileExists file="${maven.docs.dest}/fr_CA/subdir/testjsltosite.html"/>
|
||||
</goal>
|
||||
|
||||
</project>
|
||||
24
xdoc/src/plugin-test/test04/project.properties
Normal file
24
xdoc/src/plugin-test/test04/project.properties
Normal file
@ -0,0 +1,24 @@
|
||||
# -------------------------------------------------------------------
|
||||
# Copyright 2001-2004 The Apache Software Foundation.
|
||||
#
|
||||
# Licensed 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.
|
||||
# -------------------------------------------------------------------
|
||||
|
||||
maven.xdoc.locale.default=en
|
||||
maven.xdoc.locale.supported=en_CA, fr_CA
|
||||
|
||||
# Presentation Properties
|
||||
maven.xdoc.date=left
|
||||
maven.xdoc.date.format=dd MMMM yyyy HH:mm z
|
||||
maven.xdoc.date.locale=en
|
||||
maven.xdoc.ui.localeList.asSelect=true
|
||||
36
xdoc/src/plugin-test/test04/project.xml
Normal file
36
xdoc/src/plugin-test/test04/project.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
<project>
|
||||
<pomVersion>3</pomVersion>
|
||||
<issueTrackingUrl>http://jira.codehaus.org/browse/MAVEN</issueTrackingUrl>
|
||||
<id>test-maven-xdoc-plugin-04</id>
|
||||
<name>MPXDOC-128</name>
|
||||
<groupId>maven</groupId>
|
||||
<currentVersion>1.0</currentVersion>
|
||||
<organization>
|
||||
<name>Apache Software Foundation</name>
|
||||
<url>/project-info.html</url>
|
||||
<logo>/images/apache-maven-project.png</logo>
|
||||
</organization>
|
||||
<logo>/images/maven.gif</logo>
|
||||
<description>An other test for MPXDOC-128</description>
|
||||
<shortDescription>An other test for MPXDOC-128</shortDescription>
|
||||
<url>/project-info.html</url>
|
||||
</project>
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
BIN
xdoc/src/plugin-test/test04/xdocs/images/maven.gif
Normal file
BIN
xdoc/src/plugin-test/test04/xdocs/images/maven.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.7 KiB |
36
xdoc/src/plugin-test/test04/xdocs/myfile_i18n.xml
Normal file
36
xdoc/src/plugin-test/test04/xdocs/myfile_i18n.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
<title key="myfile_i18n.title"/>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section key="myfile_i18n.section1.title">
|
||||
<p>
|
||||
<message key="myfile_i18n.section1.description1"/>
|
||||
</p>
|
||||
<p>
|
||||
<message key="myfile_i18n.section1.description2"/>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
44
xdoc/src/plugin-test/test04/xdocs/navigation.xml
Normal file
44
xdoc/src/plugin-test/test04/xdocs/navigation.xml
Normal file
@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<project name="MPXDOC-128"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:noNamespaceSchemaLocation="MAVEN_HOME/maven-navigation-1.0.xsd">
|
||||
|
||||
<title key="navigation.title"/>
|
||||
|
||||
<body>
|
||||
<links>
|
||||
<!--
|
||||
<item name="PDF Documentation" href="app.pdf"
|
||||
img="images/pdf.gif"/>
|
||||
-->
|
||||
</links>
|
||||
|
||||
<!-- project overview -->
|
||||
<menu key="navigation.menu1.title">
|
||||
<item key="navigation.menu1.item1"
|
||||
href="/myfile_i18n.html" />
|
||||
<item key="navigation.menu1.item2"
|
||||
href="/subdir/testjsltosite.html" />
|
||||
<item key="navigation.menu1.item3"
|
||||
href="/subdir/subdir2/testjsltosite2.html" />
|
||||
</menu>
|
||||
</body>
|
||||
</project>
|
||||
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
<title key="testjstltosite.title"/>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section key="testjstltosite.section1.title">
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description1"/>
|
||||
</p>
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description2"/>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
36
xdoc/src/plugin-test/test04/xdocs/subdir/testjsltosite.xml
Normal file
36
xdoc/src/plugin-test/test04/xdocs/subdir/testjsltosite.xml
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
<title key="testjstltosite.title"/>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section key="testjstltosite.section1.title">
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description1"/>
|
||||
</p>
|
||||
<p>
|
||||
<message key="testjstltosite.section1.description2"/>
|
||||
</p>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
18
xdoc/src/plugin-test/test04/xdocs/xdocs.properties
Normal file
18
xdoc/src/plugin-test/test04/xdocs/xdocs.properties
Normal file
@ -0,0 +1,18 @@
|
||||
# From navigation.xml
|
||||
navigation.title=MPXDOC-128
|
||||
navigation.menu1.title=General Project Information
|
||||
navigation.menu1.item1=myfile_i18n
|
||||
navigation.menu1.item2=testjsltosite
|
||||
navigation.menu1.item3=testjsltosite2
|
||||
|
||||
# From myfile_i18n.xml
|
||||
myfile_i18n.title=Xdoc test Document
|
||||
myfile_i18n.section1.title=Title 1
|
||||
myfile_i18n.section1.description1=empty document
|
||||
myfile_i18n.section1.description2=This document is generated separately from other xdoc documents but should retain the site stylesheet and navigation.
|
||||
|
||||
# From testjstltosite.xml
|
||||
testjstltosite.title=test jslToSite tag
|
||||
testjstltosite.section1.title=Title 1
|
||||
testjstltosite.section1.description1=empty document
|
||||
testjstltosite.section1.description2=This document is generated separately from other xdoc documents but should retain the site stylesheet and navigation.
|
||||
18
xdoc/src/plugin-test/test04/xdocs/xdocs_fr.properties
Normal file
18
xdoc/src/plugin-test/test04/xdocs/xdocs_fr.properties
Normal file
@ -0,0 +1,18 @@
|
||||
# From navigation.xml
|
||||
navigation.title=MPXDOC-128
|
||||
navigation.menu1.title=Information générale sur le projet
|
||||
navigation.menu1.item1=myfile_i18n
|
||||
navigation.menu1.item2=testjsltosite
|
||||
navigation.menu1.item3=testjsltosite2
|
||||
|
||||
# From myfile_i18n.xml
|
||||
myfile_i18n.title=Document Xdoc test
|
||||
myfile_i18n.section1.title=Titre 1
|
||||
myfile_i18n.section1.description1=document vide
|
||||
myfile_i18n.section1.description2=Ce document est produit séparément des autres documents XDOC mais devrait maintenir le stylesheet et la navigation d'emplacement.
|
||||
|
||||
# From testjstltosite.xml
|
||||
testjstltosite.title=test jslToSite tag
|
||||
testjstltosite.section1.title=Title 1
|
||||
testjstltosite.section1.description1=document vide
|
||||
testjstltosite.section1.description2=Ce document est produit séparément des autres documents XDOC mais devrait maintenir le stylesheet et la navigation d'emplacement.
|
||||
@ -29,6 +29,7 @@
|
||||
<assert:assertFileExists file="${depXmlPath}"/>
|
||||
<util:file var="depXmlFile" name="${depXmlPath}"/>
|
||||
<x:parse var="depXmlDom" xml="${depXmlFile}"/>
|
||||
<!--
|
||||
<x:set var="headerComment" select="string($depXmlDom/document/body/section[@name='Dependencies']/table/thead/tr/th[5])"/>
|
||||
<assert:assertEquals expected="Comment" value="${headerComment}"/>
|
||||
<x:forEach var="tr" select="$depXmlDom/document/body/section[@name='Dependencies']/table/tbody/*">
|
||||
@ -47,7 +48,7 @@
|
||||
<assert:assertEquals expected="" value="${comment.trim()}"/>
|
||||
</j:if>
|
||||
</x:forEach>
|
||||
|
||||
-->
|
||||
</goal>
|
||||
|
||||
</project>
|
||||
|
||||
69
xdoc/src/test/org/apache/maven/xdoc/util/LocaleUtilTest.java
Normal file
69
xdoc/src/test/org/apache/maven/xdoc/util/LocaleUtilTest.java
Normal file
@ -0,0 +1,69 @@
|
||||
package org.apache.maven.xdoc.util;
|
||||
|
||||
/* ====================================================================
|
||||
* Copyright 2001-2004 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
* ====================================================================
|
||||
*/
|
||||
import java.util.Locale;
|
||||
|
||||
import org.apache.maven.xdoc.util.LocaleUtil;
|
||||
|
||||
import junit.framework.TestCase;
|
||||
|
||||
/**
|
||||
* LocaleUtil Test class.
|
||||
*
|
||||
* @author <a href="mailto:vincent.siveton@gmail.com">Vincent Siveton</a>
|
||||
* @version $Id$
|
||||
*/
|
||||
public class LocaleUtilTest extends TestCase {
|
||||
|
||||
public void testCodeToLocale1() {
|
||||
Locale locale = LocaleUtil.codeToLocale("en");
|
||||
assertEquals(locale.toString(), "en");
|
||||
}
|
||||
|
||||
public void testCodeToLocale2() {
|
||||
Locale locale = LocaleUtil.codeToLocale("en_CA");
|
||||
assertEquals(locale.toString(), "en_CA");
|
||||
}
|
||||
|
||||
public void testCodeToLocaleAsNull() {
|
||||
Locale locale = LocaleUtil.codeToLocale(null);
|
||||
assertNull(locale);
|
||||
}
|
||||
|
||||
public void testCodeToLocaleAsDefault() {
|
||||
Locale locale = LocaleUtil.codeToLocale("default");
|
||||
assertEquals(locale, Locale.getDefault());
|
||||
}
|
||||
|
||||
public void testCodesToLocales() {
|
||||
Locale[] locales = LocaleUtil.codesToLocales("en, en_CA");
|
||||
assertEquals(locales[0].toString(), "en");
|
||||
assertEquals(locales[1].toString(), "en_CA");
|
||||
}
|
||||
|
||||
public void testCodesToLocalesAsNull() {
|
||||
Locale[] locales = LocaleUtil.codesToLocales(null);
|
||||
assertNull(locales);
|
||||
}
|
||||
|
||||
public void testDisplayName() {
|
||||
Locale locale = new Locale("fr");
|
||||
String result = LocaleUtil.displayName(locale, locale);
|
||||
assertEquals(result, "Français");
|
||||
}
|
||||
}
|
||||
@ -72,8 +72,14 @@ maven.xdoc.poweredby.url = http://maven.apache.org/
|
||||
</question>
|
||||
<answer>Create an index.xml file in the xdocs directory.</answer>
|
||||
</faq>
|
||||
<faq id="i18n">
|
||||
<question>Does the documentation generated by Maven Xdocs plugin support internationalization?</question>
|
||||
<answer>
|
||||
Yes. Please see the <a href="i18n.html">i18n</a> document.
|
||||
</answer>
|
||||
</faq>
|
||||
</part>
|
||||
|
||||
|
||||
<part id="navigation">
|
||||
<title>Navigation</title>
|
||||
|
||||
|
||||
@ -22,11 +22,11 @@
|
||||
<properties>
|
||||
<title>XDoc Plugin Goals</title>
|
||||
<author email="dion@apache.org">dIon Gillard</author>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<goals>
|
||||
|
||||
<goal>
|
||||
<name>xdoc</name>
|
||||
<description>
|
||||
@ -49,8 +49,19 @@
|
||||
This goal defines the <code>DVSL</code> tag library for generating
|
||||
documentation. A single tag <code>dvsl:dvsl</code> is defined.
|
||||
</description>
|
||||
</goal>
|
||||
|
||||
</goal>
|
||||
<goal>
|
||||
<name>copy-user-bundles</name>
|
||||
<description>
|
||||
Copy user bundles in the XDOC plugin. Used for the i18n support.
|
||||
</description>
|
||||
</goal>
|
||||
<goal>
|
||||
<name>clean-user-bundles</name>
|
||||
<description>
|
||||
Remove all user bundles from the XDOC plugin.
|
||||
</description>
|
||||
</goal>
|
||||
</goals>
|
||||
</body>
|
||||
</document>
|
||||
166
xdoc/xdocs/i18n.xml
Normal file
166
xdoc/xdocs/i18n.xml
Normal file
@ -0,0 +1,166 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
/*
|
||||
* Copyright 2001-2005 The Apache Software Foundation.
|
||||
*
|
||||
* Licensed 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.
|
||||
*/
|
||||
-->
|
||||
|
||||
<document>
|
||||
<properties>
|
||||
<title>About</title>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
<section name="Internationalization">
|
||||
<p>
|
||||
This plugin could produce internationalised Maven1 documentation.
|
||||
</p>
|
||||
</section>
|
||||
<section name="Used Technologies">
|
||||
<p>
|
||||
XDoc plugin uses Java to produce internationalised
|
||||
documentation. Please refer to:
|
||||
<ul>
|
||||
<li>
|
||||
<a href="http://java.sun.com/j2se/corejava/intl/index.jsp">
|
||||
Core Java Internationalization
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="http://java.sun.com/j2se/1.4.2/docs/api/java/util/ResourceBundle.html">
|
||||
ResourceBundle (Java 2 Platform SE v1.4.2)
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="http://java.sun.com/j2se/1.4.2/docs/guide/intl/locale.doc.html">
|
||||
Supported Locales
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="http://java.sun.com/j2se/1.4.2/docs/guide/intl/encoding.doc.html">
|
||||
Supported Encodings
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
The XDoc plugin will generate this following structure:
|
||||
<source>
|
||||
|-- en\
|
||||
|-- user_dir\
|
||||
|-- index.html
|
||||
|-- ... (mail-lists.html, maven-reports.html...)
|
||||
|-- fr\
|
||||
|-- user_dir\
|
||||
|-- index.html
|
||||
|-- ... (mail-lists.html, maven-reports.html...)
|
||||
|-- OTHER_LANGUAGE\
|
||||
|-- user_dir\
|
||||
|-- index.html
|
||||
|-- ... (mail-lists.html, maven-reports.html...)
|
||||
|-- images\
|
||||
|-- style\
|
||||
|-- user_dir\
|
||||
|-- index.html
|
||||
|-- ... (mail-lists.html, maven-reports.html...)</source>
|
||||
</p>
|
||||
</section>
|
||||
<section name="Getting started">
|
||||
<subsection name="First step">
|
||||
<p>
|
||||
You should define a default locale and all supported locales.
|
||||
For example, you want to produce Maven documentation by
|
||||
default in English, and also in French and in German. Just add
|
||||
these properties in your <code>project.properties</code> file:
|
||||
<div class="source">
|
||||
<pre>
|
||||
maven.xdoc.locale.default=en
|
||||
maven.xdoc.locale.supported=fr, de</pre>
|
||||
</div>
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name="Second step">
|
||||
<p>
|
||||
You should define your own bundles called
|
||||
<code>${maven.xdoc.bundle}.properties</code>
|
||||
in the
|
||||
<code>${maven.xdoc.bundle.src}</code>
|
||||
directory. In our example, you should have:
|
||||
<div class="source">
|
||||
<pre>
|
||||
|-- ${maven.xdoc.bundle.src}\
|
||||
|-- user_dir\
|
||||
|-- ${maven.xdoc.bundle}.properties
|
||||
|-- ${maven.xdoc.bundle}_fr.properties
|
||||
|-- ${maven.xdoc.bundle}_de.properties
|
||||
</pre>
|
||||
</div>
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name="Last step">
|
||||
<p>
|
||||
You should create your own XDoc files which supports i18n. For
|
||||
<code>navigation.xml</code> :
|
||||
<source><![CDATA[
|
||||
<menu key="mykey"/>
|
||||
<item key="mykey" href="/mylink.html" />]]></source>
|
||||
For <code>myxdoc.xml</code> :
|
||||
<source><![CDATA[
|
||||
<title key="mykey"/>
|
||||
<message key="mykey"/>
|
||||
<section key="mykey"/>
|
||||
<subsection key="mykey"/>]]></source>
|
||||
|
||||
NOTE: XDoc plugin always uses key if defined. For instance,
|
||||
this line of code:
|
||||
<source><![CDATA[<title key="myKey">blabla</title>]]></source>
|
||||
will produce the key value and not "blabla".
|
||||
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name="Beautify the generated navigation">
|
||||
<p>
|
||||
If you have lots of languages defined, you can beautify the
|
||||
display with a select form. Just add this following property:
|
||||
|
||||
<div class="source">
|
||||
<pre>maven.xdoc.ui.localeList.asSelect=true</pre>
|
||||
</div>
|
||||
</p>
|
||||
</subsection>
|
||||
</section>
|
||||
<section name="Language supported">
|
||||
<p>
|
||||
Actually, only English, French and German are currently fully
|
||||
supported by Maven. Contributions are welcome!
|
||||
</p>
|
||||
</section>
|
||||
<section name="Known Issues">
|
||||
<subsection name="Generated Reports">
|
||||
<p>
|
||||
All generated reports by other plugins are not supported by the XDoc plugin.
|
||||
Each Maven1 plugin should be translated by their authors.
|
||||
</p>
|
||||
</subsection>
|
||||
<subsection name="Others Plugins">
|
||||
<p>
|
||||
Actually, PDF and HTML2XDOC plugins do not support the
|
||||
internationalization.
|
||||
</p>
|
||||
</subsection>
|
||||
</section>
|
||||
</body>
|
||||
</document>
|
||||
@ -32,6 +32,7 @@
|
||||
<menu name="Overview">
|
||||
<item name="Goals" href="/goals.html"/>
|
||||
<item name="Properties" href="/properties.html"/>
|
||||
<item name="i18n" href="/i18n.html"/>
|
||||
<item name="FAQs" href="/faq.html"/>
|
||||
</menu>
|
||||
</body>
|
||||
|
||||
@ -18,11 +18,11 @@
|
||||
-->
|
||||
|
||||
<document>
|
||||
|
||||
<properties>
|
||||
<title>Xdoc Properties</title>
|
||||
<author email="smor@apache.org">Stéphane MOR</author>
|
||||
<author email="vmassol@apache.org">Vincent Massol</author>
|
||||
<author email="vincent.siveton@gmail.com">Vincent Siveton</author>
|
||||
</properties>
|
||||
|
||||
<body>
|
||||
@ -113,6 +113,88 @@
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section name="I18n Properties">
|
||||
<table>
|
||||
<tr>
|
||||
<th>Property name</th>
|
||||
<th>Optional?</th>
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td>maven.xdoc.date.format</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Sets the format of the date to display. Defaults to "dd MMMM
|
||||
yyyy" (eg: "14 August 2002"). For details on the format, see
|
||||
SimpleDateFormat in the jdk documentation.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.date.locale</td>
|
||||
<td>Yes</td>
|
||||
<td>Sets the locale used for the date. Defaults to "en", ie english.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.locale.default</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Sets the default locale used for the translation. If null, it is
|
||||
the default locale for this instance of the Java Virtual Machine
|
||||
Defaults to "en", ie english, to ensure backward compatible.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.locale.supported</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
A comma separated of locales supported by the project, ie "fr,
|
||||
en_CA"
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.bundle.src</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Specifies the location where user bundles are stored. The
|
||||
default value is ${maven.docs.src}.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.bundle</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Specifies the name of the user bundles. The default value is
|
||||
xdocs.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.ui.displayByDefault</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Boolean value to specify the display of the default language, ie
|
||||
"English [By default]". The default value is false.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.ui.localeList.asSelect</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Boolean value to display the language list as an HTML
|
||||
<select/> tag. The default value is false.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.ui.localeList.max</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
An integer value to specify the maximum number of locales
|
||||
displayes without an HTML <select/> tag. The default value is 5.
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</section>
|
||||
<section name="Presentation Properties">
|
||||
<table>
|
||||
<tr>
|
||||
@ -158,23 +240,6 @@
|
||||
If "maven.xdoc.date" is left empty, no date is shown on the site (default).
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.date.format</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Sets the format of the date to display.
|
||||
Defaults to "dd MMMM yyyy" (eg: "14 August 2002").
|
||||
For details on the format, see SimpleDateFormat in the jdk documentation.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.date.locale</td>
|
||||
<td>Yes</td>
|
||||
<td>
|
||||
Sets the locale used for the date.
|
||||
Defaults to "en", ie english.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>maven.xdoc.version</td>
|
||||
<td>Yes</td>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user