[jboss-cvs] JBossAS SVN: r59672 - branches/Branch_AOP_1_5/aop/src/main/org/jboss/aop/util.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jan 16 11:48:38 EST 2007
Author: kabir.khan at jboss.com
Date: 2007-01-16 11:48:36 -0500 (Tue, 16 Jan 2007)
New Revision: 59672
Modified:
branches/Branch_AOP_1_5/aop/src/main/org/jboss/aop/util/JavassistMethodHashing.java
Log:
[JBAOP-342] JavassistMethodHashing.getMethodMap() for an interface does not pick up methods from super interface
Modified: branches/Branch_AOP_1_5/aop/src/main/org/jboss/aop/util/JavassistMethodHashing.java
===================================================================
--- branches/Branch_AOP_1_5/aop/src/main/org/jboss/aop/util/JavassistMethodHashing.java 2007-01-16 15:57:19 UTC (rev 59671)
+++ branches/Branch_AOP_1_5/aop/src/main/org/jboss/aop/util/JavassistMethodHashing.java 2007-01-16 16:48:36 UTC (rev 59672)
@@ -158,13 +158,24 @@
}
}
private static void populateMethodTables(HashMap advised, CtClass superclass)
- throws Exception
+ throws Exception
{
if (superclass == null) return;
if (superclass.getName().equals("java.lang.Object")) return;
-
- populateMethodTables(advised, superclass.getSuperclass());
- addDeclaredMethods(advised, superclass);
+ if (superclass.isInterface())
+ {
+ CtClass[] ifs = superclass.getInterfaces();
+ for (int i = 0 ; i < ifs.length ; i++)
+ {
+ populateMethodTables(advised, ifs[i]);
+ }
+ addDeclaredMethods(advised, superclass);
+ }
+ else
+ {
+ populateMethodTables(advised, superclass.getSuperclass());
+ addDeclaredMethods(advised, superclass);
+ }
}
public static HashMap getMethodMap(CtClass clazz) throws Exception
More information about the jboss-cvs-commits
mailing list