package chat.module.entity; public enum MessageType { unreceived(0), received(1), Unknown(2); private final int value; MessageType(int value) { this.value = value; } public int value() { return value; } public static MessageType parse(String value) { if (value == null) { return Unknown; } value = value.toLowerCase(); if ("unreceived".equals(value)) { return unreceived; } else if ("received".equals(value)) { return received; } return Unknown; } public static MessageType valueOf(int value) { for (MessageType qt : values()) { if (qt.value == value) { return qt; } } throw new IllegalArgumentException("invalid MessageType: " + value); } }