Hi Karl-Heinz,

we don't know if there are other projects who use the EnforcerExpressionEvaluator.
Changing the constructor signature might break code.
Could you add a new constructor instead?

thanks,
Robert

Op Fri, 02 Jan 2015 22:01:18 +0100 schreef <[email protected]>:

Author: khmarbaise
Date: Fri Jan  2 21:01:18 2015
New Revision: 1649120

URL: http://svn.apache.org/r1649120
Log:
[MENFORCER-220] Make real MojoExecution available through the EnforcerExpressionEvaluator
 Patch of Konrad Windszus applied with a slight modification.

Modified:
    
maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java
    
maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/EnforcerTestUtils.java
    
maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java
    
maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/AbstractEnforceMojo.java
    
maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java
    
maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java

Modified: maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java?rev=1649120&r1=1649119&r2=1649120&view=diff
==============================================================================
--- maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java (original) +++ maven/enforcer/trunk/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/EnforcerExpressionEvaluator.java Fri Jan 2 21:01:18 2015
@@ -22,7 +22,6 @@ package org.apache.maven.plugins.enforce
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.MojoExecution;
 import org.apache.maven.plugin.PluginParameterExpressionEvaluator;
-import org.apache.maven.plugin.descriptor.MojoDescriptor;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.path.PathTranslator;
@@ -44,9 +43,9 @@ public class EnforcerExpressionEvaluator
      * @param theProject the the project
      */
public EnforcerExpressionEvaluator( MavenSession theContext, PathTranslator thePathTranslator,
-                                        MavenProject theProject )
+ MavenProject theProject, MojoExecution theExecution )
     {
- super( theContext, new MojoExecution( new MojoDescriptor() ), thePathTranslator, null, theProject, + super( theContext, theExecution, thePathTranslator, null, theProject,
                theContext.getExecutionProperties() );
     }

Modified: maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/EnforcerTestUtils.java URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/EnforcerTestUtils.java?rev=1649120&r1=1649119&r2=1649120&view=diff
==============================================================================
--- maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/EnforcerTestUtils.java (original) +++ maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/EnforcerTestUtils.java Fri Jan 2 21:01:18 2015
@@ -25,6 +25,8 @@ import java.util.Properties;
 import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.model.Plugin;
+import org.apache.maven.plugin.MojoExecution;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
 import org.apache.maven.plugin.logging.SystemStreamLog;
import org.apache.maven.plugins.enforcer.utils.MockEnforcerExpressionEvaluator;
 import org.apache.maven.project.MavenProject;
@@ -97,7 +99,7 @@ public final class EnforcerTestUtils
         }
         else
         {
- eval = new EnforcerExpressionEvaluator( session, new MockPathTranslator(), project ); + eval = new EnforcerExpressionEvaluator( session, new MockPathTranslator(), project, new MojoExecution( new MojoDescriptor() ) );
         }
return new DefaultEnforcementRuleHelper( session, eval, new SystemStreamLog(), null );
     }

Modified: maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java?rev=1649120&r1=1649119&r2=1649120&view=diff
==============================================================================
--- maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java (original) +++ maven/enforcer/trunk/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/utils/MockEnforcerExpressionEvaluator.java Fri Jan 2 21:01:18 2015
@@ -20,6 +20,8 @@ package org.apache.maven.plugins.enforce
  */
import org.apache.maven.execution.MavenSession;
+import org.apache.maven.plugin.MojoExecution;
+import org.apache.maven.plugin.descriptor.MojoDescriptor;
 import org.apache.maven.plugins.enforcer.EnforcerExpressionEvaluator;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.path.PathTranslator;
@@ -43,7 +45,7 @@ public class MockEnforcerExpressionEvalu
public MockEnforcerExpressionEvaluator( MavenSession theContext, PathTranslator thePathTranslator,
                                             MavenProject theProject )
     {
-        super( theContext, thePathTranslator, theProject );
+ super( theContext, thePathTranslator, theProject, new MojoExecution( new MojoDescriptor() ) );
         // TODO Auto-generated constructor stub
     }

Modified: maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/AbstractEnforceMojo.java URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/AbstractEnforceMojo.java?rev=1649120&r1=1649119&r2=1649120&view=diff
==============================================================================
--- maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/AbstractEnforceMojo.java (original) +++ maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/AbstractEnforceMojo.java Fri Jan 2 21:01:18 2015
@@ -28,6 +28,7 @@ import org.apache.maven.enforcer.rule.ap
 import org.apache.maven.enforcer.rule.api.EnforcerRuleHelper;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecution;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.logging.Log;
 import org.apache.maven.plugins.annotations.Component;
@@ -57,6 +58,12 @@ public abstract class AbstractEnforceMoj
      */
     @Component( role = PathTranslator.class )
     protected PathTranslator translator;
+
+    /**
+     * MojoExecution needed by the ExpressionEvaluator
+     */
+ @Parameter( defaultValue = "${mojoExecution}", readonly = true, required = true )
+    protected MojoExecution mojoExecution;
    /**
      * The MavenSession
@@ -102,7 +109,8 @@ public abstract class AbstractEnforceMoj
         throws MojoExecutionException
     {
         Log log = this.getLog();
- EnforcerExpressionEvaluator evaluator = new EnforcerExpressionEvaluator( session, translator, project ); + EnforcerExpressionEvaluator evaluator = new EnforcerExpressionEvaluator( session, translator, project, + mojoExecution );
         // the entire execution can be easily skipped
         if ( !skip )
         {

Modified: maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java?rev=1649120&r1=1649119&r2=1649120&view=diff
==============================================================================
--- maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java (original) +++ maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/DisplayInfoMojo.java Fri Jan 2 21:01:18 2015
@@ -23,6 +23,7 @@ import org.apache.commons.lang.SystemUti
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.execution.RuntimeInformation;
 import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecution;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugins.annotations.Component;
 import org.apache.maven.plugins.annotations.Mojo;
@@ -55,6 +56,12 @@ public class DisplayInfoMojo
     protected PathTranslator translator;
    /**
+     * MojoExecution needed by the ExpressionEvaluator
+     */
+ @Parameter( defaultValue = "${mojoExecution}", readonly = true, required = true )
+    protected MojoExecution mojoExecution;
+
+    /**
      * The MavenSession
      */
@Parameter( defaultValue = "${session}", readonly = true, required = true )
@@ -84,7 +91,8 @@ public class DisplayInfoMojo
     {
         try
         {
- EnforcerExpressionEvaluator evaluator = new EnforcerExpressionEvaluator( session, translator, project ); + EnforcerExpressionEvaluator evaluator = new EnforcerExpressionEvaluator( session, translator, project, + mojoExecution ); DefaultEnforcementRuleHelper helper = new DefaultEnforcementRuleHelper( session, evaluator, getLog(), container ); RuntimeInformation rti = (RuntimeInformation) helper.getComponent( RuntimeInformation.class );

Modified: maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java URL: http://svn.apache.org/viewvc/maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java?rev=1649120&r1=1649119&r2=1649120&view=diff
==============================================================================
--- maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java (original) +++ maven/enforcer/trunk/maven-enforcer-plugin/src/main/java/org/apache/maven/plugins/enforcer/EnforceMojo.java Fri Jan 2 21:01:18 2015
@@ -99,7 +99,8 @@ public class EnforceMojo
     {
         Log log = this.getLog();
- EnforcerExpressionEvaluator evaluator = new EnforcerExpressionEvaluator( session, translator, project ); + EnforcerExpressionEvaluator evaluator = new EnforcerExpressionEvaluator( session, translator, project, + mojoExecution );
        // the entire execution can be easily skipped
         if ( !skip )


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to