ClassLoader tcl = Thread.currentThread().getContextClassLoader();
ClassPool pool = advisor.getManager().findClassPool(tcl);
HashSet doneClasses = new HashSet();
for (Iterator it = intros.iterator() ; it.hasNext() ; )
{
InterfaceIntroduction intro = (InterfaceIntroduction)it.next();
String[] ifs = intro.getInterfaces();
for (int i = 0 ; ifs != null && i < ifs.length ; i++)
{
if (!doneClasses.contains(ifs[i]))
{
doneClasses.add(ifs[i]);
if (methodExistsInSuperClassOrInterface(pool, hash, target, ifs[i], exactSuper)) return true;
}
}
ArrayList mixins = intro.getMixins();
if (mixins != null && mixins.size() > 0)
{
for (Iterator mit = mixins.iterator() ; mit.hasNext() ; )
{
InterfaceIntroduction.Mixin mixin = (InterfaceIntroduction.Mixin)mit.next();