You are viewing a plain text version of this content. The canonical link for it is here.
Posted to easyant-commits@incubator.apache.org by hi...@apache.org on 2011/02/17 17:01:56 UTC

svn commit: r1071697 [30/42] - in /incubator/easyant: buildtypes/ buildtypes/trunk/ buildtypes/trunk/build-osgi-bundle-java/ buildtypes/trunk/build-osgi-bundle-java/src/ buildtypes/trunk/build-osgi-bundle-java/src/main/ buildtypes/trunk/build-osgi-bund...

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/default-version-strategy/0.1/default-version-strategy.ivy
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/default-version-strategy/0.1/default-version-strategy.ivy
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/default-version-strategy/0.1/default-version-strategy.ivy
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ant?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ant (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ant Thu Feb 17 17:01:07 2011
@@ -0,0 +1,54 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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="org.apache.easyant.plugins#deps-lib"
+	xmlns:ea="antlib:org.apache.easyant">
+	
+	<ea:core-version requiredrevision="[0.8,+]" />
+	
+	<target name=":init" phase="validate">
+		<ea:parameter phase="validate" />
+		<ea:parameter phase="provision" />
+
+		<ea:parameter property="lib.main" required="true" 
+				description="directory where main libraries are picked up" />
+		<ea:parameter property="lib.test" required="true" 
+				description="directory where test libraries are picked up" />
+		
+		<fileset id="lib.main.fileset" dir="${lib.main}">
+                	<include name="*.jar" />
+            	</fileset>
+		
+            	<fileset id="lib.test.fileset" dir="${lib.test}">
+                	<include name="*.jar" />
+            	</fileset>
+	</target>	
+	
+	<target name=":plugin" phase="provision">
+		<ea:parameter path="compile.main.classpath"  
+			description="main compilation path" />
+		<ea:parameter path="compile.test.classpath"  
+			description="test compilation path" />
+		<ea:path pathid="compile.main.classpath" overwrite="append">
+	            	<fileset refid="lib.main.fileset" />
+        	</ea:path>
+		<ea:path pathid="compile.test.classpath" overwrite="append">
+	            	<fileset refid="lib.test.fileset" />
+        	</ea:path>
+	</target>	
+</project>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ant
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ant
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ant
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ivy?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ivy (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ivy Thu Feb 17 17:01:07 2011
@@ -0,0 +1,28 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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.  
+-->
+<ivy-module version="2.0"> 
+	<info organisation="org.apache.easyant.plugins"
+	       module="deps-lib"
+	       status="milestone"
+	       revision="0.2">
+	</info>
+	<publications>
+		<artifact type="ant" />
+	</publications>
+</ivy-module>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ivy
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ivy
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/deps-lib/0.2/deps-lib.ivy
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ant?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ant (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ant Thu Feb 17 17:01:07 2011
@@ -0,0 +1,186 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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="org.apache.easyant.plugins;distribution" xmlns:ac="antlib:net.sf.antcontrib" xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ea="antlib:org.apache.easyant">
+
+	<ea:core-version requiredrevision="[0.8,+]" />
+
+	<macrodef name="generate-bundle-checksum" description="generate checksum files for a given file">
+		<attribute name="usechecksum" description="Defines if checksum files need to be generated" default="true" />
+		<attribute name="file" description="The file to generate checksum for." />
+		<attribute name="algorithm" default="MD5" description="Specifies the algorithm to be used to compute the checksum. Defaults to 'MD5'. Other popular algorithms like 'SHA' or 'SHA-512' may be used as well. " />
+		<sequential>
+			<ac:if>
+				<istrue value="@{usechecksum}" />
+				<ac:then>
+					<checksum file="@{file}" algorithm="@{algorithm}" />
+				</ac:then>
+			</ac:if>
+		</sequential>
+	</macrodef>
+
+	<!-- macro for generating distribution zip -->
+	<macrodef name="bundle" description="Generate tar.gz, tar.bz2, zip, and corresponding MD5 hash files for a release directory">
+
+		<attribute name="destfile" description="Destination file for the generated archives, without extensions" />
+		<attribute name="archivetype" description="Defines the archivetype to generate (zip, tar.gz, tar.bz2)" default="zip" />
+		<attribute name="usechecksum" description="Defines if checksum files need to be generated" default="true" />
+		<element name="contents" description="nested include, exclude, or pattern directives" implicit="true" optional="true" />
+
+		<sequential>
+
+			<ac:if>
+				<contains string="@{archivetype}" substring="zip" />
+				<ac:then>
+					<zip destfile="@{destfile}.zip">
+						<contents />
+					</zip>
+					<generate-bundle-checksum file="@{destfile}.zip" usechecksum="@{usechecksum}" />
+				</ac:then>
+			</ac:if>
+			<ac:if>
+				<contains string="@{archivetype}" substring="tar.gz" />
+				<ac:then>
+					<tar destfile="@{destfile}.tar.gz" compression="gzip">
+						<contents />
+					</tar>
+					<generate-bundle-checksum file="@{destfile}.tar.gz" usechecksum="@{usechecksum}" />
+				</ac:then>
+			</ac:if>
+			<ac:if>
+				<contains string="@{archivetype}" substring="tar.bz2" />
+				<ac:then>
+					<tar destfile="@{destfile}.tar.bz2" compression="bzip2">
+						<contents />
+					</tar>
+					<generate-bundle-checksum file="@{destfile}.tar.bz2" usechecksum="@{usechecksum}" />
+				</ac:then>
+			</ac:if>
+			<ac:if>
+				<contains string="@{archivetype}" substring="jar" />
+				<ac:then>
+					<jar destfile="@{destfile}.jar" filesetmanifest="merge">
+						<contents />
+					</jar>
+					<generate-bundle-checksum file="@{destfile}.jar" usechecksum="@{usechecksum}" />
+				</ac:then>
+			</ac:if>
+
+			
+		</sequential>
+
+	</macrodef>
+
+	<target name=":init" phase="validate">
+		<ea:parameter property="target.distributions" default="${target}/distributions" description="directory where distribution packages will be generated" />
+		<ea:parameter property="project.basedir" default="${basedir}" description="defines the project base directory" />
+		<ea:parameter property="project.prefix" default="" description="defines the project prefix, used as distribution root directory" />
+		<ea:parameter property="target.artifacts" default="${basedir}/target/artifacts" description="destination directory for target artifacts"/>
+		<ea:parameter property="project.bin.dir" default="${basedir}/bin" description="directory of project binaries (scripts, executables, etc...)"/>
+		<ea:parameter property="lib.main" default="${basedir}/lib/main" description="directory where main libraries are picked up" />		
+
+		
+		<!-- project artifacts -->
+		<zipfileset id="project.artifacts.zipfileset" dir="${target.artifacts}" prefix="${project.prefix}/lib">
+			<exclude name="**/*-test.jar"/>
+		</zipfileset>
+		<!-- project dependencies -->
+		<zipfileset id ="project.dependencies.zipfileset" dir="${lib.main}" prefix="${project.prefix}/lib" erroronmissingdir="false"/>
+		<!-- make scripts executable -->
+		<zipfileset id="project.executables.zipfileset" dir="${project.bin.dir}" prefix="${project.prefix}/bin" filemode="744" erroronmissingdir="false"/>
+		<!-- ship the documentation -->
+		<zipfileset id="project.documentation.zipfileset" dir="${target.documentation.dir}" prefix="${project.prefix}/doc" erroronmissingdir="false"/>
+		<!--additional files -->
+		<zipfileset id="project.additionalfiles.zipfileset" dir="${project.basedir}" prefix="${project.prefix}" >
+			<include name="README" />
+			<include name="NOTICE" />
+			<include name="LICENSE" />
+		</zipfileset>
+		
+		<!-- all project files -->
+		<zipfileset id="project.allfiles.zipfileset" dir="${project.basedir}" prefix="${project.prefix}" >
+			<exclude name="**/target/**"/>
+			<exclude name="${project.bin.dir}/**"/>
+			<exclude name="**/lib/**"/>
+			<exclude name="**/.git/**"/>
+		</zipfileset>
+		
+		<mkdir dir="${target.distributions}" />
+	</target>
+
+	<target name=":clean" description="clean distribution dir">
+		<delete dir="${target.distributions}"/>
+	</target>
+	
+	<target name="-force-retrieve" depends="validate">
+		<property name="retrieve.dependencies" value="true"/>
+	</target>
+	
+	<target name=":bin" depends="-force-retrieve,package" description="create a binary distribution">
+		<bundle destfile="${target.distributions}/${module.name}-bin">
+			<!-- project artifacts -->
+			<zipfileset refid="project.artifacts.zipfileset" />
+			<!-- project dependencies -->
+			<zipfileset refid="project.dependencies.zipfileset"/>
+			<!-- make scripts executable -->
+			<zipfileset refid="project.executables.zipfileset"/>
+			<!-- ship the documentation -->
+			<zipfileset refid="project.documentation.zipfileset"/>
+			<!--additional files -->
+			<zipfileset refid="project.additionalfiles.zipfileset"/>
+		</bundle>
+	</target>
+
+	<target name=":jar-with-dependencies" depends="-force-retrieve,package" description="create a jar archive which contains the binary output of your project, along its the unpacked dependencies (only works on jar projects)">
+		<condition property="target.main.artifact.exist">
+			<and>
+				<isset property="target.main.artifact"/>
+				<available file="${target.main.artifact}"/>
+			</and>		
+		</condition>
+		<fail unless="${target.main.artifact.exist}" message="${target.main.artifact} not found"/>
+		<ea:parameter property="bundle.withdependencies.excludes.pattern" default="META-INF/MANIFEST.MF" 
+					description="Pattern describing files excluded in the bundle jar with dependencies" />
+		<bundle destfile="${target.distributions}/${module.name}-with-dependencies" archivetype="jar">
+			<zipfileset excludes="${bundle.withdependencies.excludes.pattern}" >
+				<fileset dir="${lib.main}" includes="**/*.jar"/>
+			</zipfileset>
+			<zipfileset>
+				<fileset file="${target.main.artifact}"/>
+			</zipfileset>
+		</bundle>
+	</target>
+	
+	<target name=":source" depends="package" description="create a source distribution">
+		<bundle destfile="${target.distributions}/${module.name}-source">
+			<!-- project artifacts -->
+			<zipfileset refid="project.artifacts.zipfileset" />
+			<!-- project dependencies -->
+			<zipfileset refid="project.dependencies.zipfileset"/>
+			<!-- make scripts executable -->
+			<zipfileset refid="project.executables.zipfileset"/>
+			<!-- ship the documentation -->
+			<zipfileset refid="project.documentation.zipfileset"/>
+			<!-- all project files -->
+			<zipfileset refid="project.allfiles.zipfileset" />
+		</bundle>
+	</target>
+	
+	<!-- define a generic default target for this plugin -->
+	<target name="doit" depends="validate" />
+</project>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ant
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ant
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ant
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ivy?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ivy (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ivy Thu Feb 17 17:01:07 2011
@@ -0,0 +1,31 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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.  
+-->
+<ivy-module version="2.0"> 
+	<info organisation="org.apache.easyant.plugins"
+	       module="distribution"
+	       status="milestone"
+	       revision="0.1">
+	       <description>This module allow you to make binary distributions of your project such as zip, tar.bz2, tar.gz, etc...
+	        It provides ready to use distributions like bin, with-dependencies, sources. It also comes with a macro that can be reused to make your own distribution.
+	       </description>
+	</info>
+	<publications>
+		<artifact type="ant" />
+	</publications>
+</ivy-module>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ivy
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ivy
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/distribution/0.1/distribution.ivy
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ant?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ant (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ant Thu Feb 17 17:01:07 2011
@@ -0,0 +1,105 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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="org.apache.easyant.plugins#documentation" xmlns:ea="antlib:org.apache.easyant">
+	
+	<ea:core-version requiredrevision="[0.8,+]" />
+
+	<dirname file="${org.apache.easyant.plugins#documentation.style.css.file}" property="org.apache.easyant.plugins#documentation.style.css.dir" />
+
+	<target name=":init" phase="validate">
+		<ea:parameter phase="validate" />
+		<ea:parameter phase="verify" />
+		<ea:parameter phase="documentation" />
+
+		<ea:parameter property="documentation.xsl.file" default="${org.apache.easyant.plugins#documentation.site.xsl.file}" description="xsl, used to transform XML -> HTML" />
+		<ea:parameter property="documentation.css.dir" default="{org.apache.easyant.plugins#documentation.style.css.dir}" description="path where the css are stored, used for nice looking HTML" />
+		<ea:parameter property="target.documentation.dir" default="${target}/documentation" description="directory where the documentation will be generated to" />
+		<ea:parameter property="src.dir" default="${user.dir}/src" description="directory containing projects sources" />
+		<ea:parameter property="src.documentation.dir" default="${src.dir}/documentation" description="directory where the documentation is stored in the project" />
+		<ea:parameter property="documentation.menu.file" default="${src.documentation.dir}/menu.xml" description="the file, which stores the navigation" />
+
+		<condition property="xslt.available">
+			<available classname="org.apache.tools.ant.taskdefs.optional.TraXLiaison" />
+		</condition>
+		<fail message="Ant xslt was not found. Please install ant-nodeps in your ANT_HOME" unless="xslt.available" />
+
+		<available file="${documentation.xsl.file}" property="has.documentation.xsl.file" />
+		<fail message="documentation.xsl.file was not found. Please reference this file appropriately" unless="has.documentation.xsl.file" />
+
+		<available file="${src.documentation.dir}" property="has.src.documentation.dir" />
+		<available file="${documentation.menu.file}" property="has.documentation.menu.file" />
+
+		<available file="${documentation.css.dir}" property="has.documentation.css.dir" />
+	</target>
+
+	<target name="-warn-src.documentation.dir.missing" unless="has.src.documentation.dir">
+		<echo>WARN: Your project doesn't match with documentation structure.</echo>
+		<echo>	If you want to use the documentation feature you must create ${src.documentation.dir} directory. This directory must have a menu.xml file</echo>
+		<echo>	If you want to have more information, you should look at the documentation of this module.</echo>
+		<property name="skip.documentation" value="true" />
+	</target>
+
+	<target name="-warn-documentation.menu.file.missing" unless="has.documentation.menu.file">
+		<echo>WARN: Your project doesn't match with documentation structure (documentation menu file is missing).</echo> 
+		<echo>	If you want to have more information, you should look at the documentation of this module.</echo>
+		<property name="skip.documentation" value="true" />
+	</target>
+
+	<target name="-documentation" unless="skip.documentation" 
+		phase="documentation" 
+		depends="validate, -warn-src.documentation.dir.missing, -warn-documentation.menu.file.missing, -copy-css, process-documentation-resources">
+		<mkdir dir="${target.documentation.dir}" />
+
+		<echo message="Transforming the site documents..." />
+		<xslt basedir="${src.documentation.dir}" destdir="${target.documentation.dir}" extension=".html" style="${documentation.xsl.file}" excludes="${documentation.menu.file}" includes="*.xml">			<param name="relative-path" expression="." />
+			<param name="menu-src-path" expression="${src.documentation.dir}" />
+			<param name="menu-file" expression="${documentation.menu.file}" />
+		</xslt>
+
+		<!-- Copy static resource files 
+             in the future try to solve this via a patternset.
+        -->
+		<echo message="Copying static resource files... (images)" />
+		<copy todir="${target.documentation.dir}" filtering="no">
+			<fileset dir="${src.documentation.dir}">
+				<include name="**/*.gif" />
+				<include name="**/*.png" />
+				<include name="**/*.jpg" />
+			</fileset>
+		</copy>
+
+	</target>
+
+	<!-- Copy CSS stylesheets -->
+	<target name="-copy-css" if="has.documentation.css.dir" unless="skip.documentation" phase="process-documentation-resources">
+		<echo message="Copying CSS files..." />
+		<copy todir="${target.documentation.dir}" filtering="no">
+			<fileset dir="${documentation.css.dir}">
+				<include name="**/*.css" />
+			</fileset>
+		</copy>
+	</target>
+
+	<target name=":documentation" depends="-documentation" unless="skip.documentation" description="generate documentation">
+		<fail if="documentation.failure" message="There are documentation violation(s)" />
+	</target>
+
+
+	<target name="doit" depends=":documentation" />
+</project>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ant
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ant
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ant
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ivy?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ivy (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ivy Thu Feb 17 17:01:07 2011
@@ -0,0 +1,40 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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.  
+-->
+<ivy-module version="2.0"> 
+	<info organisation="org.apache.easyant.plugins"
+	       module="documentation"
+	       status="milestone"
+	       revision="0.1">
+	       <description><p>This module is used to generate documentation (out of XDOC files).<br/>
+            Your project must have the following structure:<br/>
+                src--<br/>
+                    |documentation ($src.documentation.dir)<br/>
+                    --menu.xml ($documentation.menu.file)<br/>
+                The documentation itself, must follow the XDOC-Guideline (see http://maven.apache.org/doxia/references/xdoc-format.html).<br/>
+                You can provide a CSS-Stylesheet for the format of the page ($documentation.css.dir), furthermore, you can provide your <br/>
+                own XSL-Stylesheet for the conversion of the XDOC-Documents to HTML.</p>
+            </description>
+	</info>
+    <publications>
+        <artifact type="ant" />
+        <artifact type="xsl" name="site"/>
+        <artifact type="css" name="style"/>
+    </publications>
+	<dependencies/>
+</ivy-module>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ivy
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ivy
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/documentation.ivy
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/site.xsl
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/site.xsl?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/site.xsl (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/site.xsl Thu Feb 17 17:01:07 2011
@@ -0,0 +1,240 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+   Copyright 2008-2010 the EasyAnt project
+
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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.
+-->
+<!-- Content Stylesheet for "project-site" Documentation -->
+
+
+<!-- $Id$ -->
+
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+  version="1.0">
+
+
+  <!-- Output method -->
+  <xsl:output method="xml"
+              encoding="iso-8859-1"
+              doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
+              doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
+              indent="yes"/>
+
+
+  <!-- Defined parameters (overrideable) -->
+  <xsl:param    name="relative-path" select="'.'"/>
+  <xsl:param    name="menu-src-path" select="'.'"/>
+  <!-- Process an entire document into an HTML page -->
+  <xsl:template match="document">
+	  <xsl:variable name="filename" select="concat($menu-src-path, '/menu.xml')"/>  
+    <xsl:variable name="project"
+	    select="document($filename)/project"/>
+
+    <xsl:variable name="homelink" select="project/@href"/>
+    <xsl:variable name="title" select="$project/title"/>
+    <xsl:variable name="logo" select="$project/logo"/>
+
+    <html>
+    <head>
+        <xsl:apply-templates select="meta"/>
+        <title><xsl:value-of select="$project/title"/> - <xsl:value-of select="properties/title"/></title>
+
+        <xsl:for-each select="properties/author">
+          <xsl:variable name="name">
+            <xsl:value-of select="."/>
+          </xsl:variable>
+          <xsl:variable name="email">
+            <xsl:value-of select="@email"/>
+          </xsl:variable>
+          <meta name="author" value="{$name}"/>
+          <meta name="email" value="{$email}"/>
+        </xsl:for-each>
+        <xsl:if test="properties/base">
+          <base href="{properties/base/@href}"/>
+  </xsl:if>
+
+        <style type="text/css" media="all">
+			@import url("style.css");
+        </style>
+        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+    </head>
+
+    <body>
+        <div id="body">
+        <div id="inner_body">
+            <div id="frame_logo">
+                <div class="logo">
+				    <a href="{$homelink}" 
+				       title="{$title}">
+				       <img src="{$logo}" alt="{$title}" border="0" />
+				    </a>
+                </div>
+
+                <div class="title">
+                    <h1><xsl:value-of select="$title"/></h1>
+                </div>
+
+            </div>
+          
+            <div id="content_wrapper">
+                <div id="content_wrapper" class="nav_left">
+                    <xsl:apply-templates select="$project/body/menu"/>
+                </div>
+                <div id="content_wrapper" class="content">
+                    <xsl:apply-templates select="body/section"/>
+                </div>
+            </div>
+                
+			<div id="footer">
+                <em>Copyright &#169; 1999-2008, The Apache Software Foundation</em>
+            </div>
+		</div>	
+		</div>	
+  </body>
+  </html>
+  </xsl:template>
+
+
+  <!-- Process a menu for the navigation bar -->
+  <xsl:template match="menu">
+        <h1><xsl:value-of select="@name"/></h1>
+        <ul>
+            <xsl:apply-templates select="item"/>
+        </ul>
+  </xsl:template>
+
+
+  <!-- Process a menu item for the navigation bar -->
+  <xsl:template match="item">
+    <xsl:variable name="href">
+      <xsl:choose>
+            <xsl:when test="starts-with(@href, 'http://')">
+                <xsl:value-of select="@href"/>
+            </xsl:when>
+            <xsl:when test="starts-with(@href, 'https://')">
+                <xsl:value-of select="@href"/>
+            </xsl:when>
+            <xsl:when test="starts-with(@href, '/')">
+                <xsl:value-of select="@href"/>
+            </xsl:when>
+            <xsl:otherwise>
+                <xsl:value-of select="$relative-path"/><xsl:value-of select="@href"/>
+            </xsl:otherwise>    
+      </xsl:choose>
+    </xsl:variable>
+    <li>
+        <a href="{$href}" class="menu_item"><xsl:value-of select="@name"/></a>
+    </li>
+  </xsl:template>
+
+
+  <!-- Process a documentation section -->
+  <xsl:template match="section">
+    <xsl:variable name="name">
+      <xsl:value-of select="@name"/>
+    </xsl:variable>
+    <h1 id="section_heading">
+          <a name="{$name}"><xsl:value-of select="@name"/></a>
+    </h1>
+      <!-- Section body -->
+      <p><blockquote>
+        <xsl:apply-templates/>
+      </blockquote></p>
+  </xsl:template>
+
+
+  <!-- Process a documentation subsection -->
+  <xsl:template match="subsection">
+    <xsl:variable name="name">
+      <xsl:value-of select="@name"/>
+    </xsl:variable>
+    <h2 id="subsection_heading">
+          <a name="{$name}"><xsl:value-of select="@name"/></a>
+      </h2>
+      <!-- Subsection body -->
+        <blockquote>
+        <xsl:apply-templates/>
+      </blockquote>
+  </xsl:template>
+
+
+  <!-- Process a source code example -->
+  <xsl:template match="source">
+    <div align="left">
+      <table>
+        <tr>
+          <td>
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+          <td bgcolor="grey" height="1">
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+          <td bgcolor="grey" width="1" height="1">
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+        </tr>
+        <tr>
+          <td bgcolor="grey" width="1">
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+          <td bgcolor="#ffffff" height="1"><pre>
+            <xsl:value-of select="."/>
+          </pre></td>
+          <td bgcolor="grey" width="1">
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+        </tr>
+        <tr>
+          <td bgcolor="grey" width="1" height="1">
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+          <td bgcolor="grey" height="1">
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+          <td bgcolor="grey" width="1" height="1">
+            <img src="/images/void.gif" width="1" height="1" vspace="0" hspace="0" border="0"/>
+          </td>
+        </tr>
+      </table>
+    </div>
+  </xsl:template>
+
+  <!-- specially process td tags ala site.vsl -->
+  <xsl:template match="table[@class='detail-table']/tr/td">
+    <td class="detail-table">
+        <xsl:if test="@colspan"><xsl:attribute name="colspan"><xsl:value-of select="@colspan"/></xsl:attribute></xsl:if>
+        <xsl:if test="@rowspan"><xsl:attribute name="rowspan"><xsl:value-of select="@rowspan"/></xsl:attribute></xsl:if>
+        <xsl:apply-templates/>
+    </td>
+  </xsl:template>
+  
+  <!-- handle th ala site.vsl -->
+  <xsl:template match="table[@class='detail-table']/tr/th">
+    <td class="detail-table-header">
+        <xsl:if test="@colspan"><xsl:attribute name="colspan"><xsl:value-of select="@colspan"/></xsl:attribute></xsl:if>
+        <xsl:if test="@rowspan"><xsl:attribute name="rowspan"><xsl:value-of select="@rowspan"/></xsl:attribute></xsl:if>
+        <xsl:apply-templates />
+    </td>
+  </xsl:template>
+  
+  <!-- Process everything else by just passing it through -->
+  <xsl:template match="*|@*">
+    <xsl:copy>
+      <xsl:apply-templates select="@*|*|text()"/>
+    </xsl:copy>
+  </xsl:template>
+
+</xsl:stylesheet>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/site.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/site.xsl
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/site.xsl
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/style.css
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/style.css?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/style.css (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/style.css Thu Feb 17 17:01:07 2011
@@ -0,0 +1,177 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You under the Apache License, Version 2.0
+ *  (the "License"); you may not use this file except in compliance with
+ *  the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *
+ */
+
+body, p, td, li, ul, ol  {
+  font-family: Verdana, Helvetica, Arial, sans-serif;
+  font-size: small;
+}
+
+h1, h2, h3, h4, h5, h6 {
+  font-family: "Trebuchet MS", Geneva, Arial, Helvetica, SunSans-Regular, Verdana, sans-serif;
+}
+
+h1 {
+  padding-top: 0;
+  margin-top: 0;
+  padding-left: 10px;
+  font-size: 1.4em;
+  -moz-border-radius-topleft: 5px;
+  -moz-border-radius-topright: 5px;
+}
+
+h2 {
+  font-size: 1.2em;
+}
+
+h3 {
+  font-size: 1.1em;
+}
+
+h4 {
+  font-size: 1.0em;
+}
+
+/*
+** Page layout blocks / IDs
+*/
+#body  {
+    -moz-border-radius-topleft: 5px;
+    -moz-border-radius-topright: 5px;
+    -moz-border-radius-bottomright: 5px;
+    -moz-border-radius-bottomleft: 5px;
+    background-color: silver;
+    padding-top: 5px;
+    padding-bottom: 5px;
+}
+
+#inner_body  {
+    background-color: white;
+    margin-top: 5px;
+    margin-bottom: 5px;
+    margin-left: 5px;
+    margin-right: 5px;
+    height: 100%;
+}
+
+#frame_logo {
+	height: 70px;
+	width: 100%;
+}
+
+#frame_logo .logo {
+	float: left;
+	width: 30%;
+	padding-top: 0;
+}
+
+#frame_logo .title {
+    float: right;
+    width: 60%;
+    font-size: 1.6em;
+    color: silver;
+    margin-top: 15px;
+}
+
+#empty_header {
+	clear: both;
+	width: 100%;
+	height: 21px;
+	background: #E9E9E9;
+}
+
+#content_wrapper {
+    width: 100%;
+    height: 800px;
+    background: white;
+    margin-top: 3px;
+}
+
+#content_wrapper .nav_left {
+    float: left;
+	width: 15%;
+}
+
+#content_wrapper .nav_left  h1 {
+    font-size: 12px;
+    text-align: left;
+    color: white;
+    margin-left: 2px;
+    margin-bottom: 0;
+    background-color: silver;
+    -moz-border-radius-topleft: 5px;
+    -moz-border-radius-topright: 5px;
+}
+
+#content_wrapper .nav_left ul {
+    font-size: 10px;
+    margin-left: 2px;
+    margin-top: 0;
+    border-bottom: 1px solid silver;
+    border-left: 1px solid silver;
+    border-right: 1px solid silver;
+    padding-top: 4px;
+}
+
+a.menu_item {
+    font-size: 12px;
+    color: black;
+    padding-top: 4px;
+    text-decoration: none;
+}
+
+a.menu_item:hover {
+    text-decoration: underline;
+    font-weight: bold;
+}
+
+#content_wrapper .content {
+    margin-left: 5px;
+    float: left;
+    width: 83%;
+}
+#section_heading {
+    color: white;
+    background-color: silver;
+    font-weight: bold;
+    -moz-border-radius-topleft: 5px;
+    -moz-border-radius-topright: 5px;
+    -moz-border-radius-bottomleft: 5px;
+    -moz-border-radius-bottomright: 5px;
+}
+
+#subsection_heading {
+    color: white;
+    background-color: silver;
+}
+
+#footer {
+    text-align: center;
+    margin-top: 5px;
+    height: 10%;
+    width: 100%;
+}
+
+td.detail-table-header {
+    background-color: silver;
+    color: white;
+}
+
+td.detail-table {
+    background-color: white;
+    color: black;
+}

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/style.css
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/style.css
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/documentation/0.1/style.css
------------------------------------------------------------------------------
    svn:mime-type = text/css

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-buildtype.xsl
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-buildtype.xsl?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-buildtype.xsl (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-buildtype.xsl Thu Feb 17 17:01:07 2011
@@ -0,0 +1,371 @@
+<?xml version="1.0"?>
+
+	<!--
+		Generate xooki documentation from a buildtype ant file. Stylesheet
+		parameters are passed in by eadoc.ant at runtime.
+	-->
+<xsl:stylesheet version="1.0"
+	xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ea="antlib:org.apache.easyant"
+	xmlns:exsl="http://exslt.org/common" extension-element-prefixes="exsl"
+	exclude-result-prefixes="#all">
+
+	<xsl:param name="pluginOrganisation">org.apache.easyant.plugins</xsl:param>
+	<xsl:param name="typeOrganisation">org.apache.easyant.buildtypes</xsl:param>
+
+	<!-- xooki TOC level for the output HTML document -->
+	<xsl:param name="tocLevel">2</xsl:param>
+
+	<xsl:output method="html" indent="yes" omit-xml-declaration="yes"
+		doctype-public="-//W3C//DTD HTML 4.01//EN" doctype-system="http://www.w3.org/TR/html4/strict.dtd" />
+
+	<xsl:template match="/ivy-report/dependencies/module/revision">
+		<xsl:variable name="moduleVersion" select="@name" />
+		<xsl:variable name="moduleDescription" select="description" />
+		<xsl:variable name="typeName" select="../@name" />
+		<xsl:variable name="moduleOrganisation" select="../@organisation"/>
+		<xsl:comment>
+			Licensed to the Apache Software Foundation (ASF) under one
+			or more contributor license agreements. See the NOTICE file
+			distributed with this work for additional information
+			regarding copyright ownership. The ASF licenses this file
+			to you under the Apache License, Version 2.0 (the
+			"License"); you may not use this file except in compliance
+			with the License. You may obtain a copy of the License at
+
+			http://www.apache.org/licenses/LICENSE-2.0
+
+			Unless required by applicable law or agreed to in writing,
+			software distributed under the License is distributed on an
+			"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+			KIND, either express or implied. See the License for the
+			specific language governing permissions and limitations
+			under the License.
+		</xsl:comment>
+		<xsl:text>
+		</xsl:text>
+		<xsl:comment>
+			<xsl:value-of select="$typeName" />
+			documentation autogenerated by EADoc
+		</xsl:comment>
+		<xsl:text>
+		</xsl:text>
+		<html>
+			<head>
+				<title>
+					EasyAnt BuildType <xsl:value-of select="$typeName" /><xsl:text> </xsl:text><xsl:value-of select="concat('v', $moduleVersion)" />
+				</title>
+				<script type="text/javascript">
+					var xookiConfig = {level:<xsl:value-of select="$tocLevel" />};
+				</script>
+				<script type="text/javascript" src="../../xooki/xooki.js">
+					<xsl:text></xsl:text>
+				</script>
+			</head>
+			<body>
+				<textarea id="xooki-source">
+
+					<xsl:call-template name="outputHeader">
+						<xsl:with-param name="typeName" select="$typeName" />
+						<xsl:with-param name="typeVersion" select="$moduleVersion" />
+					</xsl:call-template>
+
+					<xsl:if test="$moduleDescription">
+						<h2>Overview</h2>
+						<p>
+							<xsl:copy-of select="$moduleDescription"/>
+						</p>
+					</xsl:if>
+					
+					<div id="sample">
+						<h2>Example</h2>
+						You can use this buildtype by adding the following code in your module.ivy (or module.ant) file
+						<code type="xml">
+							<ea:build>
+								<xsl:attribute name="organisation">
+									<xsl:value-of select="$moduleOrganisation"/>
+								</xsl:attribute>
+								<xsl:attribute name="module">
+									<xsl:value-of select="$typeName"/>
+								</xsl:attribute>
+								<xsl:attribute name="rev">
+									<xsl:value-of select="$moduleVersion"/>
+								</xsl:attribute>
+							</ea:build>
+						</code>
+						<xsl:if test="$moduleOrganisation='org.apache.easyant.buildtypes'">
+							<div id="note">Note: The organisation argument in <b>ea:build</b> tag is optional. If not specified easyant will use the default one (org.apache.easyant.buildtypes).</div>					
+							Shorter form : 
+							<code type="xml">
+								<ea:build>
+									<xsl:attribute name="module">
+										<xsl:value-of select="$typeName"/>
+									</xsl:attribute>
+									<xsl:attribute name="rev">
+										<xsl:value-of select="$moduleVersion"/>
+									</xsl:attribute>
+								</ea:build>
+							</code>
+						</xsl:if>
+					</div>
+					<xsl:call-template name="outputPhaseDescriptions" />
+					<xsl:call-template name="outputParameterTable" />
+
+
+				</textarea>
+				<script type="text/javascript">xooki.postProcess();</script>
+			</body>
+		</html>
+
+	</xsl:template>
+	
+
+	<!-- Output type name and generate links to extended types -->
+	<xsl:template name="outputHeader">
+		<xsl:param name="typeName" />
+		<xsl:param name="typeVersion" />
+		<h1>
+			BuildType
+			<xsl:value-of select="$typeName" />
+			<xsl:text> </xsl:text>
+			<xsl:value-of select="concat('v', $typeVersion)" />
+		</h1>
+		<xsl:if test="easyant/imports/import[@organisation = $typeOrganisation]">
+			<div class="parent-types">
+				extends
+				<xsl:for-each
+					select="easyant/imports/import[@organisation = $typeOrganisation]">
+					<xsl:variable name="parentName" select="@name" />
+					<xsl:element name="a">
+						<xsl:attribute name="href"><xsl:value-of
+							select="concat($parentName, '.html')" /></xsl:attribute>
+						<xsl:value-of select="$parentName" />
+					</xsl:element>
+				</xsl:for-each>
+			</div>
+		</xsl:if>
+		<hr />
+	</xsl:template>
+
+	<!-- Generate an HTML table summarizing parameters used by the type -->
+	<xsl:template name="outputParameterTable">
+		<xsl:if test="easyant/properties/property">
+			<h2>Parameters</h2>
+			<p>The following property values can be changed to tune the behavior of this buildtype.
+				Required parameters must be defined upon import, or the build will fail.</p>
+			<table class="sortable" id="type-parameters">
+				<thead>
+					<tr>
+						<th>Parameter</th>
+						<th>Required?</th>
+						<th class="unsortable">Description</th>
+					</tr>
+				</thead>
+				<tbody>
+					<xsl:for-each select="easyant/properties/property">
+						<xsl:sort select="@name" />
+						<tr>
+							<td>
+								<xsl:value-of select="@name" />
+							</td>
+							<td>
+								<xsl:choose>
+									<xsl:when test="@required = 'true'">Yes</xsl:when>
+									<xsl:otherwise>No</xsl:otherwise>
+								</xsl:choose>
+							</td>
+							<td>
+								<xsl:if test="@description">
+									<xsl:value-of select="@description" /><br/>
+								</xsl:if>
+								<xsl:if test="not(@value) and @default">
+									<span class="bold">Default: </span><span id="defaultValue"><xsl:value-of select="@default" /></span><br/>
+								</xsl:if> 
+								<xsl:if test="@value">
+									<span class="bold">BuildType value: </span><span id="buildTypeValue"><xsl:value-of select="@value" /></span>
+								</xsl:if>
+							</td>
+						</tr>
+					</xsl:for-each>
+				</tbody>
+			</table>
+		</xsl:if>
+	</xsl:template>
+
+	<!--
+		Generate a list describing what the type does during each build phase
+	-->
+	<xsl:template name="outputPhaseDescriptions">
+
+		<!--
+			an XML fragment that condenses nested phases and targets into a flat
+			list, so that we can then make an output summary table.
+		-->
+		<xsl:variable name="typeSummary">
+			<project>
+				<xsl:call-template name="add-plugin-targets">
+					<xsl:with-param name="as" select="" />
+				</xsl:call-template>
+			</project>
+		</xsl:variable>
+		<xsl:variable name="phaseTargets" select="exsl:node-set($typeSummary)/project" />
+
+		<h2>Plugins</h2>
+		<p>
+			This build type loads each of the following	<a href="../plugins/plugins.html">plugins</a>:
+		</p>
+		<div class="type-plugins">
+			<xsl:for-each select="easyant/imports/import[@organisation=$pluginOrganisation]">
+				<xsl:variable name="pluginName" select="@name"/>
+				<xsl:if test="position() &gt; 1"><xsl:text>, </xsl:text></xsl:if>
+				<a href="{concat('../plugins/', $pluginName, '.html')}">
+					<xsl:value-of select="$pluginName"/>
+				</a>
+			</xsl:for-each>
+		</div>
+		
+
+		<h2>Build Phases</h2>
+		<p>
+			This build type takes the following actions during each	<a href="../phases.html">build phase</a> :
+		</p>
+		<table id="buildtype-phases">
+		<thead>
+			<tr class="header-row">
+				<th>Phase</th>
+				<th>Description</th>
+			</tr>
+		</thead>
+		<tbody>
+			<xsl:for-each
+					select="$phaseTargets/phase[not(@name = preceding::phase/@name)]">
+					<xsl:variable name="currentPhase" select="string(@name)" />
+					<xsl:variable name="currentPhaseTargets"
+						select="$phaseTargets/target[@phase=$currentPhase]" />
+					<xsl:if test="$currentPhaseTargets">
+						<tr class="phase-row">
+							<td>
+								<span class="phase-name">
+									<xsl:value-of select="$currentPhase" />
+								</span>
+							</td>
+							<td>
+								<span class="phase-description">
+									<xsl:value-of select="@description" />
+								</span>
+								<table class="sortable" id="type-phases">
+									<thead>
+										<tr class="header-row">
+											<th>Target</th>
+											<th>Description</th>
+											<th>From Plugin</th>
+										</tr>
+									</thead>
+									<tbody>
+										<xsl:for-each select="$currentPhaseTargets">
+											<tr>
+												<td class="target-name">
+													<xsl:value-of select="@name" />
+												</td>
+												<td>
+													<xsl:value-of select="@description" />
+												</td>
+													<td>
+														<xsl:if test="@plugin">
+															<a>
+																<xsl:attribute name="href"><xsl:value-of
+																	select="concat('../plugins/', @plugin, '.html')" /></xsl:attribute>
+																<xsl:value-of select="@plugin" />
+															</a>
+														</xsl:if>
+													</td>
+												
+											</tr>
+										</xsl:for-each>
+									</tbody>
+								</table>
+							</td>
+						</tr>
+	
+					</xsl:if>
+				</xsl:for-each>
+			</tbody>
+		</table>
+
+		<xsl:if test="$phaseTargets/target[not(@phase or starts-with(@name, '-'))]">
+			<h2>Extra Targets</h2>
+			<p>
+				This type defines some extra Ant targets not attached to any <a href="../phases.html">build phase</a> :
+			</p>
+			<table class="sortable" id="type-phases">
+				<thead>
+					<tr class="header-row">
+						<th>Target</th>
+						<th class="unsortable">Description</th>
+						<th>From Plugin</th>
+					</tr>
+				</thead>
+				<tbody>
+					<xsl:for-each
+						select="$phaseTargets/target[not(@phase or starts-with(@name, '-'))]">
+						<tr>
+							<td class="target-name">
+								<xsl:value-of select="@name" />
+							</td>
+							<td>
+								<xsl:value-of select="@description" />
+							</td>
+							<xsl:if test="@plugin">
+								<td>
+									<a>
+										<xsl:attribute name="href"><xsl:value-of
+											select="concat('../plugins/', @plugin, '.html')" /></xsl:attribute>
+										<xsl:value-of select="@plugin" />
+									</a>
+								</td>
+							</xsl:if>
+						</tr>
+					</xsl:for-each>
+				</tbody>
+			</table>
+		</xsl:if>
+	</xsl:template>
+
+	<!--
+		for the current module, output one 'target' element for each target in
+		that module, recursively adding targets for imported plugins. The
+		optional parameter 'as' is prepended to the name of each target.
+	-->
+	<xsl:template name="add-plugin-targets">
+		<xsl:param name="as" />
+		<xsl:for-each
+			select="easyant/imports/import[@organisation=$pluginOrganisation]">
+			<xsl:variable name="pluginName" select="@name" />
+			<xsl:variable name="prefix" select="concat($as, @as)" />
+			<xsl:for-each select="easyant/phases/phase">
+				<phase>
+					<xsl:attribute name="name"><xsl:value-of
+						select="@name" /></xsl:attribute>
+					<xsl:attribute name="description"><xsl:value-of
+						select="@description" /></xsl:attribute>
+				</phase>
+			</xsl:for-each>
+			<xsl:for-each select="easyant/targets/target">
+				<target>
+					<xsl:attribute name="name"><xsl:value-of
+						select="concat($prefix, @name)" /></xsl:attribute>
+					<xsl:attribute name="plugin"><xsl:value-of
+						select="$pluginName" /></xsl:attribute>
+					<xsl:for-each select="@*[name() != 'name']">
+						<xsl:copy-of select="." />
+					</xsl:for-each>
+				</target>
+			</xsl:for-each>
+			<xsl:call-template name="add-plugin-targets">
+				<xsl:with-param name="as" select="$prefix" />
+			</xsl:call-template>
+		</xsl:for-each>
+	</xsl:template>
+	
+	<xsl:template match="text()"/>
+
+</xsl:stylesheet>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-buildtype.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-buildtype.xsl
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-buildtype.xsl
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-plugin.xsl
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-plugin.xsl?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-plugin.xsl (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-plugin.xsl Thu Feb 17 17:01:07 2011
@@ -0,0 +1,275 @@
+<?xml version="1.0"?>
+
+	<!--
+		Generate xooki Plugin documentation from a ea:repreport xml file.
+	-->
+<xsl:stylesheet version="1.0"
+	xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ea="antlib:org.apache.easyant">
+
+	<!--
+		module organisation, provided from eadoc configuration parameters
+	-->
+	<xsl:param name="pluginOrganisation">org.apache.easyant.plugins</xsl:param>
+
+	<!--
+		xooki TOC level for the output HTML document. Default assumes TOC
+		structure like Documentation > Reference > Plugins (level 2)
+	-->
+	<xsl:param name="tocLevel">2</xsl:param>
+
+	<xsl:output method="html" indent="yes" omit-xml-declaration="yes"
+		doctype-public="-//W3C//DTD HTML 4.01//EN" doctype-system="http://www.w3.org/TR/html4/strict.dtd" />
+
+	<!--
+		TODO: this model breaks if there is more than one revision element per
+		module.
+	-->
+	
+	<xsl:template match="/ivy-report/dependencies/module[1]/revision">
+		<xsl:variable name="pluginName" select="../@name" />
+		<xsl:variable name="pluginOrganisation" select="../@organisation"/>
+		<xsl:variable name="moduleVersion" select="@name" />
+		<xsl:variable name="moduleDescription" select="description" />
+		<xsl:comment>
+			Licensed to the Apache Software Foundation (ASF) under one
+			or more contributor license agreements. See the NOTICE file
+			distributed with this work for additional information
+			regarding copyright ownership. The ASF licenses this file
+			to you under the Apache License, Version 2.0 (the
+			"License"); you may not use this file except in compliance
+			with the License. You may obtain a copy of the License at
+
+			http://www.apache.org/licenses/LICENSE-2.0
+
+			Unless required by applicable law or agreed to in writing,
+			software distributed under the License is distributed on an
+			"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+			KIND, either express or implied. See the License for the
+			specific language governing permissions and limitations
+			under the License.
+		</xsl:comment>
+		<xsl:text>
+		</xsl:text>
+		<xsl:comment>
+			<xsl:value-of select="$pluginName" />
+			documentation autogenerated by EADoc
+		</xsl:comment>
+		<xsl:text>
+		</xsl:text>
+		<html>
+			<head>
+				<title>
+					EasyAnt Plugin <xsl:value-of select="$pluginName" /><xsl:text> </xsl:text><xsl:value-of select="concat('v', $moduleVersion)" />
+				</title>
+				<script type="text/javascript">
+					var xookiConfig = {level:<xsl:value-of select="$tocLevel" />};
+				</script>
+				<script type="text/javascript" src="../../xooki/xooki.js">
+					<xsl:text></xsl:text>
+				</script>
+			</head>
+			<body>
+				<textarea id="xooki-source">
+
+					<xsl:call-template name="outputHeader">
+						<xsl:with-param name="pluginName" select="$pluginName" />
+						<xsl:with-param name="pluginVersion" select="$moduleVersion" />
+					</xsl:call-template>
+
+					<xsl:if test="$moduleDescription">
+						<h2>Overview</h2>
+						<p>
+							<xsl:copy-of select="$moduleDescription"/> 
+						</p>
+					</xsl:if>
+
+					<div id="sample">
+						<h2>Example</h2>
+						You can use this plugin by adding the following code in your module.ivy (or module.ant) file
+						<code type="xml">
+							<ea:plugin>
+								<xsl:attribute name="organisation">
+									<xsl:value-of select="$pluginOrganisation"/>
+								</xsl:attribute>
+								<xsl:attribute name="module">
+									<xsl:value-of select="$pluginName"/>
+								</xsl:attribute>
+								<xsl:attribute name="rev">
+									<xsl:value-of select="$moduleVersion"/>
+								</xsl:attribute>
+								<xsl:attribute name="as">
+									<xsl:value-of select="$pluginName"/>
+								</xsl:attribute>
+							</ea:plugin>
+						</code>
+						<div id="note">
+							Note: By default targets provided by a plugin are prefixed by the plugin name (<xsl:value-of select="$pluginOrganisation"/>#<xsl:value-of select="$pluginName"/>).
+							Most of the time the plugin name is quite long so easyant allows you to define an alias for the project names. This alias can be used in place of the complete project name. 
+							You can define an alias for a plugin using 'as' attribute. 
+						</div>
+						<xsl:if test="$pluginOrganisation='org.apache.easyant.plugins'">
+							<div id="note">Note: The organisation argument in <b>ea:plugin</b> tag is optional. If not specified easyant will use the default one (org.apache.easyant.plugins).</div>					
+							Shorter form : 
+							<code type="xml">
+								<ea:build>
+									<xsl:attribute name="module">
+										<xsl:value-of select="$pluginName"/>
+									</xsl:attribute>
+									<xsl:attribute name="rev">
+										<xsl:value-of select="$moduleVersion"/>
+									</xsl:attribute>
+									<xsl:attribute name="as">
+										<xsl:value-of select="$pluginName"/>
+									</xsl:attribute>
+								</ea:build>
+							</code>
+						</xsl:if>
+					</div>
+					
+					<xsl:call-template name="outputBuildPhases" />
+					<xsl:call-template name="outputParameterTable" />
+				</textarea>
+				<script type="text/javascript">xooki.postProcess();</script>
+			</body>
+		</html>
+
+	</xsl:template>
+
+	<!-- Output plugin name and generate links to extended plugins -->
+	<xsl:template name="outputHeader">
+		<xsl:param name="pluginName" />
+		<xsl:param name="pluginVersion" />
+		<h1>
+			Plugin <xsl:value-of select="$pluginName" /><xsl:text> </xsl:text><xsl:value-of select="concat('v', $pluginVersion)" />
+		</h1>
+		<xsl:if test="easyant/imports/import[@organisation = $pluginOrganisation]">
+			<div class="parent-plugins">
+				extends
+				<xsl:for-each
+					select="easyant/imports/import[@organisation = $pluginOrganisation]">
+					<xsl:variable name="parentName" select="@name" />
+					<xsl:element name="a">
+						<xsl:attribute name="href"><xsl:value-of
+							select="concat($parentName, '.html')" /></xsl:attribute>
+						<xsl:value-of select="$parentName" />
+					</xsl:element>
+				</xsl:for-each>
+			</div>
+		</xsl:if>
+		<hr />
+	</xsl:template>
+
+	<!--
+		Generate an HTML table summarizing parameters used by the plugin
+	-->
+	<xsl:template name="outputParameterTable">
+		<xsl:if test="easyant/properties/property">
+			<h2>Parameters</h2>
+			<p>The following property values can be changed to tune the behavior of this plugin.
+				Required parameters must be defined upon import, or the build will fail.</p>
+			<table class="sortable" id="plugin-parameters">
+				<thead>
+					<tr  class="header-row">
+						<th>Parameter</th>
+						<th>Required?</th>
+						<th class="unsortable">Description</th>
+					</tr>
+				</thead>
+				<tbody>
+					<xsl:for-each select="easyant/properties/property">
+						<tr>
+							<td>
+								<xsl:value-of select="@name" />
+							</td>
+							<td>
+								<xsl:choose>
+									<xsl:when test="@required = 'true'">Yes</xsl:when>
+									<xsl:otherwise>No</xsl:otherwise>
+								</xsl:choose>
+							</td>
+							<td>
+								<xsl:if test="@description">
+									<xsl:value-of select="@description" /><br/>
+								</xsl:if>
+								<xsl:if test="@default">
+									<span class="bold">Default value: </span><span class="defaultValue"><xsl:value-of select="@default" /></span>
+								</xsl:if>
+							</td>
+						</tr>
+					</xsl:for-each>
+				</tbody>
+			</table>
+		</xsl:if>
+	</xsl:template>
+
+	<!--
+		Generate a list describing what the plugin does during each build
+		phase
+	-->
+	<xsl:template name="outputBuildPhases">
+		<xsl:variable name="targets" select="easyant/targets" />
+
+		<xsl:if test="easyant/phases/phase or $targets/target[@phase]">
+			<xsl:if test="easyant/phases/phase">
+				<h2>Build Phases</h2>
+			
+				<p>
+					This plugin defines the following <a href="../phases.html">new build phases</a> :
+				</p>
+				<table class="sortable" id="plugin-phases">
+					<thead>
+						<tr class="header-row">
+							<td>Phase</td>
+							<td class="unsortable">Description</td>
+						</tr>
+					</thead>
+					<tbody>
+						<xsl:for-each select="easyant/phases/phase">
+							<tr>
+								<td>
+									<xsl:value-of select="@name" />
+								</td>
+								<td>
+									<xsl:value-of select="@description" />
+								</td>
+							</tr>
+						</xsl:for-each>
+					</tbody>
+				</table>
+			</xsl:if>
+
+			<xsl:if test="$targets/target">
+				<h2>Targets</h2>
+				<p>This plugin contains the following targets:</p>
+				<table class="sortable" id="plugin-targets">
+					<thead>
+						<tr  class="header-row">
+							<th>Target</th>
+							<th class="unsortable">Description</th>
+							<th>Phase</th>
+						</tr>
+					</thead>
+					<tbody>
+						<xsl:for-each select="$targets/target">
+							<tr class="target-row">
+								<td class="target-name">
+									<xsl:value-of select="@name" />
+								</td>
+								<td>
+									<xsl:value-of select="@description" />
+								</td>
+								<td>
+									<xsl:value-of select="@phase" />
+								</td>
+							</tr>
+						</xsl:for-each>
+					</tbody>
+				</table>
+				<p>
+					Some targets are bound to existing <a href="../phases.html">build phase(s)</a>.
+				</p>
+			</xsl:if>
+		</xsl:if>
+	</xsl:template>
+	<xsl:template match="text()"/>
+</xsl:stylesheet>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-plugin.xsl
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-plugin.xsl
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc-plugin.xsl
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ant?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ant (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ant Thu Feb 17 17:01:07 2011
@@ -0,0 +1,80 @@
+<?xml version="1.0"?>
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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="org.apache.easyant.plugins#eadoc"
+	xmlns:ea="antlib:org.apache.easyant"
+	xmlns:ivy="antlib:org.apache.ivy.ant"
+	xmlns:ac="antlib:net.sf.antcontrib">
+	
+	<ea:core-version requiredrevision="[0.8,+]" />
+	
+	<target name=":init" description="Read and verify property configuration, load required task libraries" phase="validate">
+		<ea:parameter phase="validate" />
+		<ea:parameter phase="documentation" />
+
+		<ea:parameter property="eadoc.repository.name"
+			description="name of the repository to document" default="local"/>
+		<ea:parameter property="target.documentation.dir" default="${target}/documentation" 
+			description="directory where the documentation will be generated to" />
+		<ea:parameter property="eadoc.documentation.dir"
+			description="target directory for generated documentation" default="${target.documentation.dir}"/>
+		
+		<ea:parameter property="eadoc.module.org" 
+			description="org name for easyant modules" default="*" />
+		<ea:parameter property="eadoc.module.includes"
+			description="name pattern of modules to document" default="*"/>
+	
+		<ea:parameter property="eadoc.module.types"
+			description="List of module types to be documented" default="plugin,buildtype"/>
+		
+	</target>
+
+	<target name=":generate"
+			description="generate documentation for all EasyAnt plugins in the target repository" 
+			depends="validate" phase="process-documentation-resources">
+	
+		<!-- generate xooki TOC for each module type -->
+		<ac:for list="${eadoc.module.types}" param="current.type">
+			<sequential>
+                <echo>Generating @{current.type} docs</echo>
+
+                <ac:var name="current.menu" value="@{current.type}s"/>
+                <ac:var name="current.output.dir" value="${eadoc.documentation.dir}/ref/${current.menu}"/>
+                <ac:var name="current.toc" value="${current.output.dir}/toc.json"/>
+
+                <ea:startmenu context="${current.menu}" file="${current.toc}"/>
+
+                <ea:repreport organisation="org.apache.easyant.@{current.type}s"
+                    module="*" toDir="${current.output.dir}"
+                    xslfile="${org.apache.easyant.plugins#eadoc.eadoc-@{current.type}.xsl.file}">
+
+                    <menugenerator context="${current.menu}"/>
+
+                </ea:repreport>
+
+                <ea:endmenu context="${current.menu}"/>
+
+			</sequential>
+		</ac:for>
+		
+	</target>
+	
+	<target name="doit" depends=":generate" />
+	
+</project>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ant
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ant
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ant
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ivy?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ivy (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ivy Thu Feb 17 17:01:07 2011
@@ -0,0 +1,37 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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.  
+-->
+<ivy-module version="2.0"> 
+	<info organisation="org.apache.easyant.plugins"
+	       module="eadoc"
+	       status="milestone"
+	       revision="0.1">
+	       <description>
+	       EADoc generates <a href="http://xooki.sourceforge.net/">xooki</a> 
+	       documentation for EasyAnt modules (plugins and buildtypes).  
+	       The description for each module is culled from that module's Ivy descriptor.  
+	       Information about the module's phases and parameters is taken from the module's 
+	       Ant script.
+	       </description>
+	</info>
+	<publications>
+		<artifact type="ant" />
+		<artifact name="eadoc-plugin" type="xsl" />
+		<artifact name="eadoc-buildtype" type="xsl" />
+	</publications>
+</ivy-module>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ivy
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ivy
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/eadoc/0.1/eadoc.ivy
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ant?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ant (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ant Thu Feb 17 17:01:07 2011
@@ -0,0 +1,44 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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="org.apache.easyant.plugins#easyant-plugin-publication"
+	xmlns:ivy="antlib:org.apache.ivy.ant"
+	xmlns:ac="antlib:net.sf.antcontrib"
+	xmlns:ea="antlib:org.apache.easyant">
+	
+	<ea:core-version requiredrevision="[0.8,+]" />
+	
+	<ea:import mrid="org.apache.easyant.plugins#ivy-publication;0.1"/>
+	
+	<target name=":init" phase="validate">
+		<ea:parameter phase="validate" />
+		<ea:parameter phase="test" />
+		<ea:parameter property="publish.plugin.before.test"
+				description="defines if easyant should publish the plugin before running test"/>
+	</target>
+		
+	<!--
+		publish in build scoped repository before test 
+	-->
+	<target name="-before-test" depends="validate" phase="test" if="publish.plugin.before.test">
+		<ea:configure-build-scoped-repository buildScopedRepositoryName="build" settingsRef="easyant.ivy.instance"/>
+		<ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]" resolver="build"  forcedeliver="true" overwrite="true" settingsRef="easyant.ivy.instance" />
+	</target>
+
+	<target name="doit" depends=":init" />
+</project>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ant
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ant
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ant
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ivy?rev=1071697&view=auto
==============================================================================
--- incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ivy (added)
+++ incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ivy Thu Feb 17 17:01:07 2011
@@ -0,0 +1,29 @@
+<!--
+	Copyright 2008-2010 the EasyAnt project
+	
+	See the NOTICE file distributed with this work for additional information 
+	regarding copyright ownership.
+	
+	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.  
+-->
+<ivy-module version="2.0"> 
+	<info organisation="org.apache.easyant.plugins"
+	       module="easyant-plugin-publication"
+	       status="milestone"
+	       revision="0.1">
+	       <description>This module provides publication features for easyant plugins.</description>
+	</info>
+	<publications>
+		<artifact type="ant" />
+	</publications>
+</ivy-module>

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ivy
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ivy
------------------------------------------------------------------------------
    svn:keywords = Date Revision Author HeadURL Id

Propchange: incubator/easyant/core/trunk/src/main/resources/org/apache/easyant/core/repository/modules/org.apache.easyant.plugins/easyant-plugin-publication/0.1/easyant-plugin-publication.ivy
------------------------------------------------------------------------------
    svn:mime-type = text/xml