
package de.ivu.elect.presentation.ergebnis.dokumente.gesamtergebnis.berechner;

import de.ivu.elect.business.ergebnis.control.ErgebnisDaten;
import de.ivu.elect.business.internet.control.GebietUndStimmabgabeart;
import de.ivu.elect.presentation.ergebnis.dokumente.gesamtergebnis.StimmenAktuellMitVorperiode;

/**
 *  on 06.09.2017.
 */
public class UngueltigeErstUndZweitstimmenAktuellMitVorperiodeBerechner
    extends
      AbstractErstUndZweitstimmenAktuellMitVorperiodeBerechner {

  private final ErgebnisDaten ergebnisDaten;
  private final GebietUndStimmabgabeart gebietUndStimmabgabeart;

  public UngueltigeErstUndZweitstimmenAktuellMitVorperiodeBerechner(ErgebnisDaten ergebnisDaten,
      GebietUndStimmabgabeart gebietUndStimmabgabeart) {
    this.ergebnisDaten = ergebnisDaten;
    this.gebietUndStimmabgabeart = gebietUndStimmabgabeart;
  }

  @Override
  Long getErststimmenAktuell() {
    return ergebnisDaten.getErststimmenAktuellUngueltige(gebietUndStimmabgabeart);
  }

  @Override
  Long getErststimmenVorperiode() {
    return ergebnisDaten.getErststimmenVorperiodeUngueltige(gebietUndStimmabgabeart);
  }

  @Override
  Long getZweitstimmenAktuell() {
    return ergebnisDaten.getZweitstimmenAktuellUngueltige(gebietUndStimmabgabeart);
  }

  @Override
  Long getZweitstimmenVorperiode() {
    return ergebnisDaten.getZweitstimmenVorperiodeUngueltige(gebietUndStimmabgabeart);
  }

  public StimmenAktuellMitVorperiode getStimmenAktuellMitVorperiode() {
    return new StimmenAktuellMitVorperiode(getErststimmenAktuell(), getErststimmenVorperiode(),
        getZweitstimmenAktuell(), getZweitstimmenVorperiode());
  }
}
