package pt.utl.ist.scripts.runOnce.contacts; import java.util.Set; import net.sourceforge.fenixedu.domain.Person; import net.sourceforge.fenixedu.domain.contacts.PartyContact; import pt.ist.bennu.core.domain.Bennu; import pt.utl.ist.scripts.commons.AtomicScript; public class FixDefaultContacts extends AtomicScript { @Override protected void run() throws Exception { final Set partyContactsSet = Bennu.getInstance().getPartyContactsSet(); for (PartyContact contact : partyContactsSet) { if (contact.isDefault() && !contact.isActiveAndValid()) { Person person = (Person) contact.getParty(); if (contact.hasPrevPartyContact()) { contact.getPrevPartyContact().setDefaultContactInformation(true); System.out.printf("contact was edited :%s %s %s\n", contact.getClass().getSimpleName(), contact.getPresentationValue(), person.getPresentationName()); } else { System.out.printf("contact was created :%s %s %s\n", contact.getClass().getSimpleName(), contact.getPresentationValue(), person.getPresentationName()); contact.setAnotherContactAsDefault(); } contact.setDefaultContact(false); } } } public static void main(String... args) { processWriteTransaction(new FixDefaultContacts()); } }