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 2012/05/17 17:30:57 UTC

svn commit: r1339651 - in /maven/maven-3/trunk/maven-plugin-api/src/main: java/org/apache/maven/plugin/descriptor/MojoDescriptor.java mdo/plugin.mdo

Author: hboutemy
Date: Thu May 17 15:30:56 2012
New Revision: 1339651

URL: http://svn.apache.org/viewvc?rev=1339651&view=rev
Log:
fixed discrepency between plugin.mdo (which is pure documentation) and corresponding hand-written code

Modified:
    maven/maven-3/trunk/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java
    maven/maven-3/trunk/maven-plugin-api/src/main/mdo/plugin.mdo

Modified: maven/maven-3/trunk/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java
URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java?rev=1339651&r1=1339650&r2=1339651&view=diff
==============================================================================
--- maven/maven-3/trunk/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java (original)
+++ maven/maven-3/trunk/maven-plugin-api/src/main/java/org/apache/maven/plugin/descriptor/MojoDescriptor.java Thu May 17 15:30:56 2012
@@ -63,28 +63,42 @@ public class MojoDescriptor
     /** By default, the execution strategy is "once-per-session" */
     private String executionStrategy = SINGLE_PASS_EXEC_STRATEGY;
 
-    /** The goal name of the Mojo */
+    /**
+     * The goal name for the Mojo, that users will reference from the command line to execute the Mojo directly, or
+     * inside a POM in order to provide Mojo-specific configuration.
+     */
     private String goal;
 
-    /** Reference the binded phase name of the Mojo */
+    /**
+     * Defines a default phase to bind a mojo execution to if the user does not explicitly set a phase in the POM.
+     * <i>Note:</i> This will not automagically make a mojo run when the plugin declaration is added to the POM. It
+     * merely enables the user to omit the <code>&lt;phase&gt;</code> element from the surrounding
+     * <code>&lt;execution&gt;</code> element.
+     */
     private String phase;
 
     /** Specify the version when the Mojo was added to the API. Similar to Javadoc since. */
     private String since;
 
-    /** Reference the invocation phase of the Mojo */
+    /** Reference the invocation phase of the Mojo. */
     private String executePhase;
 
-    /** Reference the invocation goal of the Mojo */
+    /** Reference the invocation goal of the Mojo. */
     private String executeGoal;
 
-    /** Reference the invocation lifecycle of the Mojo */
+    /** Reference the invocation lifecycle of the Mojo. */
     private String executeLifecycle;
 
-    /** Specify the version when the Mojo was deprecated to the API. Similar to Javadoc deprecated. */
+    /**
+     * Specify the version when the Mojo was deprecated to the API. Similar to Javadoc deprecated. This will trigger a
+     * warning when a user tries to configure a parameter marked as deprecated.
+     */
     private String deprecated;
 
-    /** By default, no need to aggregate the Maven project and its child modules */
+    /**
+     * Flags this Mojo to run it in a multi module way, i.e. aggregate the build with the set of projects listed as
+     * modules. By default, no need to aggregate the Maven project and its child modules
+     */
     private boolean aggregator = false;
 
     // ----------------------------------------------------------------------
@@ -112,7 +126,7 @@ public class MojoDescriptor
     /**  By default, the Mojo is inherited */
     private boolean inheritedByDefault = true;
 
-    /**  By default, the Mojo could not be invoke directly */
+    /**  By default, the Mojo cannot be invoked directly */
     private boolean directInvocationOnly = false;
 
     /**  By default, the Mojo don't need reports to run */
@@ -265,8 +279,10 @@ public class MojoDescriptor
     /**
      * Gets the scope of (transitive) dependencies that should be collected. Dependency collection refers to the process
      * of calculating the complete dependency tree in terms of artifact coordinates. In contrast to dependency
-     * resolution, this does not include the download of the files for the dependency artifacts.
-     *
+     * resolution, this does not include the download of the files for the dependency artifacts. It is meant for mojos
+     * that only want to analyze the set of transitive dependencies, in particular during early lifecycle phases where
+     * full dependency resolution might fail due to projects which haven't been built yet.
+     * 
      * @return The scope of (transitive) dependencies that should be collected or {@code null} if none.
      */
     public String getDependencyCollectionRequired()
@@ -597,7 +613,7 @@ public class MojoDescriptor
     }
 
     /**
-     * @return <code>true</code> if the Mojo could not be invoke directly, <code>false</code> otherwise.
+     * @return <code>true</code> if the Mojo cannot be invoked directly, <code>false</code> otherwise.
      */
     public boolean isDirectInvocationOnly()
     {
@@ -605,7 +621,7 @@ public class MojoDescriptor
     }
 
     /**
-     * @param directInvocationOnly <code>true</code> if the Mojo could not be invoke directly,
+     * @param directInvocationOnly <code>true</code> if the Mojo cannot be invoked directly,
      * <code>false</code> otherwise.
      */
     public void setDirectInvocationOnly( boolean directInvocationOnly )

Modified: maven/maven-3/trunk/maven-plugin-api/src/main/mdo/plugin.mdo
URL: http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-plugin-api/src/main/mdo/plugin.mdo?rev=1339651&r1=1339650&r2=1339651&view=diff
==============================================================================
--- maven/maven-3/trunk/maven-plugin-api/src/main/mdo/plugin.mdo (original)
+++ maven/maven-3/trunk/maven-plugin-api/src/main/mdo/plugin.mdo Thu May 17 15:30:56 2012
@@ -41,6 +41,7 @@ under the License.
       <name>PluginDescriptor</name>
       <version>1.0.0</version>
       <description><![CDATA[Root element of the <code>plugin.xml</code> file.]]></description>
+      <!-- see o.a.m.plugin.descriptor.PluginDescriptor -->
       <fields>
         <field>
           <name>description</name>
@@ -116,6 +117,7 @@ under the License.
       <description><![CDATA[
         A Mojo description.
       ]]></description>
+      <!-- see o.a.m.plugin.descriptor.MojoDescriptor -->
       <fields>
         <field>
           <name>goal</name>
@@ -123,7 +125,7 @@ under the License.
           <version>1.0.0</version>
           <type>String</type>
           <description>
-            The name for the Mojo that users will reference from the command line to execute the Mojo directly,
+            The goal name for the Mojo, that users will reference from the command line to execute the Mojo directly,
             or inside a POM in order to provide Mojo-specific configuration.
           </description>
         </field>
@@ -146,7 +148,7 @@ under the License.
           <version>1.0.0</version>
           <type>String</type>
           <defaultValue>java</defaultValue>
-          <description>The implementation language for this Mojo (Java, beanshell, etc.).</description>
+          <description>The implementation language for this Mojo (java, beanshell, etc.).</description>
         </field>
         <field>
           <name>phase</name>
@@ -154,7 +156,7 @@ under the License.
           <type>String</type>
           <description><![CDATA[
             Defines a default phase to bind a mojo execution to if the user does not explicitly set a phase in the POM.
-            <i>Note:</i> This annotation will not automagically make a mojo run when the plugin declaration is added
+            <i>Note:</i> This will not automagically make a mojo run when the plugin declaration is added
             to the POM. It merely enables the user to omit the <code>&lt;phase&gt;</code> element from the
             surrounding <code>&lt;execution&gt;</code> element.
           ]]></description>
@@ -163,13 +165,13 @@ under the License.
           <name>executePhase</name>
           <version>1.0.0</version>
           <type>String</type>
-          <description></description>
+          <description>Reference the invocation phase of the Mojo.</description>
         </field>
         <field>
           <name>executeGoal</name>
           <version>1.0.0</version>
           <type>String</type>
-          <description></description>
+          <description>Reference the invocation goal of the Mojo.</description>
         </field>
         <field>
           <name>executeLifecycle</name>
@@ -185,7 +187,7 @@ under the License.
           <description><![CDATA[
             Flags this Mojo as requiring the dependencies in the specified class path to be resolved before it can
             execute: <code>compile</code>, <code>runtime</code>, <code>test</code>,
-            <code>compile+runtime</code> (since Maven 3.0)
+            <code>compile+runtime</code> (since Maven 3.0) or <code>runtime+system</code> (since Maven 3.0)
           ]]></description>
         </field>
         <field>
@@ -205,21 +207,21 @@ under the License.
           <name>requiresDirectInvocation</name>
           <version>1.0.0</version>
           <type>boolean</type>
-          <description>Flags this Mojo to be invoked directly.</description>
+          <description>Flags this Mojo to be invoked directly only.</description>
           <defaultValue>false</defaultValue>
         </field>
         <field>
           <name>requiresProject</name>
           <version>1.0.0</version>
           <type>boolean</type>
-          <description>Flags this Mojo to run inside of a project.</description>
+          <description>Flags this Mojo to require running inside of a project.</description>
           <defaultValue>true</defaultValue>
         </field>
         <field>
           <name>requiresReports</name>
           <version>1.0.0</version>
           <type>boolean</type>
-          <description>Flags this Mojo to require reports. Unsupported since Maven 3.0.</description>
+          <description>Flags this Mojo to require running inside of a reports context. Unsupported since Maven 3.0.</description>
           <defaultValue>false</defaultValue>
         </field>
         <field>
@@ -237,6 +239,7 @@ under the License.
             Flags this Mojo to run it in a multi module way, i.e. aggregate the build with the set of projects
             listed as modules.
           </description>
+          <defaultValue>false</defaultValue>
         </field>
         <field>
           <name>inheritedByDefault</name>
@@ -254,6 +257,7 @@ under the License.
             builds. Mojos without this annotation will make Maven output a warning when used during a parallel build
             session. Since Maven 3.0.
           </description>
+          <defaultValue>false</defaultValue>
         </field>
         <field>
           <name>instantiationStrategy</name>
@@ -269,6 +273,7 @@ under the License.
           <description><![CDATA[
             Specify the execution strategy: <code>once-per-session</code>, <code>always</code>.
           ]]></description>
+          <defaultValue>once-per-session</defaultValue>
         </field>
         <field>
           <name>since</name>
@@ -335,6 +340,7 @@ under the License.
       <name>Parameter</name>
       <version>1.0.0</version>
       <description>A phase mapping definition.</description>
+      <!-- see o.a.m.plugin.descriptor.Parameter -->
       <fields>
         <field>
           <name>name</name>
@@ -342,7 +348,7 @@ under the License.
           <type>String</type>
           <required>true</required>
           <description>
-            The name of the parameter, to be used in configuring this parameter from the Mojo's declared defaults
+            The name of the parameter, to be used while configuring this parameter from the Mojo's declared defaults
             or from the POM.
           </description>
         </field>
@@ -424,13 +430,14 @@ under the License.
       <name>Configuration</name>
       <version>1.0.0</version>
       <description>A parameter configuration.</description>
+      <!-- see o.a.m.plugin.descriptor.Parameter -->
       <fields>
         <field xml.content="true">
           <name>expression</name>
           <required>true</required>
           <version>1.0.0</version>
           <type>String</type>
-          <description>Parameter expression.</description>
+          <description>Parameter expression, to let user override default value with a system property, pom property or settings property.</description>
         </field>
         <field xml.attribute="true" xml.tagName="implementation">
           <name>implementation</name>
@@ -442,7 +449,7 @@ under the License.
           <name>defaultValue</name>
           <version>1.0.0</version>
           <type>String</type>
-          <description></description>
+          <description>The default value, as an expression that will be evaluated at injection or run-time.</description>
         </field>
       </fields>
     </class>
@@ -450,7 +457,8 @@ under the License.
     <class>
       <name>Requirement</name>
       <version>1.0.0</version>
-      <description></description>
+      <description>Describes a component requirement.</description>
+      <!-- see o.a.m.plugin.descriptor.Requirement -->
       <fields>
         <field>
           <name>role</name>
@@ -470,7 +478,7 @@ under the License.
           <required>true</required>
           <version>1.0.0</version>
           <type>String</type>
-          <description></description>
+          <description>The field name which has this requirement.</description>
         </field>
       </fields>
     </class>