Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 
 package com.esotericsoftware.kryo.serializers;
 
Serializes enums using the enum's name. This prevents invalidating previously serialized byts when the enum order changes.

Author(s):
KwonNam Son <kwon37xi@gmail.com>
public class EnumNameSerializer extends Serializer<Enum> {
	private final Class<? extends EnumenumType;
	private final Serializer stringSerializer;
	public EnumNameSerializer (Kryo kryoClass<? extends Enumtype) {
		this. = type;
	}
	public void write (Kryo kryoOutput outputEnum object) {
		kryo.writeObject(outputobject.name(), );
	}
	public Enum read (Kryo kryoInput inputClass<Enumtype) {
		String name = kryo.readObject(inputString.class);
		try {
			return Enum.valueOf(name);
catch (IllegalArgumentException e) {
			throw new KryoException("Invalid name for enum \"" + .getName() + "\": " + namee);
		}
	}
New to GrepCode? Check out our FAQ X