package de.ivu.elect.interfaces.was.replikation;

import java.util.Date;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;

import de.ivu.elect.interfaces.core.GebietReferenz;

/**
 */

@XmlAccessorType(XmlAccessType.FIELD)
public class GebietUpdate {

  @XmlElement(required = false) // Optional nur für Abwärtskompatibilität, Feld ist Pflicht ELECTMUC-2011
  private String wahlterminNummer;

  @XmlElement(required = true)
  private Date wahldatum;

  @XmlElement(required = true)
  private String wahlart;

  @XmlElement(required = true, namespace = "http://www.ivu.de/ELECT")
  private GebietReferenz gebietReferenz;

  @XmlElement(required = true)
  private Ergebniseingabestatus eingabestatusVorlaeufig;

  @XmlElement(required = true)
  private Ergebniseingabestatus eingabestatusEndgueltig;

  @XmlElement(required = true)
  private Boolean briefwahlInUrneErfassen;

  @XmlElement(required = true)
  private Erfassungsbesonderheit erfassungsbesonderheit;

  @XmlElement(required = false)
  private String textFuerPraesentation;

  @XmlElement(required = false)
  private Long anzahlWahlberechtigterA1;

  @XmlElement(required = false)
  private Long anzahlWahlberechtigterA2;

  @XmlElement(required = false)
  private Long anzahlWahlberechtigterA3;

  @XmlElement(required = false) // WASDE-1302 nicht required wegen Abwärtskompatibilität
  private String customData;

  public GebietReferenz getGebietReferenz() {
    return gebietReferenz;
  }

  public void setGebietReferenz(GebietReferenz gebietReferenz) {
    this.gebietReferenz = gebietReferenz;
  }

  public Long getAnzahlWahlberechtigterA1() {
    return anzahlWahlberechtigterA1;
  }

  public void setAnzahlWahlberechtigterA1(Long anzahlWahlberechtigterA1) {
    this.anzahlWahlberechtigterA1 = anzahlWahlberechtigterA1;
  }

  public Long getAnzahlWahlberechtigterA2() {
    return anzahlWahlberechtigterA2;
  }

  public void setAnzahlWahlberechtigterA2(Long anzahlWahlberechtigterA2) {
    this.anzahlWahlberechtigterA2 = anzahlWahlberechtigterA2;
  }

  public Long getAnzahlWahlberechtigterA3() {
    return anzahlWahlberechtigterA3;
  }

  public void setAnzahlWahlberechtigterA3(Long anzahlWahlberechtigterA3) {
    this.anzahlWahlberechtigterA3 = anzahlWahlberechtigterA3;
  }

  public Boolean getBriefwahlInUrneErfassen() {
    return briefwahlInUrneErfassen;
  }

  public void setBriefwahlInUrneErfassen(Boolean briefwahlInUrneErfassen) {
    this.briefwahlInUrneErfassen = briefwahlInUrneErfassen;
  }

  public Ergebniseingabestatus getEingabestatusEndgueltig() {
    return eingabestatusEndgueltig;
  }

  public void setEingabestatusEndgueltig(Ergebniseingabestatus eingabestatusEndgueltig) {
    this.eingabestatusEndgueltig = eingabestatusEndgueltig;
  }

  public Ergebniseingabestatus getEingabestatusVorlaeufig() {
    return eingabestatusVorlaeufig;
  }

  public void setEingabestatusVorlaeufig(Ergebniseingabestatus eingabestatusVorlaeufig) {
    this.eingabestatusVorlaeufig = eingabestatusVorlaeufig;
  }

  public Erfassungsbesonderheit getErfassungsbesonderheit() {
    return erfassungsbesonderheit;
  }

  public void setErfassungsbesonderheit(Erfassungsbesonderheit erfassungsbesonderheit) {
    this.erfassungsbesonderheit = erfassungsbesonderheit;
  }

  public String getTextFuerPraesentation() {
    return textFuerPraesentation;
  }

  public void setTextFuerPraesentation(String textFuerPraesentation) {
    this.textFuerPraesentation = textFuerPraesentation;
  }

  public String getWahlart() {
    return wahlart;
  }

  public void setWahlart(String wahlart) {
    this.wahlart = wahlart;
  }

  public Date getWahldatum() {
    return wahldatum;
  }

  public void setWahldatum(Date wahldatum) {
    this.wahldatum = wahldatum;
  }

  public String getCustomData() {
    return customData;
  }

  public void setCustomData(String customData) {
    this.customData = customData;
  }

  public String getWahlterminNummer() {
    return wahlterminNummer;
  }

  public void setWahlterminNummer(String wahlterminNummer) {
    this.wahlterminNummer = wahlterminNummer;
  }
}
