/** * Saves and stops all active tasks * * @return OpenmrsMemento */ public OpenmrsMemento saveToMemento() { Set<Integer> tasks = new HashSet<Integer>(); for (TaskDefinition task : getScheduledTasks()) { tasks.add(task.getId()); try { shutdownTask(task); } catch (SchedulerException e) { // just swallow exceptions log.debug("Failed to stop task while saving memento " + task.getName(), e); } } TimerSchedulerMemento memento = new TimerSchedulerMemento(tasks); memento.saveErrorTasks(); return memento; }