
package de.ivu.elect.business.wahl.entity;

public enum Zulassungspruefung {

  AKTIVIERT {

    @Override
    public boolean isAktiviert() {
      return true;
    }

    @Override
    public boolean isNichtzulassenMoeglich() {
      return true;
    }

    @Override
    public boolean isNichtzulassenNachtraeglichMoeglich() {
      return true;
    }
  },
  DEAKTIVIERT_NUR_ZUGELASSENE_WAHLVORSCHLAEGE {

    @Override
    public boolean isAktiviert() {
      return false;
    }

    @Override
    public boolean isNichtzulassenMoeglich() {
      return false;
    }

    @Override
    public boolean isNichtzulassenNachtraeglichMoeglich() {
      return false;
    }
  },
  DEAKTIVIERT_NICHT_ZULASSUNG_MOEGLICH {

    @Override
    public boolean isAktiviert() {
      return false;
    }

    @Override
    public boolean isNichtzulassenMoeglich() {
      return true;
    }

    @Override
    public boolean isNichtzulassenNachtraeglichMoeglich() {
      return true;
    }
  },
  DEAKTIVIERT_NICHT_ZULASSUNG_NACHTRAEGLICH_MOEGLICH {

    @Override
    public boolean isAktiviert() {
      return false;
    }

    @Override
    public boolean isNichtzulassenMoeglich() {
      return false;
    }

    @Override
    public boolean isNichtzulassenNachtraeglichMoeglich() {
      return true;
    }
  };

  private Zulassungspruefung() {
  }

  public abstract boolean isAktiviert();

  public abstract boolean isNichtzulassenMoeglich();

  public abstract boolean isNichtzulassenNachtraeglichMoeglich();
}
