459087 : Use latest war,ejb,ear,rar,acr plugin versions during conversion

Change-Id: I89e2bada3c9a3b3ca244448f38387408fdb107c7
Signed-off-by: Fred Bricon <fbricon@gmail.com>
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/AppClientProjectConverter.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/AppClientProjectConverter.java
index 3bab98b..22215ed 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/AppClientProjectConverter.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/AppClientProjectConverter.java
@@ -59,7 +59,7 @@
 
   private void setAcrPlugin(IVirtualComponent component, Model model) {
     Build build = getCloneOrCreateBuild(model);
-    String pluginVersion = MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-acr-plugin", "1.0"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+    String pluginVersion = getAcrPluginVersion();
     Plugin acrPlugin = setPlugin(build, "org.apache.maven.plugins", "maven-acr-plugin", pluginVersion); //$NON-NLS-1$ //$NON-NLS-2$
     acrPlugin.setExtensions(true);
     
@@ -138,8 +138,16 @@
   }
 
   @Override
-protected IProjectFacet getRequiredFaced() {
+  protected IProjectFacet getRequiredFaced() {
     return WTPProjectsUtil.APP_CLIENT_FACET;
   }
 
+  private String getAcrPluginVersion() {
+	 //For test purposes only, must not be considered API behavior.
+	 String version = System.getProperty("org.eclipse.m2e.wtp.conversion.acrplugin.version");//$NON-NLS-1$
+	 if(version != null) {
+	   return version;
+	 }
+	 return MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-acr-plugin", "1.1"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+  }
 }
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/ConnectorProjectConverter.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/ConnectorProjectConverter.java
index 87490da..fb2e5d2 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/ConnectorProjectConverter.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/ConnectorProjectConverter.java
@@ -70,7 +70,7 @@
 
   private void setRarPlugin(IVirtualComponent component, Model model) throws CoreException {
     Build build = getCloneOrCreateBuild(model);
-    String pluginVersion = MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-rar-plugin", "2.2"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+    String pluginVersion = getRarPluginVersion();
     Plugin rarPlugin = setPlugin(build, "org.apache.maven.plugins", "maven-rar-plugin", pluginVersion); //$NON-NLS-1$ //$NON-NLS-2$
     IFile raXml = findRaXml(component);
     if (raXml != null) {
@@ -81,7 +81,6 @@
         model.setBuild(build);
       }
     }
-    
   }
 
   @Override
@@ -103,4 +102,13 @@
     }
     return null;
   }
+  
+  private String getRarPluginVersion() {
+	 //For test purposes only, must not be considered API behavior.
+	 String version = System.getProperty("org.eclipse.m2e.wtp.conversion.rarplugin.version");//$NON-NLS-1$
+	 if(version != null) {
+	   return version;
+	 }
+	 return MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-rar-plugin", "2.4"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+  }
 }
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EarProjectConverter.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EarProjectConverter.java
index aaa5750..b4fb29a 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EarProjectConverter.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EarProjectConverter.java
@@ -148,6 +148,6 @@
 	 if(version != null) {
 	   return version;
 	 }
-	 return MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-ear-plugin", "2.9.1"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+	 return MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-ear-plugin", "2.10"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
   }
 }
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EjbProjectConverter.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EjbProjectConverter.java
index 3e5b6b8..85f41d1 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EjbProjectConverter.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/EjbProjectConverter.java
@@ -49,7 +49,7 @@
 
   private void setEjbPlugin(IVirtualComponent component, Model model) throws CoreException {
     Build build = getCloneOrCreateBuild(model);
-    String pluginVersion = MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-ejb-plugin", "2.3"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+    String pluginVersion = getEjbPluginVersion();
     Plugin ejbPlugin = setPlugin(build, "org.apache.maven.plugins", "maven-ejb-plugin", pluginVersion); //$NON-NLS-1$ //$NON-NLS-2$
   
     IFacetedProject fProject = ProjectFacetsManager.create(component.getProject());
@@ -68,8 +68,17 @@
   }
 
   @Override
-protected IProjectFacet getRequiredFaced() {
+  protected IProjectFacet getRequiredFaced() {
     return WTPProjectsUtil.EJB_FACET;
   }
 
+  private String getEjbPluginVersion() {
+	 //For test purposes only, must not be considered API behavior.
+	 String version = System.getProperty("org.eclipse.m2e.wtp.conversion.ejbplugin.version");//$NON-NLS-1$
+	 if(version != null) {
+	   return version;
+	 }
+	 return MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-ejb-plugin", "2.5"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+  }
+  
 }
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/WebProjectConverter.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/WebProjectConverter.java
index d31f301..4378bc1 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/WebProjectConverter.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/conversion/WebProjectConverter.java
@@ -99,7 +99,7 @@
 	 if(version != null) {
 	   return version;
 	 }
-	 return MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-war-plugin", "2.5"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+	 return MavenPluginUtils.getMostRecentPluginVersion("org.apache.maven.plugins", "maven-war-plugin", "2.6"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
   }