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

import static java.util.Objects.nonNull;

import de.ivu.elect.business.exchange.control.AbstractWahlterminExchangeContext;
import de.ivu.elect.business.wahl.entity.Wahl;
import de.ivu.elect.business.wahl.entity.Wahltermin;

public class EntschaedigungsartExchangeContext extends AbstractWahlterminExchangeContext {

  private static final long serialVersionUID = 1L;

  private final Wahl wahl;

  public EntschaedigungsartExchangeContext(Wahl wahl) {
    this(nonNull(wahl) ? wahl.getWahltermin() : null, wahl);
  }

  public EntschaedigungsartExchangeContext(Wahltermin wahltermin) {
    this(wahltermin, null);
  }

  public EntschaedigungsartExchangeContext(Wahltermin wahltermin, Wahl wahl) {
    super(wahltermin);

    this.wahl = wahl;
  }

  public boolean hasWahl() {
    return nonNull(getWahl());
  }

  public Wahl getWahl() {
    return wahl;
  }
}
