blob: bb4a3198e83cd180782a7c6cc318a50f1920c8e5 [file] [log] [blame]
package edu.uci.ics.asterix.om.types;
import java.util.HashMap;
import java.util.Map;
public class EnumDeserializer<E extends Enum<E> & IEnumSerializer> {
public static final EnumDeserializer<ATypeTag> ATYPETAGDESERIALIZER = new EnumDeserializer<ATypeTag>(ATypeTag.class);
private Map<Byte, E> enumvalMap = new HashMap<Byte, E>();
private EnumDeserializer(Class<E> enumClass) {
for (E constant : enumClass.getEnumConstants()) {
enumvalMap.put(constant.serialize(), constant);
}
}
public E deserialize(byte value) {
return enumvalMap.get(value);
}
}