package de.ivu.elect.presentation.wahl;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

import javax.enterprise.inject.Specializes;
import javax.inject.Inject;

import de.ivu.elect.business.CurrentCustomer;
import de.ivu.elect.business.wahl.entity.NlWahlart;
import de.ivu.elect.business.wahl.entity.Wahlart;

@Specializes
public class NlWahlCreateWahlartFilter extends WahlCreateWahlartFilter{
  private static final long serialVersionUID = 1L;

  @Inject
  private transient CurrentCustomer currentCustomer;


  @Override
  public List<Wahlart> filter(List<Wahlart> wahlarten) {
    // Nur Wahlendefinitionswahlarten anbieten
    // Zuert muss die Wahldefinition erstellt werden, die anderen Wahlarten werden beim Import von EML 110a angelegt

    // TODO ELECT-9924
    return super.filter(wahlarten).stream()
        .filter(NlWahlart::isZurAuswahlInWus)
        .collect(Collectors.toCollection(() -> new ArrayList<>(wahlarten.size())));

  }
}
