package de.ivu.elect.business.wahl.boundary;

import java.util.List;

import javax.enterprise.inject.Specializes;

import de.ivu.elect.business.wahl.entity.NlWahlart;
import de.ivu.elect.business.wahl.entity.Wahl;

@Specializes
public class NlSetzeWahlLoginChangeListener extends SetzeWahlLoginChangeListener {

  @Override
  protected boolean isWahlAutomatischSetzen(List<Wahl> verfuegbareWahlen) {
    return super.isWahlAutomatischSetzen(verfuegbareWahlen) /* ELECT-13397 || !verfuegbareWahlen.isEmpty() */ || isAbWahlen(verfuegbareWahlen);
  }

  private boolean isAbWahlen(List<Wahl> verfuegbareWahlen) {
    /* ELECT-13657*/
    return verfuegbareWahlen.stream().anyMatch(NlWahlart.WATERSCHAP::equalsWahlart);
  }
}
