public class SecretPal1 extends ERXMigrationDatabase.Migration implements IERXPostMigration {
public void postUpgrade(EOEditingContext editingContext, EOModel model) throws Throwable {
for (SPPerson person : SPPerson.fetchAllSPPersons(editingContext)) {
EOEditingContext nestedEditingContext = ERXEC.newEditingContext(editingContext);
SPPerson nestedPerson = person.localInstanceIn(nestedEditingContext);
nestedPerson.setEmailAddress(SPUtilities.cleanseEmailAddress(nestedPerson.emailAddress()));
try {
nestedEditingContext.saveChanges();
}
catch (NSValidation.ValidationException e) {
// this probably means the person realized they screwed up and reinvited the person with the proper email address