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

import static java.util.Objects.nonNull;

import de.ivu.elect.business.wahlvorschlagsperson.entity.WahlvorschlagsPerson;
import de.ivu.elect.business.wahlvorschlagsperson.entity.WahlvorschlagsPersonConstants;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;
import de.ivu.elect.presentation.personenpruefung.form.CorePersonendatenWahlvorschlagProperty;

public class WahlvorschlagsPersonWahlvorschlagNameColumn<E extends WahlvorschlagsPerson> extends AbstractWahlvorschlagsPersonColumn<E> {

  private static final long serialVersionUID = 1L;

  public WahlvorschlagsPersonWahlvorschlagNameColumn(Messages messages) {
    super("WahlvorschlagsPerson-WahlvorschlagName", messages, WahlvorschlagsPersonConstants.MESSAGE_KEY_WAHLVORSCHLAG_ID_EINZAHL, ColumnType.STRING, wahlvorschlagsPerson -> {
      if (nonNull(wahlvorschlagsPerson) && wahlvorschlagsPerson.hasWahlvorschlag()) {
        return CorePersonendatenWahlvorschlagProperty.getValueFormatted(wahlvorschlagsPerson.getWahlvorschlag());
      }

      return "";
    });
  }
}
