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

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

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

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

@XmlAccessorType(XmlAccessType.FIELD)
public class ErfassteWahlbeteiligung {

  @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)
  private GebietReferenz gebietReferenz;


  @XmlElementWrapper(name = "wahlbeteiligungen", nillable = false, required = true)
  @XmlElement(required = false, name = "wahlbeteiligung", nillable = true)
  private List<Wahlbeteiligung> wahlbeteiligungen = new ArrayList<>();

  public GebietReferenz getGebietReferenz() {
    return gebietReferenz;
  }

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

  public List<Wahlbeteiligung> getWahlbeteiligungen() {
    return wahlbeteiligungen;
  }

  public void setWahlbeteiligungen(List<Wahlbeteiligung> wahlbeteiligungen) {
    this.wahlbeteiligungen = wahlbeteiligungen;
  }

  public Date getWahldatum() {
    return wahldatum;
  }

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

  public String getWahlart() {
    return wahlart;
  }

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

  public String getWahlterminNummer() {
    return wahlterminNummer;
  }

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