package com.thoughtworks.xstream.converters.enums; import com.thoughtworks.xstream.converters.SingleValueConverter; import com.thoughtworks.xstream.converters.enums.EnumConverter; public class EnumSingleValueConverter> extends EnumConverter implements SingleValueConverter { private Class enumType; public static > SingleValueConverter create(Class enumClass) { return new EnumSingleValueConverter(enumClass); } private EnumSingleValueConverter(Class newEnumType) { this.enumType = newEnumType; } public boolean canConvert(Class type) { return type == enumType; } public Object fromString(String str) { return Enum.valueOf(enumType, str); } public String toString(Object obj) { return obj.toString(); } }