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

import java.util.ArrayList;
import java.util.Collection;

import de.ivu.elect.business.person.entity.Personendaten;
import de.ivu.elect.business.staat.entity.Staat;
import de.ivu.elect.business.staat.entity.StaatConstants;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;

public class PersonendatenStaatsangehoerigkeitColumn<E extends Personendaten> extends AbstractPersonendatenColumn<E> {

  private static final long serialVersionUID = 1L;

  public PersonendatenStaatsangehoerigkeitColumn(Messages messages) {
    super("Personendaten-Staatsangehoerigkeit", messages, StaatConstants.MESSAGE_KEY_NAME_STAATSANGEHOERIGKEIT_EINZAHL, ColumnType.COLLECTION, personendaten -> {
      Collection<String> result = new ArrayList<>();

      if (personendaten != null) {
        for (Staat staatsangehoerigkeit : personendaten.getStaatsangehoerigkeitenSorted()) {
          result.add(staatsangehoerigkeit.getNameStaatsangehoerigkeit());
        }
      }

      return result;
    });
  }
}
