/**
  * refresh the specified MWClass types; notify the specified listener for each corresponding chunk
  * of metadata we can't load
  */
 public void refreshTypes(Iterator refreshTypes, ExternalClassLoadFailureListener listener) {
   while (refreshTypes.hasNext()) {
     MWClass type = (MWClass) refreshTypes.next();
     try {
       this.refreshType(type);
     } catch (ExternalClassNotFoundException ecnfe) {
       listener.externalClassLoadFailure(
           new ExternalClassLoadFailureEvent(this, type.getName(), ecnfe));
     }
   }
 }
 /**
  * refresh the types corresponding to the specified external class descriptions; notify the
  * specified listener for each corresponding chunk of metadata we can't load
  */
 public void refreshTypesFor(
     Iterator externalClassDescriptions, ExternalClassLoadFailureListener listener) {
   while (externalClassDescriptions.hasNext()) {
     ExternalClassDescription externalClassDescription =
         (ExternalClassDescription) externalClassDescriptions.next();
     try {
       this.refreshTypeFor(externalClassDescription);
     } catch (ExternalClassNotFoundException ex) {
       listener.externalClassLoadFailure(
           new ExternalClassLoadFailureEvent(this, externalClassDescription.getName(), ex));
     }
   }
 }