Fix facade sometimes returning a null mavenProject instance, failing tests
Signed-off-by: Fred Bricon <fbricon@gmail.com>
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/AcrPluginConfiguration.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/AcrPluginConfiguration.java
index 03c9dae..11e6855 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/AcrPluginConfiguration.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/AcrPluginConfiguration.java
@@ -18,6 +18,7 @@
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.jst.j2ee.internal.J2EEVersionConstants;
import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetConstants;
import org.eclipse.jst.jee.util.internal.JavaEEQuickPeek;
@@ -52,11 +53,12 @@
final IMavenProjectFacade mavenProjectFacade;
- public AcrPluginConfiguration(IMavenProjectFacade facade) {
+ public AcrPluginConfiguration(IMavenProjectFacade facade) throws CoreException {
- MavenProject mavenProject = facade.getMavenProject();
- if (JEEPackaging.APP_CLIENT != JEEPackaging.getValue(mavenProject.getPackaging()))
- throw new IllegalArgumentException(Messages.AcrPluginConfiguration_Error_Project_Not_appclient);
+ MavenProject mavenProject = facade.getMavenProject(new NullProgressMonitor());
+ if (JEEPackaging.APP_CLIENT != JEEPackaging.getValue(mavenProject.getPackaging())) {
+ throw new IllegalArgumentException(Messages.AcrPluginConfiguration_Error_Project_Not_appclient);
+ }
this.mavenProjectFacade = facade;
Plugin plugin = mavenProject.getPlugin("org.apache.maven.plugins:maven-acr-plugin"); //$NON-NLS-1$
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/RarPluginConfiguration.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/RarPluginConfiguration.java
index 16273d1..7ac715e 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/RarPluginConfiguration.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/RarPluginConfiguration.java
@@ -18,6 +18,7 @@
import org.eclipse.core.runtime.Assert;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.jst.j2ee.internal.J2EEVersionConstants;
import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetConstants;
import org.eclipse.jst.jee.util.internal.JavaEEQuickPeek;
@@ -59,13 +60,13 @@
final IMavenProjectFacade rarFacade;
- public RarPluginConfiguration(IMavenProjectFacade facade) {
+ public RarPluginConfiguration(IMavenProjectFacade facade) throws CoreException {
Assert.isNotNull(facade);
if (JEEPackaging.RAR != JEEPackaging.getValue(facade.getPackaging()))
throw new IllegalArgumentException(Messages.RarPluginConfiguration_Project_Must_Have_rar_Packaging);
this.rarFacade = facade;
- this.plugin = facade.getMavenProject().getPlugin("org.apache.maven.plugins:maven-rar-plugin"); //$NON-NLS-1$
+ this.plugin = facade.getMavenProject(new NullProgressMonitor()).getPlugin("org.apache.maven.plugins:maven-rar-plugin"); //$NON-NLS-1$
}
/**
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/AppClientResourceFilteringConfiguration.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/AppClientResourceFilteringConfiguration.java
index af8bfc8..f3a8f2f 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/AppClientResourceFilteringConfiguration.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/AppClientResourceFilteringConfiguration.java
@@ -13,6 +13,7 @@
import org.codehaus.plexus.util.xml.Xpp3Dom;
import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.Path;
import org.eclipse.m2e.core.project.IMavenProjectFacade;
@@ -28,7 +29,7 @@
private AcrPluginConfiguration acrPluginConfiguration;
- public AppClientResourceFilteringConfiguration(IMavenProjectFacade mavenProjectFacade) {
+ public AppClientResourceFilteringConfiguration(IMavenProjectFacade mavenProjectFacade) throws CoreException {
super(mavenProjectFacade);
acrPluginConfiguration = new AcrPluginConfiguration(mavenProjectFacade);
}
diff --git a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/ResourceFilteringConfigurationFactory.java b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/ResourceFilteringConfigurationFactory.java
index 73e5b36..827061b 100644
--- a/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/ResourceFilteringConfigurationFactory.java
+++ b/org.eclipse.m2e.wtp/src/org/eclipse/m2e/wtp/internal/filtering/ResourceFilteringConfigurationFactory.java
@@ -8,6 +8,7 @@
package org.eclipse.m2e.wtp.internal.filtering;
+import org.eclipse.core.runtime.CoreException;
import org.eclipse.m2e.core.project.IMavenProjectFacade;
import org.eclipse.m2e.wtp.JEEPackaging;
@@ -19,7 +20,7 @@
public class ResourceFilteringConfigurationFactory {
//TODO Use an extension point to let 3rd party plugin register their own ResourceFilteringConfiguration
- public static ResourceFilteringConfiguration getConfiguration(IMavenProjectFacade mavenProjectFacade) {
+ public static ResourceFilteringConfiguration getConfiguration(IMavenProjectFacade mavenProjectFacade) throws CoreException {
JEEPackaging packaging = JEEPackaging.getValue(mavenProjectFacade.getPackaging());
if (packaging == null) {