package de.ivu.elect.presentation.gruppe.table;

import de.ivu.elect.business.gruppe.entity.Gruppe;
import de.ivu.elect.business.wahlvorschlag.boundary.AbstractListeDAO;
import de.ivu.elect.business.wahlvorschlag.entity.NlListe;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;

public class NlGeschlechtVeroeffentlichenColumn extends AbstractGruppeColumn<Gruppe> {

    private static final long serialVersionUID = 1L;

    protected NlGeschlechtVeroeffentlichenColumn(Messages messages, AbstractListeDAO listeDAO) {
        super("Gruppe-Geschlecht-veroeffentlichen", messages, "gruppe.search.geschlecht.veroeffentlichen.column.header", ColumnType.BOOLEAN,
                gruppe -> listeDAO.findByGruppe(gruppe).stream().findFirst().map(NlListe::isPublishGender).orElse(false));
    }
}
