jvanzyl 2002/07/24 17:28:22
Modified: src/plugins-build/reactor plugin.jelly
src/plugins-build/xdoc plugin.jelly
src/plugins-build/xdoc/src/java/org/apache/maven
BaseProjectTask.java DVSLBean.java
Log:
o making the reactor plugin actually useful. it is now used to build
the plugins, generate the test commons site, and build the commons.
o hacked the velocity beans to take a list of projects produced by the
reactor. i figured out how to decouple these from maven's internals
using some nifty jelly script but i would like to get another test
commons site and plexus site so i can live with this.
Revision Changes Path
1.4 +7 -24 jakarta-turbine-maven/src/plugins-build/reactor/plugin.jelly
Index: plugin.jelly
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/src/plugins-build/reactor/plugin.jelly,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- plugin.jelly 24 Jul 2002 04:20:45 -0000 1.3
+++ plugin.jelly 25 Jul 2002 00:28:21 -0000 1.4
@@ -24,31 +24,14 @@
<define:tag name="execute">
- <fileScanner var="projects">
- <fileset dir="${basedir}">
- <include name="${glob}"/>
- </fileset>
- </fileScanner>
+ <maven:maven
+ dir="${basedir}"
+ glob="${glob}"
+ goals="${goals}"
+ banner="${banner}"
+ ignoreFailures="${ignoreFailures}"
+ />
- <j:forEach var="project" items="${projects.iterator()}">
-
- <echo>
-+----------------------------------------
-| ${banner} ${project.parentFile.name}
-+----------------------------------------
- </echo>
-
- ${project}
- ${project.parentFile}
-
- <maven:maven
- dir="${project.parentFile}"
- descriptor="${project}"
- goals="${goals}"
- ignoreFailures="${ignoreFailures}"
- />
-
- </j:forEach>
</define:tag>
</define:taglib>
</project>
1.8 +34 -9 jakarta-turbine-maven/src/plugins-build/xdoc/plugin.jelly
Index: plugin.jelly
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/src/plugins-build/xdoc/plugin.jelly,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- plugin.jelly 21 Jul 2002 04:01:57 -0000 1.7
+++ plugin.jelly 25 Jul 2002 00:28:22 -0000 1.8
@@ -3,7 +3,7 @@
<project xmlns:j="jelly:core"
xmlns:log="jelly:log"
xmlns:define="jelly:define"
- xmlns:xdoc-pom="xdoc-pom"
+ xmlns:texen="texen"
xmlns:dvsl="dvsl">
<!-- ================================================================== -->
@@ -14,24 +14,49 @@
prereqs="xdoc:generate-from-pom, xdoc:transform"
description="Generate html project documentation xdoc sources"/>
- <goal
- name="xdoc:generate-from-pom"
- description="Generates xdocs for site based on project descriptor">
-
- <define:taglib uri="xdoc-pom">
+ <!-- ================================================================== -->
+ <!-- T E X E N T A G I N I T I A L I Z A T I O N -->
+ <!-- ================================================================== -->
+ <goal name="init-texen-tag">
+
+ <define:taglib uri="texen">
<define:jellybean
- name="xdoc-pom"
+ name="texen"
className="org.apache.maven.BaseProjectTask"
method="execute"
/>
+
+ <!-- ================================================================== -->
+ <!-- T E X E N T A G -->
+ <!-- ================================================================== -->
+
+ <define:tag name="generate">
+
+ <texen:texen
+ controlTemplate="${controlTemplate}"
+ outputDirectory="${outputDirectory}"
+ templatePath="${templatePath}"
+ outputFile="${outputFile}"
+ mavenProject="${mavenProject}"
+ reactorProjects="${reactorProjects}"
+ />
+
+ </define:tag>
+
</define:taglib>
+
+ </goal>
+
+ <goal
+ name="xdoc:generate-from-pom"
+ prereqs="init-texen-tag"
+ description="Generates xdocs for site based on project descriptor">
- <xdoc-pom:xdoc-pom
+ <texen:generate
controlTemplate="Control.vm"
outputDirectory="${maven.gen.docs}"
templatePath="${plugin.dir}/templates"
outputFile="xdocs.report"
- projectDescriptor="project.xml"
mavenProject="${pom}"
/>
1.5 +53 -25
jakarta-turbine-maven/src/plugins-build/xdoc/src/java/org/apache/maven/BaseProjectTask.java
Index: BaseProjectTask.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-maven/src/plugins-build/xdoc/src/java/org/apache/maven/BaseProjectTask.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- BaseProjectTask.java 23 Jul 2002 16:19:17 -0000 1.4
+++ BaseProjectTask.java 25 Jul 2002 00:28:22 -0000 1.5
@@ -55,9 +55,10 @@
*
* ====================================================================
*/
-
import java.io.File;
+import java.util.List;
+
import org.apache.maven.app.Maven;
import org.apache.maven.project.Project;
@@ -68,16 +69,14 @@
import org.apache.velocity.context.Context;
import org.apache.velocity.texen.ant.TexenTask;
-
/**
- * Used for generating xdoc formatted documenation from
- * the POM.
+ * Used for generating xdoc formatted documenation from the POM.
*
* @author <a href="[EMAIL PROTECTED]">Jason van Zyl</a>
* @version $Id$
*/
public class BaseProjectTask
- extends TexenTask
+ extends TexenTask
{
/**
* Project descriptor.
@@ -94,30 +93,55 @@
*/
private Project mavenProject;
+ /**
+ * Sets the mavenProject attribute of the BaseProjectTask object
+ */
public void setMavenProject(Project mavenProject)
{
this.mavenProject = mavenProject;
}
-
+
+ /**
+ * Gets the mavenProject attribute of the BaseProjectTask object
+ */
public Project getMavenProject()
{
return mavenProject;
- }
+ }
+
+ private List reactorProjects;
+
+ /**
+ * Sets the reactorProjects attribute of the BaseProjectTask object
+ */
+ public void setReactorProjects(List reactorProjects)
+ {
+ this.reactorProjects = reactorProjects;
+ }
- /**
- * [REQUIRED] Set the output directory. It will be
- * created if it doesn't exist.
- *
- * @task This shouldn't be required but it appears that
- * there are some problems with coercion under jdk 1.4
- */
- public void setOutputDirectory(String outputDirectory)
- {
- super.setOutputDirectory(new File(outputDirectory));
- }
+ /**
+ * Gets the reactorProjects attribute of the BaseProjectTask object
+ */
+ public List getReactorProjects()
+ {
+ return reactorProjects;
+ }
+
+ /**
+ * [REQUIRED] Set the output directory. It will be created if it doesn't
+ * exist.
+ *
+ * @task This shouldn't be required but it appears that there are some
+ * problems with coercion under jdk 1.4
+ */
+ public void setOutputDirectory(String outputDirectory)
+ {
+ super.setOutputDirectory(new File(outputDirectory));
+ }
/**
* Set the project descriptor file. This file must exist.
+ *
* @param projectDescriptor the project descriptor file
*/
public void setProjectDescriptor(File projectDescriptor)
@@ -125,13 +149,17 @@
this.projectDescriptor = projectDescriptor;
}
- public void setTemplatePath(String templatePath) throws Exception
+ /**
+ * Sets the templatePath attribute of the BaseProjectTask object
+ */
+ public void setTemplatePath(String templatePath)
+ throws Exception
{
- if ( getProject() == null )
+ if (getProject() == null)
{
- setProject( Maven.getInstance().getBaseAntProject() );
+ setProject(Maven.getInstance().getBaseAntProject());
}
- super.setTemplatePath( templatePath );
+ super.setTemplatePath(templatePath);
}
/**
@@ -147,9 +175,9 @@
try
{
- //mavenProject = MavenUtils.getProject(projectDescriptor);
context.put("project", mavenProject);
- context.put("escape", new Escape());
+ context.put("reactorProjects", reactorProjects);
+ context.put("escape", new Escape());
return context;
}
catch (Exception e)
1.3 +13 -0
jakarta-turbine-maven/src/plugins-build/xdoc/src/java/org/apache/maven/DVSLBean.java
Index: DVSLBean.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-maven/src/plugins-build/xdoc/src/java/org/apache/maven/DVSLBean.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- DVSLBean.java 22 Jul 2002 20:10:43 -0000 1.2
+++ DVSLBean.java 25 Jul 2002 00:28:22 -0000 1.3
@@ -59,6 +59,7 @@
import java.util.Vector;
import java.util.HashMap;
import java.util.Enumeration;
+import java.util.List;
import java.util.StringTokenizer;
import java.io.File;
@@ -201,6 +202,18 @@
this.mavenProject = mavenProject;
putAppValue("mavenProject", mavenProject);
}
+
+ private List reactorProjects;
+
+ public void setReactorProjects(List reactorProjects)
+ {
+ this.reactorProjects = reactorProjects;
+ }
+
+ public List getReactorProjects()
+ {
+ return reactorProjects;
+ }
/**
* Executes the task.
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>