// find release
Release release = releaseRepository.findByPersistanceId(releasePersistanceId);
// if release is not found
if (release == null) {
Errors errros = AgilePlanningObjectFactory.getErrors();
errros.reject("release.doesntExistsInDatabase");
return errros;
}
// recherche de chaque story
for (Integer id : storyPersistanceIds) {
Story story = storyRepository.findByPersistanceId(id);
// et ajout à la liste des story.
release.getStories().remove(story);
}
// mise à jour du persistance version
release.setPersistanceVersion(releasePersistanceVersion);
// Validation de la release
Errors errors = releaseValidator.validate(release);
// si pas d'erreur, on enregistre
if (!errors.hasErrors()) {
// sinon, sauvegarde dans la repository
releaseRepository.addOrUpdate(release);
}
// retours de la structure d'erreur