Fix for https://bugs.eclipse.org/bugs/show_bug.cgi?id=539469
Change-Id: Idd5d4fac584fe96b82e97a469b7002307064c617
diff --git a/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/META-INF/MANIFEST.MF b/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/META-INF/MANIFEST.MF
index 0cf8926..b2f674f 100644
--- a/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/META-INF/MANIFEST.MF
+++ b/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
Bundle-Name: %bundle.name
Bundle-SymbolicName: org.eclipse.ecf.remoteservice.asyncproxy
Automatic-Module-Name: org.eclipse.ecf.remoteservice.asyncproxy
-Bundle-Version: 1.1.0.qualifier
+Bundle-Version: 1.1.100.qualifier
Bundle-Vendor: %bundle.provider
Import-Package: org.eclipse.equinox.concurrent.future
Bundle-Localization: bundle
diff --git a/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/pom.xml b/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/pom.xml
index 7cc0a5f..137fac4 100644
--- a/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/pom.xml
+++ b/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/pom.xml
@@ -10,6 +10,6 @@
</parent>
<groupId>org.eclipse.ecf</groupId>
<artifactId>org.eclipse.ecf.remoteservice.asyncproxy</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.100-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/src/org/eclipse/ecf/remoteservice/asyncproxy/AbstractAsyncProxyRemoteService.java b/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/src/org/eclipse/ecf/remoteservice/asyncproxy/AbstractAsyncProxyRemoteService.java
index 7e53b6f..c30f971 100644
--- a/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/src/org/eclipse/ecf/remoteservice/asyncproxy/AbstractAsyncProxyRemoteService.java
+++ b/framework/bundles/org.eclipse.ecf.remoteservice.asyncproxy/src/org/eclipse/ecf/remoteservice/asyncproxy/AbstractAsyncProxyRemoteService.java
@@ -10,6 +10,7 @@
*****************************************************************************/
package org.eclipse.ecf.remoteservice.asyncproxy;
+import java.lang.reflect.Method;
import java.util.concurrent.Future;
import org.eclipse.equinox.concurrent.future.IFuture;
@@ -24,6 +25,12 @@
protected abstract void callCompletableAsync(AbstractAsyncProxyRemoteCall call, IAsyncProxyCompletable completable);
+ protected boolean isReturnAsync(Object proxy, Method method, Object[] args) {
+ @SuppressWarnings("rawtypes")
+ Class returnType = method.getReturnType();
+ return (Future.class.isAssignableFrom(returnType) || IFuture.class.isAssignableFrom(returnType));
+ }
+
protected Object callFuture(AbstractAsyncProxyRemoteCall call, @SuppressWarnings("rawtypes") Class returnType) {
// Iff it's an IFuture then return
// IFuture result of callAsync