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;

/**
 * EU Access Right-vokabularet frå Publications Office. Kjelde: http://publications.europa.eu/resource/authority/access-right/
 */
public enum EUAccessRight {

  /**
   * Offentleg tilgjengeleg - ingen tilgangsrestriksjonar
   */
  PUBLIC("PUBLIC"),

  /**
   * Avgrensa tilgang - krev særskilde vilkår eller godkjenning
   */
  RESTRICTED("RESTRICTED"),

  /**
   * Ikkje offentleg - konfidensielt eller lukka
   */
  NON_PUBLIC("NON_PUBLIC");

  private final static Map<String, EUAccessRight> MAP;

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

    MAP = Collections.unmodifiableMap(map);
  }

  private final String repr;

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

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

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

}