You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ca...@apache.org on 2006/06/03 00:34:36 UTC
svn commit: r411318 - in
/maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins:
AbstractPluginConfigurationConverter.java PCCCompiler.java PCCSurefire.java
PCCWar.java
Author: carlos
Date: Fri Jun 2 15:34:35 2006
New Revision: 411318
URL: http://svn.apache.org/viewvc?rev=411318&view=rev
Log:
[MNG-2338] Allow configuration conversion for reporting plugins
Modified:
maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java
maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCCompiler.java
maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCSurefire.java
maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCWar.java
Modified: maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java
URL: http://svn.apache.org/viewvc/maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java?rev=411318&r1=411317&r2=411318&view=diff
==============================================================================
--- maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java (original)
+++ maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/AbstractPluginConfigurationConverter.java Fri Jun 2 15:34:35 2006
@@ -16,24 +16,29 @@
* limitations under the License.
*/
-import java.io.StringReader;
-import java.util.Iterator;
-import java.util.Properties;
-
+import org.apache.maven.model.Build;
import org.apache.maven.model.Model;
import org.apache.maven.model.Plugin;
+import org.apache.maven.model.ReportPlugin;
+import org.apache.maven.model.Reporting;
import org.apache.maven.plugin.MojoExecutionException;
import org.codehaus.plexus.util.xml.Xpp3Dom;
import org.codehaus.plexus.util.xml.Xpp3DomBuilder;
+import java.io.StringReader;
+import java.util.Iterator;
+import java.util.Properties;
+
/**
* @author Fabrizio Giustina
* @author Dennis Lundberg
* @version $Id$
*/
-public abstract class AbstractPluginConfigurationConverter
- implements PluginConfigurationConverter
+public abstract class AbstractPluginConfigurationConverter implements PluginConfigurationConverter
{
+ public static final String TYPE_BUILD_PLUGIN = "build plugin";
+ public static final String TYPE_REPORT_PLUGIN = "report plugin";
+
public abstract String getArtifactId();
public String getGroupId()
@@ -41,6 +46,8 @@
return "org.apache.maven.plugins";
}
+ public abstract String getType();
+
/**
* Add a child element to the configuration.
*
@@ -61,9 +68,9 @@
/**
* Add a child element to the configuration.
*
- * @param configuration The configuration to add the element to
- * @param mavenTwoElement The name of the Maven 2 configuration element
- * @param value Set the value of the element to this
+ * @param configuration The configuration to add the element to
+ * @param mavenTwoElement The name of the Maven 2 configuration element
+ * @param value Set the value of the element to this
* @throws MojoExecutionException if an element can't be created
*/
protected void addConfigurationChild( Xpp3Dom configuration, String mavenTwoElement, String value )
@@ -76,7 +83,7 @@
}
public void convertConfiguration( Model v4Model, org.apache.maven.model.v3_0_0.Model v3Model,
- Properties projectProperties )
+ Properties projectProperties )
throws MojoExecutionException
{
boolean addPlugin = false;
@@ -87,34 +94,67 @@
if ( configuration.getChildCount() > 0 )
{
- Plugin plugin = findPlugin( v4Model, getGroupId(), getArtifactId() );
- if ( plugin == null )
+ if ( TYPE_BUILD_PLUGIN.equals( getType() ) )
{
- addPlugin = true;
- plugin = new Plugin();
- plugin.setGroupId( getGroupId() );
- plugin.setArtifactId( getArtifactId() );
+ Plugin plugin = findBuildPlugin( v4Model, getGroupId(), getArtifactId() );
+ if ( plugin == null )
+ {
+ addPlugin = true;
+ plugin = new Plugin();
+ plugin.setGroupId( getGroupId() );
+ plugin.setArtifactId( getArtifactId() );
+ }
+
+ plugin.setConfiguration( configuration );
+
+ if ( addPlugin )
+ {
+ if ( v4Model.getBuild() == null )
+ {
+ v4Model.setBuild( new Build() );
+ }
+ v4Model.getBuild().addPlugin( plugin );
+ }
}
-
- plugin.setConfiguration( configuration );
-
- if ( addPlugin )
+ else if ( TYPE_REPORT_PLUGIN.equals( getType() ) )
{
- v4Model.getBuild().addPlugin( plugin );
- }
+ ReportPlugin plugin = findReportPlugin( v4Model, getGroupId(), getArtifactId() );
+ if ( plugin == null )
+ {
+ addPlugin = true;
+ plugin = new ReportPlugin();
+ plugin.setGroupId( getGroupId() );
+ plugin.setArtifactId( getArtifactId() );
+ }
+
+ plugin.setConfiguration( configuration );
+
+ if ( addPlugin )
+ {
+ if ( v4Model.getReporting() == null )
+ {
+ v4Model.setReporting( new Reporting() );
+ }
+ v4Model.getReporting().addPlugin( plugin );
+ }
+ }
}
}
/**
* Try to find a plugin in a model.
*
- * @param model Look for the plugin in this model
- * @param groupId The groupId for the plugin to look for
- * @param artifactId The artifactId for the plugin to look for
- * @return The requested plugin if it exists, otherwise null
+ * @param model Look for the build plugin in this model
+ * @param groupId The groupId for the build plugin to look for
+ * @param artifactId The artifactId for the build plugin to look for
+ * @return The requested build plugin if it exists, otherwise null
*/
- private Plugin findPlugin( Model model, String groupId, String artifactId )
+ private Plugin findBuildPlugin( Model model, String groupId, String artifactId )
{
+ if ( model.getBuild() == null || model.getBuild().getPlugins() == null )
+ {
+ return null;
+ }
Iterator iterator = model.getBuild().getPlugins().iterator();
while ( iterator.hasNext() )
{
@@ -122,13 +162,39 @@
if ( plugin.getGroupId().equals( groupId ) && plugin.getArtifactId().equals( artifactId ) )
{
return plugin;
+ }
+ }
+ return null;
}
+
+ /**
+ * Try to find a report plugin in a model.
+ *
+ * @param model Look for the report plugin in this model
+ * @param groupId The groupId for the report plugin to look for
+ * @param artifactId The artifactId for the report plugin to look for
+ * @return The requested report plugin if it exists, otherwise null
+ */
+ private ReportPlugin findReportPlugin( Model model, String groupId, String artifactId )
+ {
+ if ( model.getReporting() == null || model.getReporting().getPlugins() == null )
+ {
+ return null;
+ }
+ Iterator iterator = model.getReporting().getPlugins().iterator();
+ while ( iterator.hasNext() )
+ {
+ ReportPlugin plugin = (ReportPlugin) iterator.next();
+ if ( plugin.getGroupId().equals( groupId ) && plugin.getArtifactId().equals( artifactId ) )
+ {
+ return plugin;
+ }
}
return null;
}
protected abstract void buildConfiguration( Xpp3Dom configuration, org.apache.maven.model.v3_0_0.Model v3Model,
- Properties projectProperties )
+ Properties projectProperties )
throws MojoExecutionException;
protected Xpp3Dom newXpp3Dom( String input )
Modified: maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCCompiler.java
URL: http://svn.apache.org/viewvc/maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCCompiler.java?rev=411318&r1=411317&r2=411318&view=diff
==============================================================================
--- maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCCompiler.java (original)
+++ maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCCompiler.java Fri Jun 2 15:34:35 2006
@@ -37,6 +37,11 @@
return "maven-compiler-plugin";
}
+ public String getType()
+ {
+ return TYPE_BUILD_PLUGIN;
+ }
+
protected void addOnOffConfigurationChild( Xpp3Dom configuration, Properties projectProperties,
String mavenOneProperty, String mavenTwoElement )
throws MojoExecutionException
Modified: maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCSurefire.java
URL: http://svn.apache.org/viewvc/maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCSurefire.java?rev=411318&r1=411317&r2=411318&view=diff
==============================================================================
--- maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCSurefire.java (original)
+++ maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCSurefire.java Fri Jun 2 15:34:35 2006
@@ -40,6 +40,11 @@
return "maven-surefire-plugin";
}
+ public String getType()
+ {
+ return TYPE_BUILD_PLUGIN;
+ }
+
protected void buildConfiguration( Xpp3Dom configuration, org.apache.maven.model.v3_0_0.Model v3Model,
Properties projectProperties )
throws MojoExecutionException
Modified: maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCWar.java
URL: http://svn.apache.org/viewvc/maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCWar.java?rev=411318&r1=411317&r2=411318&view=diff
==============================================================================
--- maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCWar.java (original)
+++ maven/sandbox/plugins/maven-maven1-plugin/src/main/java/org/apache/maven/maven1converter/plugins/PCCWar.java Fri Jun 2 15:34:35 2006
@@ -38,6 +38,11 @@
return "maven-war-plugin";
}
+ public String getType()
+ {
+ return TYPE_BUILD_PLUGIN;
+ }
+
protected void buildConfiguration( Xpp3Dom configuration, org.apache.maven.model.v3_0_0.Model v3Model,
Properties projectProperties )
throws MojoExecutionException