class CycleService {

  @Transactional
  public Cycle updateCycle(Cycle updatedCycle) {
    Cycle referencedCycle = cycleRepository.findByIdOrThrow(updatedCycle.getId());

    updateReferencedCycle(updatedCycle, referencedCycle);

    logger.info("Updated cycle with id: " + referencedCycle.getId());
    return cycleRepository.save(referencedCycle);
  }

  @Autowired public  CycleService(
      CyclePreparationCloningService cyclePreparationCloningService,
      CycleRepository cycleRepository,
      CompanyHistoryRepository companyHistoryRepository,
      CompanyService companyService);

}