class FundService {

	@Transactional
	public List<Fund> update(List<Fund> funds, BindingResult errors, RequestInfo requestInfo) {

		try {

			funds = fetchRelated(funds);

			validate(funds, Constants.ACTION_UPDATE, errors);

			if (errors.hasErrors()) {
				throw new CustomBindException(errors);
			}
			for (Fund b : funds) {
				b.update();
			}

		} catch (CustomBindException e) {

			throw new CustomBindException(errors);
		}

		return fundRepository.update(funds, requestInfo);

	}

}