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

import de.ivu.elect.business.ergebnis.entity.Gewaehlt;
import de.ivu.elect.business.kandidatur.entity.Listenkandidatur;
import de.ivu.elect.business.kandidatur.entity.NlWasListenkandidatur;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;

//ELECTVAPP-212
public class NlKandidaturGewaehltUeberVorzugGewaehltColumn extends AbstractKandidaturGewaehltGewaehltColumn {

  private static final long serialVersionUID = 1L;

  public NlKandidaturGewaehltUeberVorzugGewaehltColumn(Messages messages) {
    super(messages);
  }

  @Override
  protected Object getValue(Gewaehlt gewaehlt) {
    return getListenkandidatur(gewaehlt).isUeberVorzugGewaehlt();
  }

  @Override
  public String getHeader() {
    return getMessage("kandidatur.gewaehlt.ueber.vorzug");
  }

  @Override
  public ColumnType getType() {
    return ColumnType.BOOLEAN;
  }

  private NlWasListenkandidatur getListenkandidatur(Gewaehlt gewaehlt) {
    return new NlWasListenkandidatur(gewaehlt.getKandidatur().castTo(Listenkandidatur.class).getEntity());
  }
}
