org.codehaus.jackson.map.deser
Class EnumResolver<T extends Enum<T>>

java.lang.Object
  extended by org.codehaus.jackson.map.deser.EnumResolver<T>

public final class EnumResolver<T extends Enum<T>>
extends Object

Helper class used to resolve String values (either Json Object field names or regular String values) into Java Enum instances.


Field Summary
protected  Class<T> _enumClass
           
protected  T[] _enums
           
protected  HashMap<String,T> _enumsById
           
 
Method Summary
static
<ET extends Enum<ET>>
EnumResolver<ET>
constructFor(Class<ET> enumCls, AnnotationIntrospector ai)
           
static EnumResolver<?> constructUnsafe(Class<?> rawEnumCls, AnnotationIntrospector ai)
          This method is needed because of the dynamic nature of constructing Enum resolvers.
 T findEnum(String key)
           
 T getEnum(int index)
           
 Class<T> getEnumClass()
           
 int lastValidIndex()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_enumClass

protected final Class<T extends Enum<T>> _enumClass

_enums

protected final T extends Enum<T>[] _enums

_enumsById

protected final HashMap<String,T extends Enum<T>> _enumsById
Method Detail

constructFor

public static <ET extends Enum<ET>> EnumResolver<ET> constructFor(Class<ET> enumCls,
                                                                  AnnotationIntrospector ai)

constructUnsafe

public static EnumResolver<?> constructUnsafe(Class<?> rawEnumCls,
                                              AnnotationIntrospector ai)
This method is needed because of the dynamic nature of constructing Enum resolvers.


findEnum

public T findEnum(String key)

getEnum

public T getEnum(int index)

getEnumClass

public Class<T> getEnumClass()

lastValidIndex

public int lastValidIndex()