package de.ivu.elect.sitzberechnung.osv.exchange.p22;

import java.util.Arrays;

public enum ZuteilungTyp {
  ERSTE_ZUTEILUNG("FA"),

  DHONDT_ZUTEILUNG("LA"),

  NIEMEYER_ZUTEILUNG("LR"),

  MEHRHEITSSICHERUNGSKLAUSEL("AM"),

  LISTENERSCHOEPFUNG("EX"),

  TRIVIAL("TR");

  private String key;

  ZuteilungTyp(final String key) {
    this.key = key;
  }

  public String getKey() {
    return key;
  }

  public static ZuteilungTyp byKey(String key) {
    return Arrays.stream(values()).filter(zuteilungTyp -> zuteilungTyp.getKey().equals(key)).findAny()
            .orElseThrow(IllegalArgumentException::new);
  }
}