You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by dd...@apache.org on 2005/11/23 15:20:15 UTC
svn commit: r348447 - in /portals/pluto/trunk: ./ maven-pluto-plugin/
maven-pluto-plugin/src/main/java/org/apache/pluto/maven/ pluto-ant-tasks/
pluto-ant-tasks/src/ pluto-ant-tasks/src/main/
pluto-ant-tasks/src/main/java/ pluto-ant-tasks/src/main/java/...
Author: ddewolf
Date: Wed Nov 23 06:20:02 2005
New Revision: 348447
URL: http://svn.apache.org/viewcvs?rev=348447&view=rev
Log:
Adding Pluto Ant Tasks for non-maven developers to assemble, deploy, and publish
Added:
portals/pluto/trunk/pluto-ant-tasks/
portals/pluto/trunk/pluto-ant-tasks/pom.xml
portals/pluto/trunk/pluto-ant-tasks/src/
portals/pluto/trunk/pluto-ant-tasks/src/main/
portals/pluto/trunk/pluto-ant-tasks/src/main/java/
portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/
portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/
portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/pluto/
portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/pluto/ant/
portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/pluto/ant/AssembleTask.java
portals/pluto/trunk/pluto-ant-tasks/src/site/
portals/pluto/trunk/pluto-ant-tasks/src/site/apt/
portals/pluto/trunk/pluto-ant-tasks/src/site/apt/getting-started.apt
portals/pluto/trunk/pluto-ant-tasks/src/site/site.xml
Modified:
portals/pluto/trunk/maven-pluto-plugin/pom.xml
portals/pluto/trunk/maven-pluto-plugin/src/main/java/org/apache/pluto/maven/AssembleMojo.java
portals/pluto/trunk/pluto-container/src/site/apt/getting-started.apt
portals/pluto/trunk/pluto-portal/pom.xml
portals/pluto/trunk/pluto-site/pom.xml
portals/pluto/trunk/pluto-util/pom.xml
portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/Assembler.java
portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AssemblerFactory.java
portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/cli/AssemblerCLI.java
portals/pluto/trunk/pom.xml
Modified: portals/pluto/trunk/maven-pluto-plugin/pom.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/maven-pluto-plugin/pom.xml?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/maven-pluto-plugin/pom.xml (original)
+++ portals/pluto/trunk/maven-pluto-plugin/pom.xml Wed Nov 23 06:20:02 2005
@@ -18,7 +18,7 @@
<dependency>
<groupId>org.apache.pluto</groupId>
<artifactId>pluto-util</artifactId>
- <version>1.1-SNAPSHOT</version>
+ <version>${pom.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
Modified: portals/pluto/trunk/maven-pluto-plugin/src/main/java/org/apache/pluto/maven/AssembleMojo.java
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/maven-pluto-plugin/src/main/java/org/apache/pluto/maven/AssembleMojo.java?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/maven-pluto-plugin/src/main/java/org/apache/pluto/maven/AssembleMojo.java (original)
+++ portals/pluto/trunk/maven-pluto-plugin/src/main/java/org/apache/pluto/maven/AssembleMojo.java Wed Nov 23 06:20:02 2005
@@ -18,6 +18,7 @@
import org.apache.pluto.util.assemble.Assembler;
import org.apache.pluto.util.assemble.AssemblerConfig;
+import org.apache.pluto.util.assemble.AssemblerFactory;
import org.apache.pluto.util.assemble.file.FileAssembler;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.plugin.logging.Log;
@@ -62,12 +63,12 @@
log.info("Reading portlet.xml from: "+portletXml.getAbsolutePath());
log.info("Writing web.xml to: "+webXmlDestination.getAbsolutePath());
}
- Assembler assembler = createAssembler();
- assembler.assemble(createAssemblerConfig());
- }
+ AssemblerConfig config = createAssemblerConfig();
- private Assembler createAssembler() throws IOException {
- return new FileAssembler();
+ Assembler assembler =
+ AssemblerFactory.getFactory().createAssembler(config);
+
+ assembler.assemble(config);
}
private AssemblerConfig createAssemblerConfig() {
Added: portals/pluto/trunk/pluto-ant-tasks/pom.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-ant-tasks/pom.xml?rev=348447&view=auto
==============================================================================
--- portals/pluto/trunk/pluto-ant-tasks/pom.xml (added)
+++ portals/pluto/trunk/pluto-ant-tasks/pom.xml Wed Nov 23 06:20:02 2005
@@ -0,0 +1,42 @@
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.apache.pluto.ant</groupId>
+ <artifactId>pluto-ant-tasks</artifactId>
+ <packaging>jar</packaging>
+ <name>Pluto Ant Tasks</name>
+ <description>
+ The Pluto Ant Tasks are used to assemble, deploy, and publish
+ portlets to the Pluto Portal Driver.
+ </description>
+
+ <parent>
+ <groupId>org.apache.pluto</groupId>
+ <artifactId>pluto</artifactId>
+ <version>1.1-SNAPSHOT</version>
+ </parent>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.pluto</groupId>
+ <artifactId>pluto-util</artifactId>
+ <version>${pom.version}</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ <version>1.6.5</version>
+ <scope>compile</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
+ <resources>
+
+ </resources>
+ </build>
+</project>
+
Added: portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/pluto/ant/AssembleTask.java
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/pluto/ant/AssembleTask.java?rev=348447&view=auto
==============================================================================
--- portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/pluto/ant/AssembleTask.java (added)
+++ portals/pluto/trunk/pluto-ant-tasks/src/main/java/org/apache/pluto/ant/AssembleTask.java Wed Nov 23 06:20:02 2005
@@ -0,0 +1,115 @@
+/*
+ * Copyright 2003,2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.pluto.ant;
+
+import org.apache.tools.ant.Task;
+import org.apache.tools.ant.BuildException;
+import org.apache.pluto.util.UtilityException;
+import org.apache.pluto.util.assemble.Assembler;
+import org.apache.pluto.util.assemble.AssemblerFactory;
+import org.apache.pluto.util.assemble.AssemblerConfig;
+
+import java.io.File;
+
+/**
+ * TODO JavaDoc
+ *
+ * @author <a href="mailto:ddewolf@apache.org">David H. DeWolf</a>:
+ * @version 1.0
+ * @since Nov 23, 2005
+ */
+public class AssembleTask extends Task {
+
+ private File portletxml;
+
+ private File webxml;
+
+ private File destfile;
+
+ private File webapp;
+
+ public File getPortletxml() {
+ return portletxml;
+ }
+
+ public void setPortletxml(File portletxml) {
+ this.portletxml = portletxml;
+ }
+
+ public File getWebxml() {
+ return webxml;
+ }
+
+ public void setWebxml(File webxml) {
+ this.webxml = webxml;
+ }
+
+ public File getDestfile() {
+ if(destfile != null)
+ return destfile;
+ return webxml;
+ }
+
+ public void setDestfile(File destfile) {
+ this.destfile = destfile;
+ }
+
+ public File getWebapp() {
+ return webapp;
+ }
+
+ public void setWebapp(File webapp) {
+ this.webapp = webapp;
+ }
+
+ public void execute() throws BuildException {
+
+ validateArgs();
+
+ try {
+ AssemblerConfig config = new AssemblerConfig();
+ config.setPortletDescriptor(getPortletxml());
+ config.setWebappDescriptor(getWebxml());
+ config.setDestination(getDestfile());
+
+ Assembler assembler =
+ AssemblerFactory.getFactory().createAssembler(config);
+
+ assembler.assemble(config);
+ }
+
+ catch(UtilityException ue) {
+ throw new BuildException(ue);
+ }
+ }
+
+ private void validateArgs() throws BuildException {
+ if(webapp != null) {
+ if(!webapp.exists()) {
+ throw new BuildException("webapp "+webapp.getAbsolutePath()+ " does not exist");
+ }
+ return;
+ }
+
+ if(portletxml == null || !portletxml.exists()) {
+ throw new BuildException("portletxml "+portletxml+" does not exist");
+ }
+
+ if(webxml == null || !webxml.exists()) {
+ throw new BuildException("webxml "+webxml + " does not exist");
+ }
+ }
+}
Added: portals/pluto/trunk/pluto-ant-tasks/src/site/apt/getting-started.apt
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-ant-tasks/src/site/apt/getting-started.apt?rev=348447&view=auto
==============================================================================
--- portals/pluto/trunk/pluto-ant-tasks/src/site/apt/getting-started.apt (added)
+++ portals/pluto/trunk/pluto-ant-tasks/src/site/apt/getting-started.apt Wed Nov 23 06:20:02 2005
@@ -0,0 +1,44 @@
+
+ ------
+ Getting Started
+ ------
+ David H. DeWolf
+ ------
+ 23 Nov 2005
+ ------
+
+Getting Started
+
+ The Pluto Ant Tasks have been created to assist those not using
+ maven with the assembly, deployment, and publishing of Maven.
+ A usage example is shown below:
+
+---------------
+
+ <path id="classes">
+ <!--
+ Pluto Ant Tasks depend upon the following libraries:
+ * pluto-ant-tasks-${version}.jar
+ * pluto-util-${version}.jar
+ * pluto-descriptor-api-${version}.jar
+ * pluto-descriptor-util-${version}.jar
+ * commons-logging-1.0.4.jar
+ * castor-0.9.6
+ -->
+ <fileset dir="/path/to/pluto-libraries" includes="**/*.jar"/>
+ <fileset dir="/path/to/commons-logging" includes="**/*.jar"/>
+ <fileset dir="/path/to/castor" includes="**/*.jar"/>
+ </path>
+
+ <typedef name="passemble" classname="org.apache.pluto.ant.AssembleTask"
+ classpathref="classes"/>
+
+ <target name="passemble">
+ <passemble
+ webxml="src/config/web.xml"
+ portletxml="src/config/portlet.xml"
+ destfile="src/webapp/WEB-INF/web.xml"/>
+ </target>
+
+---------------
+
Added: portals/pluto/trunk/pluto-ant-tasks/src/site/site.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-ant-tasks/src/site/site.xml?rev=348447&view=auto
==============================================================================
--- portals/pluto/trunk/pluto-ant-tasks/src/site/site.xml (added)
+++ portals/pluto/trunk/pluto-ant-tasks/src/site/site.xml Wed Nov 23 06:20:02 2005
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="Maven">
+ <bannerLeft>
+ <name>Pluto</name>
+ <src>http://portals.apache.org/pluto/images/pluto.png</src>
+ <href>http://portals.apache.org/pluto</href>
+ </bannerLeft>
+ <bannerRight>
+ <src>http://portals.apache.org/pluto/images/pluto11.png</src>
+ </bannerRight>
+ <body>
+ <links>
+ <item name="Pluto Home" href="http://portals.apache.org/pluto"/>
+ <item name="JSR 168" href="http://jcp.org/en/jsr/detail?id=168"/>
+ <item name="Chinese Translation" href="http://heavyz.sourceforge.net/pluto_zh/pluto-container"/>
+ </links>
+
+ <menu name="Pluto Ant Tasks">
+ <item name="Getting Started" href="/getting-started.html"/>
+ </menu>
+
+ ${reports}
+ </body>
+</project>
Modified: portals/pluto/trunk/pluto-container/src/site/apt/getting-started.apt
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-container/src/site/apt/getting-started.apt?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-container/src/site/apt/getting-started.apt (original)
+++ portals/pluto/trunk/pluto-container/src/site/apt/getting-started.apt Wed Nov 23 06:20:02 2005
@@ -17,3 +17,5 @@
If you are looking for information on how to embed pluto in your
portal or web application, please see the {{{embed.html}embedding pluto}}
documentation for Pluto 1.1.
+
+
Modified: portals/pluto/trunk/pluto-portal/pom.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-portal/pom.xml?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-portal/pom.xml (original)
+++ portals/pluto/trunk/pluto-portal/pom.xml Wed Nov 23 06:20:02 2005
@@ -3,7 +3,7 @@
<groupId>org.apache.pluto</groupId>
<artifactId>pluto-portal</artifactId>
<packaging>war</packaging>
- <name>Pluto Portal Driver</name>
+ <name>Pluto Portal</name>
<url>http://portals.apache.org/pluto</url>
<parent>
<groupId>org.apache.pluto</groupId>
Modified: portals/pluto/trunk/pluto-site/pom.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-site/pom.xml?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-site/pom.xml (original)
+++ portals/pluto/trunk/pluto-site/pom.xml Wed Nov 23 06:20:02 2005
@@ -7,7 +7,7 @@
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>pluto-site</artifactId>
- <name>Pluto</name>
+ <name>Pluto Website Documentation</name>
<url>http://portals.apache.org/pluto/</url>
<inceptionYear>2001</inceptionYear>
<distributionManagement>
Modified: portals/pluto/trunk/pluto-util/pom.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-util/pom.xml?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-util/pom.xml (original)
+++ portals/pluto/trunk/pluto-util/pom.xml Wed Nov 23 06:20:02 2005
@@ -7,7 +7,7 @@
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>pluto-util</artifactId>
- <name>Pluto</name>
+ <name>Pluto Utilities</name>
<url>http://portals.apache.org/pluto/pluto-1.1</url>
<inceptionYear>2001</inceptionYear>
Modified: portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/Assembler.java
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/Assembler.java?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/Assembler.java (original)
+++ portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/Assembler.java Wed Nov 23 06:20:02 2005
@@ -43,7 +43,7 @@
* with the new application.
*
*/
- void assemble(AssemblerConfig config) throws IOException, UtilityException;
+ void assemble(AssemblerConfig config) throws UtilityException;
}
Modified: portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AssemblerFactory.java
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AssemblerFactory.java?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AssemblerFactory.java (original)
+++ portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/assemble/AssemblerFactory.java Wed Nov 23 06:20:02 2005
@@ -40,7 +40,7 @@
return factory;
}
- public Assembler createAssembler(File webapp, File destination) {
+ public Assembler createAssembler(AssemblerConfig config) {
return new FileAssembler();
}
}
Modified: portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/cli/AssemblerCLI.java
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/cli/AssemblerCLI.java?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/cli/AssemblerCLI.java (original)
+++ portals/pluto/trunk/pluto-util/src/main/java/org/apache/pluto/util/cli/AssemblerCLI.java Wed Nov 23 06:20:02 2005
@@ -87,10 +87,14 @@
File webXml = new File(args[0], Assembler.SERVLET_XML);
File portletXml = new File(args[0], Assembler.PORTLET_XML);
+ AssemblerConfig config = new AssemblerConfig();
+ config.setWebappDescriptor(webXml);
+ config.setPortletDescriptor(portletXml);
+ config.setDestination(webXml);
+
Assembler assembler = AssemblerFactory.getFactory()
- .createAssembler(webXml, portletXml);
+ .createAssembler(config);
- AssemblerConfig config = new AssemblerConfig();
config.setPortletDescriptor(portletXml);
config.setWebappDescriptor(webXml);
Modified: portals/pluto/trunk/pom.xml
URL: http://svn.apache.org/viewcvs/portals/pluto/trunk/pom.xml?rev=348447&r1=348446&r2=348447&view=diff
==============================================================================
--- portals/pluto/trunk/pom.xml (original)
+++ portals/pluto/trunk/pom.xml Wed Nov 23 06:20:02 2005
@@ -179,16 +179,21 @@
</organization>
<modules>
- <module>maven-pluto-plugin</module>
+ <!-- ==== Core ==== -->
<module>pluto-descriptor-api</module>
<module>pluto-descriptor-impl</module>
<module>pluto-container</module>
<module>pluto-taglib</module>
- <module>pluto-util</module>
+ <!-- === Portal === -->
<module>pluto-portal-driver</module>
<module>pluto-portal</module>
- <module>pluto-site</module>
<module>pluto-testsuite</module>
+ <!-- == Utilities = -->
+ <module>pluto-util</module>
+ <module>maven-pluto-plugin</module>
+ <module>pluto-ant-tasks</module>
+ <!-- ==== Misc ==== -->
+ <module>pluto-site</module>
</modules>
<distributionManagement>