class RecoveryService {

    @Transactional
    public List<Recovery> update(List<Recovery> recoveries, BindingResult errors,
                                 RequestInfo requestInfo) {

        try {

            recoveries = fetchRelated(recoveries);

            validate(recoveries, Constants.ACTION_UPDATE, errors);

            if (errors.hasErrors()) {
                throw new CustomBindException(errors);
            }

        } catch (CustomBindException e) {

            throw new CustomBindException(errors);
        }

        return recoveryRepository.update(recoveries, requestInfo);

    }

}