package de.nak.notendb.service;
import java.util.List;
import de.nak.notendb.dao.DozentDAO;
import de.nak.notendb.model.Dozent;
/**
* Implementation des DozentService fuer die Verwaltung von Dozenten
*
* @author Julian Pusch
*
*/
public class DozentServiceImpl implements DozentService {
private DozentDAO dozentDAO;
public void setDozentDAO(DozentDAO dozentDAO) {
this.dozentDAO = dozentDAO;
}
@Override
public Dozent ladeDozent(Long dozentId) throws DozentNichtGefundenException {
Dozent dozent = dozentDAO.lade(dozentId);
if (dozent == null) {
throw new DozentNichtGefundenException();
}
return dozent;
}
@Override
public List<Dozent> ladeAlle() {
return dozentDAO.ladeAlle();
}
@Override
public void speichere(Dozent dozent) throws DozentExistentException {
if (dozentDAO.ladeDozentenPerName(dozent.getNachname(), dozent.getVorname()).isEmpty() == false) {
throw new DozentExistentException();
} else {
dozentDAO.speichere(dozent);
}
}
@Override
public void loescheAlle() {
dozentDAO.loescheAlle();
}
}