package fr.plil.sio.examen.services; import fr.plil.sio.examen.api.Comment; import fr.plil.sio.examen.api.Owner; import fr.plil.sio.examen.repositories.CommentRepository; import fr.plil.sio.examen.repositories.OwnerRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @Service public class OwnerServiceImpl implements OwnerService { @Autowired private OwnerRepository ownerRepository; @Autowired private CommentRepository commentRepository; @Override public void delete(Owner owner) { if(owner == null) throw new IllegalArgumentException("Owner must be not null"); if(owner.getId() == null) throw new IllegalArgumentException("Owner doesn't exist"); for(Comment c : owner.getComments()) commentRepository.delete(c); ownerRepository.delete(owner); } @Override public Owner create(String name) { if(name == null) { throw new IllegalArgumentException("name must be not null"); } Owner owner = new Owner(); owner.setName(name); ownerRepository.save(owner); return owner; } }