You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by jd...@apache.org on 2006/09/04 02:28:24 UTC
svn commit: r439884 - in
/geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src:
main/java/org/apache/geronimo/mavenplugins/geronimo/ site/apt/
Author: jdillon
Date: Sun Sep 3 17:28:23 2006
New Revision: 439884
URL: http://svn.apache.org/viewvc?view=rev&rev=439884
Log:
Moved assembly config and helpers to InstallerMojoSupport
Modified:
geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/InstallerMojoSupport.java
geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/ServerMojoSupport.java
geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/site/apt/usage.apt
Modified: geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/InstallerMojoSupport.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/InstallerMojoSupport.java?view=diff&rev=439884&r1=439883&r2=439884
==============================================================================
--- geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/InstallerMojoSupport.java (original)
+++ geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/InstallerMojoSupport.java Sun Sep 3 17:28:23 2006
@@ -17,8 +17,17 @@
package org.apache.geronimo.mavenplugins.geronimo;
import java.io.File;
+import java.util.Map;
+import java.util.HashMap;
import org.apache.tools.ant.taskdefs.Expand;
+import org.apache.maven.project.MavenProject;
+import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.resolver.ArtifactResolver;
+import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.plugin.MojoFailureException;
import org.codehaus.plexus.util.FileUtils;
@@ -36,6 +45,179 @@
* @parameter expression="${refresh}" default-value="false"
*/
protected boolean refresh = false;
+
+ /**
+ * List of assembly artifact configurations. Artifacts need to point to ZIP archives.
+ *
+ * @parameter
+ * @required
+ */
+ protected AssemblyConfig[] assemblies = null;
+
+ /**
+ * Identifer of the assembly configuration to use.
+ *
+ * @parameter expression="${assemblyId}"
+ */
+ protected String assemblyId = null;
+
+ /**
+ * The default assemblyId to use when no assemblyId configured.
+ *
+ * @parameter
+ */
+ protected String defaultAssemblyId = null;
+
+ /**
+ * A file which points to a specific assembly ZIP archive.
+ * If this parameter is set, then it will be used instead of from the
+ * assemblies configuration.
+ *
+ * @parameter expression="${assemblyArchive}"
+ */
+ protected File assemblyArchive = null;
+
+ /**
+ * Directory to extract the assembly into.
+ *
+ * @parameter expression="${project.build.directory}"
+ * @required
+ */
+ protected File outputDirectory = null;
+
+ //
+ // MojoSupport Hooks
+ //
+
+ /**
+ * ???
+ *
+ * @component
+ * @required
+ * @readonly
+ */
+ protected ArtifactFactory artifactFactory = null;
+
+ protected ArtifactFactory getArtifactFactory() {
+ return artifactFactory;
+ }
+
+ /**
+ * ???
+ *
+ * @component
+ * @required
+ * @readonly
+ */
+ protected ArtifactResolver artifactResolver = null;
+
+ protected ArtifactResolver getArtifactResolver() {
+ return artifactResolver;
+ }
+
+ /**
+ * ???
+ *
+ * @parameter expression="${localRepository}"
+ * @readonly
+ * @required
+ */
+ protected ArtifactRepository artifactRepository = null;
+
+ protected ArtifactRepository getArtifactRepository() {
+ return artifactRepository;
+ }
+
+ /**
+ * The assembly archive to use when installing.
+ */
+ protected File installArchive;
+
+ /**
+ * The directory where the assembly has been installed to.
+ */
+ protected File installDir;
+
+ protected void init() throws MojoExecutionException, MojoFailureException {
+ super.init();
+
+ // Determine which archive and directory to use... either manual or from artifacts
+ if (assemblyArchive != null) {
+ log.debug("Using non-artifact based assembly archive: " + installArchive);
+
+ installArchive = assemblyArchive;
+
+ //
+ // FIXME: This probably will not work...
+ //
+
+ installDir = new File(outputDirectory, "assembly-archive");
+ }
+ else {
+ Artifact artifact = getAssemblyArtifact();
+
+ if (!"zip".equals(artifact.getType())) {
+ throw new MojoExecutionException("Assembly file does not look like a ZIP archive");
+ }
+
+ installArchive = artifact.getFile();
+ installDir = new File(outputDirectory, artifact.getArtifactId() + "-" + artifact.getVersion());
+ }
+ }
+
+ protected Artifact getAssemblyArtifact() throws MojoExecutionException {
+ assert assemblies != null;
+
+ AssemblyConfig config;
+
+ if (assemblies.length == 0) {
+ throw new MojoExecutionException("At least one assembly configuration must be specified");
+ }
+ else if (assemblies.length > 1 && assemblyId == null && defaultAssemblyId == null) {
+ throw new MojoExecutionException("Must specify assemblyId (or defaultAssemblyId) when more than on assembly configuration is given");
+ }
+ else if (assemblies.length == 1) {
+ config = assemblies[0];
+ }
+ else {
+ if (assemblyId == null) {
+ assemblyId = defaultAssemblyId;
+ }
+
+ log.debug("Searching for assembly config for id: " + assemblyId);
+
+ // Make sure there are no duplicate ids
+ Map idMap = new HashMap();
+
+ for (int i=0; i < assemblies.length; i++) {
+ String id = assemblies[i].getId();
+
+ if (id == null) {
+ throw new MojoExecutionException("Missing id for assembly configuration: " + assemblies[i]);
+ }
+
+ if (idMap.containsKey(id)) {
+ throw new MojoExecutionException("Duplicate assembly id: " + id);
+ }
+
+ idMap.put(id, assemblies[i]);
+ }
+
+ config = (AssemblyConfig) idMap.get(assemblyId);
+ if (config == null) {
+ throw new MojoExecutionException("Missing assembly configuration for id: " + assemblyId);
+ }
+ }
+
+ log.info("Using assembly configuration: " + config);
+ Artifact artifact = getArtifact(config);
+
+ if (artifact.getFile() == null) {
+ throw new MojoExecutionException("Assembly artifact does not have an attached file: " + artifact);
+ }
+
+ return artifact;
+ }
protected void doInstall() throws Exception {
// Check if there is a newer archive or missing marker to trigger assembly install
Modified: geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/ServerMojoSupport.java
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/ServerMojoSupport.java?view=diff&rev=439884&r1=439883&r2=439884
==============================================================================
--- geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/ServerMojoSupport.java (original)
+++ geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/main/java/org/apache/geronimo/mavenplugins/geronimo/ServerMojoSupport.java Sun Sep 3 17:28:23 2006
@@ -16,22 +16,11 @@
package org.apache.geronimo.mavenplugins.geronimo;
-import org.apache.maven.project.MavenProject;
-import org.apache.maven.artifact.resolver.ArtifactResolver;
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.factory.ArtifactFactory;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.plugin.MojoFailureException;
-
-import java.util.Map;
-import java.util.HashMap;
-import java.io.File;
-
import org.apache.geronimo.genesis.AntMojoSupport;
+import org.apache.maven.project.MavenProject;
/**
- * Support for Geronimo {start, stop} server mojos.
+ * Support for Geronimo server mojos.
*
* @version $Rev$ $Date$
*/
@@ -60,49 +49,6 @@
protected String password = null;
//
- // TODO: Move assembly bits to InstallerMojoSupport
- //
-
- /**
- * List of assembly artifact configurations. Artifacts need to point to ZIP archives.
- *
- * @parameter
- * @required
- */
- protected AssemblyConfig[] assemblies = null;
-
- /**
- * Identifer of the assembly configuration to use.
- *
- * @parameter expression="${assemblyId}"
- */
- protected String assemblyId = null;
-
- /**
- * The default assemblyId to use when no assemblyId configured.
- *
- * @parameter
- */
- protected String defaultAssemblyId = null;
-
- /**
- * A file which points to a specific assembly ZIP archive.
- * If this parameter is set, then it will be used instead of from the
- * assemblies configuration.
- *
- * @parameter expression="${assemblyArchive}"
- */
- protected File assemblyArchive = null;
-
- /**
- * Directory to extract the assembly into.
- *
- * @parameter expression="${project.build.directory}"
- * @required
- */
- protected File outputDirectory = null;
-
- //
// MojoSupport Hooks
//
@@ -117,135 +63,5 @@
protected MavenProject getProject() {
return project;
- }
-
- /**
- * ???
- *
- * @component
- * @required
- * @readonly
- */
- protected ArtifactFactory artifactFactory = null;
-
- protected ArtifactFactory getArtifactFactory() {
- return artifactFactory;
- }
-
- /**
- * ???
- *
- * @component
- * @required
- * @readonly
- */
- protected ArtifactResolver artifactResolver = null;
-
- protected ArtifactResolver getArtifactResolver() {
- return artifactResolver;
- }
-
- /**
- * ???
- *
- * @parameter expression="${localRepository}"
- * @readonly
- * @required
- */
- protected ArtifactRepository artifactRepository = null;
-
- protected ArtifactRepository getArtifactRepository() {
- return artifactRepository;
- }
-
- /**
- * The assembly archive to use when installing.
- */
- protected File installArchive;
-
- /**
- * The directory where the assembly has been installed to.
- */
- protected File installDir;
-
- protected void init() throws MojoExecutionException, MojoFailureException {
- super.init();
-
- // Determine which archive and directory to use... either manual or from artifacts
- if (assemblyArchive != null) {
- log.debug("Using non-artifact based assembly archive: " + installArchive);
-
- installArchive = assemblyArchive;
-
- //
- // FIXME: This probably will not work...
- //
-
- installDir = new File(outputDirectory, "assembly-archive");
- }
- else {
- Artifact artifact = getAssemblyArtifact();
-
- if (!"zip".equals(artifact.getType())) {
- throw new MojoExecutionException("Assembly file does not look like a ZIP archive");
- }
-
- installArchive = artifact.getFile();
- installDir = new File(outputDirectory, artifact.getArtifactId() + "-" + artifact.getVersion());
- }
- }
-
- protected Artifact getAssemblyArtifact() throws MojoExecutionException {
- assert assemblies != null;
-
- AssemblyConfig config;
-
- if (assemblies.length == 0) {
- throw new MojoExecutionException("At least one assembly configuration must be specified");
- }
- else if (assemblies.length > 1 && assemblyId == null && defaultAssemblyId == null) {
- throw new MojoExecutionException("Must specify assemblyId (or defaultAssemblyId) when more than on assembly configuration is given");
- }
- else if (assemblies.length == 1) {
- config = assemblies[0];
- }
- else {
- if (assemblyId == null) {
- assemblyId = defaultAssemblyId;
- }
-
- log.debug("Searching for assembly config for id: " + assemblyId);
-
- // Make sure there are no duplicate ids
- Map idMap = new HashMap();
-
- for (int i=0; i < assemblies.length; i++) {
- String id = assemblies[i].getId();
-
- if (id == null) {
- throw new MojoExecutionException("Missing id for assembly configuration: " + assemblies[i]);
- }
-
- if (idMap.containsKey(id)) {
- throw new MojoExecutionException("Duplicate assembly id: " + id);
- }
-
- idMap.put(id, assemblies[i]);
- }
-
- config = (AssemblyConfig) idMap.get(assemblyId);
- if (config == null) {
- throw new MojoExecutionException("Missing assembly configuration for id: " + assemblyId);
- }
- }
-
- log.info("Using assembly configuration: " + config);
- Artifact artifact = getArtifact(config);
-
- if (artifact.getFile() == null) {
- throw new MojoExecutionException("Assembly artifact does not have an attached file: " + artifact);
- }
-
- return artifact;
}
}
Modified: geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/site/apt/usage.apt
URL: http://svn.apache.org/viewvc/geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/site/apt/usage.apt?view=diff&rev=439884&r1=439883&r2=439884
==============================================================================
--- geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/site/apt/usage.apt (original)
+++ geronimo/server/trunk/maven-plugins/geronimo-maven-plugin/src/site/apt/usage.apt Sun Sep 3 17:28:23 2006
@@ -129,12 +129,6 @@
mvn geronimo:start -DassemblyId=tomcat
+----------+
- Currently you need to specify the assemblyId for <<<geronimo:stop>>> too.
-
-+----------+
-mvn geronimo:stop -DassemblyId=tomcat
-+----------+
-
* Start/Stop for Integration Testing
For inline integration testing, you can set the <<<background>>> parameter