@Override
 public boolean preSave() {
   if (backups == null) {
     Module module = model.getModuleElement().getModule();
     backups = new ArrayList<Backup>();
     File file = model.getFile();
     backups.add(new Backup(file));
     backups.add(new Backup(module.getControllerFor(file)));
     backups.add(new Backup(module.getViewsFolder(file)));
     backups.add(new Backup(module.getNotifier(file)));
     model.destroy();
   } else {
     model.save();
     for (Backup backup : backups) {
       backup.restore();
     }
     backups.clear();
     backups = null;
   }
   return true;
 }