{
ArrayList<JavaMethod> methods = baseClass.getMethodList();
ArrayList<JavaMethod> extMethods = extClass.getMethodList();
for (int i = 0; i < extMethods.size(); i++) {
JavaMethod extMethod = extMethods.get(i);
if (extMethod.getName().equals("<clinit>") &&
findMethod(baseClass, "<clinit>",
extMethod.getDescriptor()) != null) {
continue;
}
else if (extMethod.getName().equals("<init>"))
continue;
else if (extMethod.getName().endsWith("__super"))
continue;
log.finest("adding extension method: " + extClass.getThisClass() + ":" + extMethod.getName());
JavaMethod method = extMethod.export(extClass, baseClass);
methods.add(method);
}
}