You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2014/05/31 14:30:39 UTC

git commit: improved documentation

Repository: maven-integration-testing
Updated Branches:
  refs/heads/master 22c1e01c8 -> 192dd12ce


improved documentation

Project: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/commit/192dd12c
Tree: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/tree/192dd12c
Diff: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/diff/192dd12c

Branch: refs/heads/master
Commit: 192dd12ce20f71b46255d3c57dfb29fae0376679
Parents: 22c1e01
Author: Hervé Boutemy <hb...@apache.org>
Authored: Sat May 31 14:30:29 2014 +0200
Committer: Hervé Boutemy <hb...@apache.org>
Committed: Sat May 31 14:30:29 2014 +0200

----------------------------------------------------------------------
 .../maven-it-plugin-touch/pom.xml               |   1 +
 .../apache/maven/plugin/coreit/CopyPomMojo.java |   6 +-
 .../apache/maven/plugin/coreit/CoreItMojo.java  | 156 -----------------
 .../maven/plugin/coreit/CoreItTouchMojo.java    | 167 +++++++++++++++++++
 4 files changed, 170 insertions(+), 160 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/192dd12c/core-it-support/core-it-plugins/maven-it-plugin-touch/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-support/core-it-plugins/maven-it-plugin-touch/pom.xml b/core-it-support/core-it-plugins/maven-it-plugin-touch/pom.xml
index 104cdf0..7169276 100644
--- a/core-it-support/core-it-plugins/maven-it-plugin-touch/pom.xml
+++ b/core-it-support/core-it-plugins/maven-it-plugin-touch/pom.xml
@@ -32,6 +32,7 @@ under the License.
   <packaging>maven-plugin</packaging>
 
   <name>Maven IT Plugin :: Touch</name>
+  <description>Plugin to touch files.</description>
   <inceptionYear>2001</inceptionYear>
 
   <dependencies>

http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/192dd12c/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CopyPomMojo.java
----------------------------------------------------------------------
diff --git a/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CopyPomMojo.java b/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CopyPomMojo.java
index 9eb43e3..578422a 100644
--- a/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CopyPomMojo.java
+++ b/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CopyPomMojo.java
@@ -21,7 +21,6 @@ package org.apache.maven.plugin.coreit;
 
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.project.MavenProject;
 
 import java.io.File;
 import java.io.FileInputStream;
@@ -29,11 +28,10 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 
 /**
- * @goal copy-pom
+ * Mojo which makes a copy of the POM using MavenProject.getFile() to locate the file.
  *
+ * @goal copy-pom
  * @phase generate-sources
- *
- * @description Mojo which makes a copy of the POM using MavenProject.getFile() to locate the file.
  */
 public class CopyPomMojo
     extends AbstractMojo

http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/192dd12c/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java
----------------------------------------------------------------------
diff --git a/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java b/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java
deleted file mode 100644
index 3d84794..0000000
--- a/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItMojo.java
+++ /dev/null
@@ -1,156 +0,0 @@
-package org.apache.maven.plugin.coreit;
-
-/*
- * 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.
- */
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.plugin.AbstractMojo;
-import org.apache.maven.plugin.MojoExecutionException;
-import org.apache.maven.project.MavenProject;
-
-import java.io.File;
-import java.io.FileWriter;
-import java.io.IOException;
-import java.util.Map;
-
-/**
- * @goal touch
- *
- * @phase process-sources
- *
- * @description Goal which cleans the build
- */
-public class CoreItMojo
-    extends AbstractMojo
-{
-    /**
-     * @parameter default-value="${project}"
-     */
-    private MavenProject project;
-
-    /**
-     * @parameter default-value="${project.build.directory}"
-     * @required
-     */
-    private String outputDirectory;
-
-    /** Test setting of plugin-artifacts on the PluginDescriptor instance.
-     * @parameter default-value="${plugin.artifactMap}"
-     * @required
-     */
-    private Map pluginArtifacts;
-
-    /**
-     * @parameter default-value="target/test-basedir-alignment"
-     */
-    private File basedirAlignmentDirectory;
-
-    /**
-     * @parameter alias="pluginFile"
-     */
-    private String pluginItem = "foo";
-
-    /**
-     * @parameter
-     */
-    private String goalItem = "bar";
-
-    /**
-     * @parameter property="artifactToFile"
-     */
-    private String artifactToFile;
-
-    /**
-     * @parameter property="fail"
-     */
-    private boolean fail = false;
-
-    public void execute()
-        throws MojoExecutionException
-    {
-        if ( fail )
-        {
-            throw new MojoExecutionException( "Failing per \'fail\' parameter (specified in pom or system properties)" );
-        }
-
-        touch( new File( outputDirectory ), "touch.txt" );
-
-        // This parameter should be aligned to the basedir as the parameter type is specified
-        // as java.io.File
-
-        if ( !basedirAlignmentDirectory.isAbsolute() )
-        {
-            throw new MojoExecutionException( "basedirAlignmentDirectory not aligned" );
-        }
-
-        touch( basedirAlignmentDirectory, "touch.txt" );
-
-        File outDir = new File( outputDirectory );
-
-        // Test parameter setting
-        if ( pluginItem != null )
-        {
-            touch( outDir, pluginItem );
-        }
-
-        if ( goalItem != null )
-        {
-            touch( outDir, goalItem );
-        }
-
-        if ( artifactToFile != null )
-        {
-            Artifact artifact = (Artifact) pluginArtifacts.get( artifactToFile );
-
-            File artifactFile = artifact.getFile();
-
-            String filename = artifactFile.getAbsolutePath().replace('/', '_').replace(':', '_') + ".txt";
-
-            touch( outDir, filename );
-        }
-
-        project.getBuild().setFinalName( "coreitified" );
-    }
-
-    private void touch( File dir, String file )
-        throws MojoExecutionException
-    {
-        try
-        {
-             if ( !dir.exists() )
-             {
-                 dir.mkdirs();
-             }
-
-             File touch = new File( dir, file );
-
-             getLog().info( "Touching file: " + touch.getAbsolutePath() );
-
-             FileWriter w = new FileWriter( touch );
-
-             w.write( file );
-
-             w.close();
-        }
-        catch ( IOException e )
-        {
-            throw new MojoExecutionException( "Error touching file", e );
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/192dd12c/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItTouchMojo.java
----------------------------------------------------------------------
diff --git a/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItTouchMojo.java b/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItTouchMojo.java
new file mode 100644
index 0000000..e8e25cf
--- /dev/null
+++ b/core-it-support/core-it-plugins/maven-it-plugin-touch/src/main/java/org/apache/maven/plugin/coreit/CoreItTouchMojo.java
@@ -0,0 +1,167 @@
+package org.apache.maven.plugin.coreit;
+
+/*
+ * 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.
+ */
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.project.MavenProject;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.Map;
+
+/**
+ * Mojo that touches one <code>touch.txt</code> or more files with configured filenames,
+ * or cause failure if desired, and set build final name to '<code>coreitified</code>'
+ *
+ * @goal touch
+ * @phase process-sources
+ */
+public class CoreItTouchMojo
+    extends AbstractMojo
+{
+    /**
+     * @parameter default-value="${project}"
+     */
+    private MavenProject project;
+
+    /**
+     * Output directory for touched files.
+     *
+     * @parameter default-value="${project.build.directory}"
+     * @required
+     */
+    private String outputDirectory;
+
+    /**
+     * Test setting of plugin-artifacts on the PluginDescriptor instance.
+     *
+     * @parameter default-value="${plugin.artifactMap}"
+     * @required
+     */
+    private Map<String, Artifact> pluginArtifacts;
+
+    /**
+     * Parameter to check that File attribute is injected with absolute path, even if parameter
+     * value is relative: a <code>touch.txt</code> file will be created in specified directory, to be able
+     * to check that absolute value is at right place.
+     *
+     * @parameter default-value="target/test-basedir-alignment"
+     */
+    private File basedirAlignmentDirectory;
+
+    /**
+     * @parameter alias="pluginFile"
+     */
+    private String pluginItem = "foo";
+
+    /**
+     * @parameter
+     */
+    private String goalItem = "bar";
+
+    /**
+     * Touch a file named after artifact absolute file name, replacing '/' and ':' by '_' and adding ".txt".
+     *
+     * @parameter property="artifactToFile"
+     */
+    private String artifactToFile;
+
+    /**
+     * Should the goal cause a failure before doing anything else?
+     *
+     * @parameter property="fail"
+     */
+    private boolean fail = false;
+
+    public void execute()
+        throws MojoExecutionException
+    {
+        if ( fail )
+        {
+            throw new MojoExecutionException( "Failing per \'fail\' parameter (specified in pom or system properties)" );
+        }
+
+        File outDir = new File( outputDirectory );
+
+        touch( outDir, "touch.txt" );
+
+        // This parameter should be aligned to the basedir as the parameter type is specified
+        // as java.io.File
+        if ( !basedirAlignmentDirectory.isAbsolute() )
+        {
+            throw new MojoExecutionException( "basedirAlignmentDirectory not aligned" );
+        }
+        touch( basedirAlignmentDirectory, "touch.txt" );
+
+        // Test parameter setting
+        if ( pluginItem != null )
+        {
+            touch( outDir, pluginItem );
+        }
+
+        if ( goalItem != null )
+        {
+            touch( outDir, goalItem );
+        }
+
+        if ( artifactToFile != null )
+        {
+            Artifact artifact = pluginArtifacts.get( artifactToFile );
+
+            File artifactFile = artifact.getFile();
+
+            String filename = artifactFile.getAbsolutePath().replace( '/', '_' ).replace( ':', '_' ) + ".txt";
+
+            touch( outDir, filename );
+        }
+
+        project.getBuild().setFinalName( "coreitified" );
+    }
+
+    private void touch( File dir, String file )
+        throws MojoExecutionException
+    {
+        try
+        {
+             if ( !dir.exists() )
+             {
+                 dir.mkdirs();
+             }
+
+             File touch = new File( dir, file );
+
+             getLog().info( "Touching file: " + touch.getAbsolutePath() );
+
+             FileWriter w = new FileWriter( touch );
+
+             w.write( file );
+
+             w.close();
+        }
+        
+        catch ( IOException e )
+        {
+            throw new MojoExecutionException( "Error touching file", e );
+        }
+    }
+}