Java tutorial
/** * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * $Id$ Profesion.java * Universidad de los Andes (Bogot - Colombia) * Departamento de Ingeniera de Sistemas y Computacin * Licenciado bajo el esquema Academic Free License version 3.0 * * Ejercicio: Muebles de los Alpes * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ package models; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; import org.apache.commons.lang3.StringUtils; import java.util.HashMap; import java.util.Map; /** * Enumeracin con las posibles profesiones en el sistema * Created by scvalencia606 on 7/31/15. */ public enum Profesion { Abogado, Arquitecto, Administrador, Diseador, Economista, Estudiante, Mdico, Ingeniero; private static Map<String, Profesion> namesMap = new HashMap<String, Profesion>(8); static { namesMap.put("abogado", Abogado); namesMap.put("arquitecto", Arquitecto); namesMap.put("administrador", Administrador); namesMap.put("diseador", Diseador); namesMap.put("economista", Economista); namesMap.put("estudiante", Estudiante); namesMap.put("mdico", Mdico); namesMap.put("ingeniero", Ingeniero); } @JsonCreator public static Profesion forValue(String value) { return namesMap.get(StringUtils.lowerCase(value)); } @JsonValue public String toValue() { for (Map.Entry<String, Profesion> entry : namesMap.entrySet()) { if (entry.getValue() == this) return entry.getKey(); } return null; } }