package no.norge.data.oreg.javazonetalk;

/* metamodel_version: 1.11.0 */
/* version: 0.1.0 */
import java.util.Map;
import java.util.HashMap;
import java.util.Collections;

import com.fasterxml.jackson.annotation.JsonCreator;

/**
 * Dublin Core Frequency-vokabularet frå EU Publications Office. Kjelde: http://publications.europa.eu/resource/authority/frequency/
 */
public enum DCTFrequency {

  /**
   * Kontinuerleg
   */
  CONTINUOUS("CONTINUOUS"),

  /**
   * Dagleg
   */
  DAILY("DAILY"),

  /**
   * To gonger dagleg
   */
  DAILY_2("DAILY_2"),

  /**
   * Annakvar veke
   */
  BIWEEKLY("BIWEEKLY"),

  /**
   * Vekentleg
   */
  WEEKLY("WEEKLY"),

  /**
   * To gonger per veke
   */
  WEEKLY_2("WEEKLY_2"),

  /**
   * Tre gonger per veke
   */
  WEEKLY_3("WEEKLY_3"),

  /**
   * Annakvar månad
   */
  BIMONTHLY("BIMONTHLY"),

  /**
   * Månadleg
   */
  MONTHLY("MONTHLY"),

  /**
   * To gonger per månad
   */
  MONTHLY_2("MONTHLY_2"),

  /**
   * Tre gonger per månad
   */
  MONTHLY_3("MONTHLY_3"),

  /**
   * Kvartalsvis
   */
  QUARTERLY("QUARTERLY"),

  /**
   * Årleg
   */
  ANNUAL("ANNUAL"),

  /**
   * To gonger årleg
   */
  ANNUAL_2("ANNUAL_2"),

  /**
   * Tre gonger årleg
   */
  ANNUAL_3("ANNUAL_3"),

  /**
   * Annakvar år
   */
  BIENNIAL("BIENNIAL"),

  /**
   * Kvart tredje år
   */
  TRIENNIAL("TRIENNIAL"),

  /**
   * Uregelmessig
   */
  IRREG("IRREG"),

  /**
   * Ukjend
   */
  UNKNOWN("UNKNOWN"),

  /**
   * Kontinuerleg oppdatert
   */
  UPDATE_CONT("UPDATE_CONT"),

  /**
   * Aldri
   */
  NEVER("NEVER"),

  /**
   * Anna
   */
  OTHER("OTHER");

  private final static Map<String, DCTFrequency> MAP;

  static {
    Map<String, DCTFrequency> map = new HashMap<String, DCTFrequency>();
    for ( DCTFrequency value : DCTFrequency.values() ) {
      map.put(value.toString(), value);
    }

    MAP = Collections.unmodifiableMap(map);
  }

  private final String repr;

  DCTFrequency(String repr) {
    this.repr = repr;
  }

  @Override
  public String toString() {
    return repr;
  }

  @JsonCreator
  public static DCTFrequency fromString(String v) {
    return MAP.get(v);
  }

}