You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by gn...@apache.org on 2011/02/17 18:34:36 UTC

svn commit: r1071716 - /aries/branches/0.2-incubating-RCx/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/proxy/Collaborator.java

Author: gnodet
Date: Thu Feb 17 17:34:36 2011
New Revision: 1071716

URL: http://svn.apache.org/viewvc?rev=1071716&view=rev
Log:
[ARIES-433] Equals method do not work when using JDK proxies


Conflicts:

	blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/proxy/Collaborator.java

Modified:
    aries/branches/0.2-incubating-RCx/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/proxy/Collaborator.java

Modified: aries/branches/0.2-incubating-RCx/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/proxy/Collaborator.java
URL: http://svn.apache.org/viewvc/aries/branches/0.2-incubating-RCx/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/proxy/Collaborator.java?rev=1071716&r1=1071715&r2=1071716&view=diff
==============================================================================
--- aries/branches/0.2-incubating-RCx/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/proxy/Collaborator.java (original)
+++ aries/branches/0.2-incubating-RCx/blueprint/blueprint-core/src/main/java/org/apache/aries/blueprint/proxy/Collaborator.java Thu Feb 17 17:34:36 2011
@@ -22,6 +22,7 @@ import java.io.Serializable;
 import java.lang.reflect.InvocationHandler;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
+import java.lang.reflect.Proxy;
 import java.util.List;
 import java.util.Stack;
 
@@ -130,7 +131,8 @@ class Collaborator implements Invocation
             if (args[0] instanceof WrapperedObject) {
                 // unwrap in the WrapperedObject case
                 args[0] = ((WrapperedObject) args[0]).unwrapObject();
-            } else if (AsmInterceptorWrapper.isProxyClass(args[0].getClass())) {
+            } else if (AsmInterceptorWrapper.isProxyClass(args[0].getClass())
+	                    || Proxy.isProxyClass(args[0].getClass())) {
                 // unwrap in the asm case
                 args[0] = AsmInterceptorWrapper.unwrapObject(args[0]);
             }