@Override
 public boolean isAffected(Delta delta, IResourceDescription candidate)
     throws IllegalArgumentException {
   if (!hasChanges(delta, candidate)) return false;
   Set<QualifiedName> names = Sets.newHashSet();
   addExportedNames(names, delta.getOld());
   addExportedNames(names, delta.getNew());
   return !Collections.disjoint(names, getImportedNames(candidate));
 }