final class com.sun.jmx.mbeanserver.OpenConverter$EnumConverter<T extends java.lang.Enum<T>> extends com.sun.jmx.mbeanserver.OpenConverter
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.sun.jmx.mbeanserver.OpenConverter$EnumConverter
  super_class: com.sun.jmx.mbeanserver.OpenConverter
{
  private final java.lang.Class<T> enumClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/lang/Class<TT;>;

  void <init>(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.jmx.mbeanserver.OpenConverter$EnumConverter this
        start local 1 // java.lang.Class enumClass
         0: .line 528
            aload 0 /* this */
            aload 1 /* enumClass */
            getstatic javax.management.openmbean.SimpleType.STRING:Ljavax/management/openmbean/SimpleType;
            ldc Ljava/lang/String;
            invokespecial com.sun.jmx.mbeanserver.OpenConverter.<init>:(Ljava/lang/reflect/Type;Ljavax/management/openmbean/OpenType;Ljava/lang/Class;)V
         1: .line 529
            aload 0 /* this */
            aload 1 /* enumClass */
            putfield com.sun.jmx.mbeanserver.OpenConverter$EnumConverter.enumClass:Ljava/lang/Class;
         2: .line 530
            return
        end local 1 // java.lang.Class enumClass
        end local 0 // com.sun.jmx.mbeanserver.OpenConverter$EnumConverter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lcom/sun/jmx/mbeanserver/OpenConverter$EnumConverter<TT;>;
            0    3     1  enumClass  Ljava/lang/Class<TT;>;
    Signature: (Ljava/lang/Class<TT;>;)V
    MethodParameters:
           Name  Flags
      enumClass  

  final java.lang.Object toNonNullOpenValue(com.sun.jmx.mbeanserver.MXBeanLookup, java.lang.Object);
    descriptor: (Lcom/sun/jmx/mbeanserver/MXBeanLookup;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.jmx.mbeanserver.OpenConverter$EnumConverter this
        start local 1 // com.sun.jmx.mbeanserver.MXBeanLookup lookup
        start local 2 // java.lang.Object value
         0: .line 533
            aload 2 /* value */
            checkcast java.lang.Enum
            invokevirtual java.lang.Enum.name:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.Object value
        end local 1 // com.sun.jmx.mbeanserver.MXBeanLookup lookup
        end local 0 // com.sun.jmx.mbeanserver.OpenConverter$EnumConverter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lcom/sun/jmx/mbeanserver/OpenConverter$EnumConverter<TT;>;
            0    1     1  lookup  Lcom/sun/jmx/mbeanserver/MXBeanLookup;
            0    1     2   value  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      lookup  
      value   

  public final java.lang.Object fromNonNullOpenValue(com.sun.jmx.mbeanserver.MXBeanLookup, java.lang.Object);
    descriptor: (Lcom/sun/jmx/mbeanserver/MXBeanLookup;Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.jmx.mbeanserver.OpenConverter$EnumConverter this
        start local 1 // com.sun.jmx.mbeanserver.MXBeanLookup lookup
        start local 2 // java.lang.Object value
         0: .line 541
            aload 0 /* this */
            getfield com.sun.jmx.mbeanserver.OpenConverter$EnumConverter.enumClass:Ljava/lang/Class;
            aload 2 /* value */
            checkcast java.lang.String
            invokestatic java.lang.Enum.valueOf:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
         1: areturn
         2: .line 542
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 3 /* e */
        start local 3 // java.lang.Exception e
         3: .line 543
            new java.lang.StringBuilder
            dup
            ldc "Cannot convert to enum: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         4: .line 544
            aload 2 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         5: .line 543
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 544
            aload 3 /* e */
         7: .line 543
            invokestatic com.sun.jmx.mbeanserver.OpenConverter$EnumConverter.invalidObjectException:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/io/InvalidObjectException;
            athrow
        end local 3 // java.lang.Exception e
        end local 2 // java.lang.Object value
        end local 1 // com.sun.jmx.mbeanserver.MXBeanLookup lookup
        end local 0 // com.sun.jmx.mbeanserver.OpenConverter$EnumConverter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/sun/jmx/mbeanserver/OpenConverter$EnumConverter<TT;>;
            0    8     1  lookup  Lcom/sun/jmx/mbeanserver/MXBeanLookup;
            0    8     2   value  Ljava/lang/Object;
            3    8     3       e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.Exception
    Exceptions:
      throws java.io.InvalidObjectException
    MethodParameters:
        Name  Flags
      lookup  
      value   
}
Signature: <T:Ljava/lang/Enum<TT;>;>Lcom/sun/jmx/mbeanserver/OpenConverter;
SourceFile: "OpenConverter.java"
NestHost: com.sun.jmx.mbeanserver.OpenConverter
InnerClasses:
  private final EnumConverter = com.sun.jmx.mbeanserver.OpenConverter$EnumConverter of com.sun.jmx.mbeanserver.OpenConverter