How to implement reverse-lookup in enum?
public enum Status {
    WAITING(0),
    READY(1),
    SKIPPED(-1),
    COMPLETED(5);
    private int code;
    private Status(int code) {
        this.code = code;
    }
    public int getCode() { return code; }
    public static Status get(int code) {
        switch(code) {
            case  0: return WAITING;
            case  1: return READY;
            case -1: return SKIPPED;
            case  5: return COMPLETED;
        }
        return null;
    }
}
