package pt.utl.ist.scripts.runOnce.phd; import net.sourceforge.fenixedu.domain.phd.PhdProgramFocusArea; import net.sourceforge.fenixedu.domain.phd.ThesisSubject; import pt.ist.bennu.core.domain.Bennu; import pt.utl.ist.fenix.tools.util.i18n.Language; import pt.utl.ist.scripts.commons.AtomicScript; public class ChangePhdProgramFocusAreas extends AtomicScript { private final boolean PERFORM_CHANGES = false; @Override protected void run() throws Exception { for (PhdProgramFocusArea focusArea : Bennu.getInstance().getPhdProgramFocusAreasSet()) { System.out.println("Processing focus area: " + focusArea.getName().getContent(Language.en)); if (focusArea.getName().getContent(Language.pt).equals("Sustainable Energy")) { System.out.println("Found Sustainable Energy"); if (PERFORM_CHANGES) { focusArea.getName().setContent(Language.pt, "Materials and Sustainable Energy"); focusArea.getName().setContent(Language.en, "Materials and Sustainable Energy"); focusArea.setName(focusArea.getName()); System.out.println("Changed Sustainable Energy to Materials and Sustainable Energy"); } } if (focusArea.getName().getContent(Language.en).equals("Architecture")) { System.out.println("Found Architecture"); for (ThesisSubject subject : focusArea.getThesisSubjects()) { System.out.println("Processing thesis subject: " + subject.getName().getContent(Language.en)); if (subject.getName().getContent(Language.en) .equals("System ductility of fiber-reinforced polymer load-bearing structures")) { System.out.println("Found system ductibity with " + subject.getThesisSubjectOrdersSet().size() + " associated applications"); } } } } } public static void main(String[] args) { processWriteTransaction(new ChangePhdProgramFocusAreas()); System.exit(0); } }