Bug 534551: add support for JAX-RS 2.1

Signed-off-by: Fred Bricon <fbricon@gmail.com>
diff --git a/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/MavenJaxRsConstants.java b/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/MavenJaxRsConstants.java
index dcba94f..5ed07c5 100644
--- a/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/MavenJaxRsConstants.java
+++ b/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/MavenJaxRsConstants.java
@@ -31,6 +31,8 @@
 	public static final IProjectFacetVersion JAX_RS_FACET_1_1; 
 	
 	public static final IProjectFacetVersion JAX_RS_FACET_2_0; 
+	
+	public static final IProjectFacetVersion JAX_RS_FACET_2_1; 
 
 	static {
 		JAX_RS_FACET = ProjectFacetsManager.getProjectFacet(IJAXRSCoreConstants.JAXRS_FACET_ID);
@@ -41,6 +43,11 @@
 		} else {
 			JAX_RS_FACET_2_0 = JAX_RS_FACET_1_1; 
 		}
+		if (JAX_RS_FACET.hasVersion("2.1")) { //$NON-NLS-1$
+			JAX_RS_FACET_2_1 = JAX_RS_FACET.getVersion("2.1"); //$NON-NLS-1$
+		} else {
+			JAX_RS_FACET_2_1 = JAX_RS_FACET_2_0; 
+		}
 	}
 	
 	/**
diff --git a/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/configurators/ClasspathJaxRsFacetDetector.java b/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/configurators/ClasspathJaxRsFacetDetector.java
index c6cdab0..5a63f2d 100644
--- a/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/configurators/ClasspathJaxRsFacetDetector.java
+++ b/org.eclipse.m2e.wtp.jaxrs/src/org/eclipse/m2e/wtp/jaxrs/internal/configurators/ClasspathJaxRsFacetDetector.java
@@ -13,6 +13,7 @@
 import static org.eclipse.m2e.wtp.jaxrs.internal.MavenJaxRsConstants.JAX_RS_FACET_1_0;
 import static org.eclipse.m2e.wtp.jaxrs.internal.MavenJaxRsConstants.JAX_RS_FACET_1_1;
 import static org.eclipse.m2e.wtp.jaxrs.internal.MavenJaxRsConstants.JAX_RS_FACET_2_0;
+import static org.eclipse.m2e.wtp.jaxrs.internal.MavenJaxRsConstants.JAX_RS_FACET_2_1;
 
 import java.util.Map;
 
@@ -50,6 +51,11 @@
 		if (javaProject != null) {
 			IType type = null;
 			try {
+				type = javaProject.findType("javax.ws.rs.client.RxInvoker"); //$NON-NLS-1$
+				if (type != null) {
+					return JAX_RS_FACET_2_1;
+				}
+				
 				type = javaProject.findType("javax.ws.rs.client.Client"); //$NON-NLS-1$
 				if (type != null) {
 					return JAX_RS_FACET_2_0;