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

import java.util.Arrays;
import java.util.List;

public enum NiederschriftArt {

  // Hinweis, sollten hier neue Arten hinzukommen, diese auch in NiederschriftUebersichtDocument und NiederschriftDocument ergaenzen
  NIEDERSCHRIFT("N") {

    @Override
    public boolean isNiederschrift() {
      return true;
    }
  },
  SCHNELLMELDUNG("S") {

    @Override
    public boolean isSchnellmneldung() {
      return true;
    }
  },
  VERHANDLUNGSTASCHE("V") {

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

  private final String kuerzel;

  private NiederschriftArt(String kuerzel) {
    this.kuerzel = kuerzel;
  }

  public static final List<NiederschriftArt> KORRIGIERBARE_NIEDERSCHRIFT_ARTEN = Arrays.asList(NIEDERSCHRIFT);

  public boolean isKorrekturKannErfasstWerden() {
    return KORRIGIERBARE_NIEDERSCHRIFT_ARTEN.contains(this);
  }

  public boolean isNiederschrift() {
    return false;
  }

  public boolean isSchnellmneldung() {
    return false;
  }

  public boolean isVerhandlungstasche() {
    return false;
  }

  /**
   * Das Kürzel wird als kurzer Schlüssel genutzt, etwa bei der Erzeugung eines Kürzels zur Schnelleingabe für Dokumente
   */
  public String getKuerzel() {
    return kuerzel;
  }
}
