
package de.ivu.elect.business.person.control;

import java.util.Objects;

import de.ivu.elect.business.person.entity.PersonenVerknuepfungBase;
import de.ivu.elect.business.wahl.entity.Wahl;
import de.ivu.elect.business.wahl.entity.Wahltermin;

public class VerknuepfungenInnerhalbWahlOderWahlterminFilter implements PersonenVerknuepfungFilter {

  public VerknuepfungenInnerhalbWahlOderWahlterminFilter() {
    super();
  }

  @Override
  public boolean isAccept(PersonenVerknuepfungBase verknuepfung) {
    Wahl wahl1 = verknuepfung.getPerson1().getWahl();
    Wahl wahl2 = verknuepfung.getPerson2().getWahl();

    if (wahl1 != null || wahl2 != null) {
      return Objects.equals(wahl1, wahl2);
    }

    Wahltermin wahltermin1 = verknuepfung.getPerson1().getWahltermin();
    Wahltermin wahltermin2 = verknuepfung.getPerson2().getWahltermin();

    return Objects.equals(wahltermin1, wahltermin2);
  }
}
