abstract class org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase extends org.glassfish.gmbal.impl.TypeConverterImpl
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase
  super_class: org.glassfish.gmbal.impl.TypeConverterImpl
{
  private final org.glassfish.gmbal.impl.TypeConverter keyTypeConverter;
    descriptor: Lorg/glassfish/gmbal/impl/TypeConverter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.glassfish.gmbal.impl.TypeConverter valueTypeConverter;
    descriptor: Lorg/glassfish/gmbal/impl/TypeConverter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.glassfish.gmbal.typelib.EvaluatedType, org.glassfish.gmbal.impl.TypeConverter, org.glassfish.gmbal.impl.TypeConverter);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedType;Lorg/glassfish/gmbal/impl/TypeConverter;Lorg/glassfish/gmbal/impl/TypeConverter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedType dataType
        start local 2 // org.glassfish.gmbal.impl.TypeConverter keyTypeConverter
        start local 3 // org.glassfish.gmbal.impl.TypeConverter valueTypeConverter
         0: .line 954
            aload 0 /* this */
            aload 1 /* dataType */
            aload 2 /* keyTypeConverter */
         1: .line 955
            aload 3 /* valueTypeConverter */
         2: .line 954
            invokestatic org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase.makeMapTabularType:(Lorg/glassfish/gmbal/impl/TypeConverter;Lorg/glassfish/gmbal/impl/TypeConverter;)Ljavax/management/openmbean/TabularType;
            invokespecial org.glassfish.gmbal.impl.TypeConverterImpl.<init>:(Lorg/glassfish/gmbal/typelib/EvaluatedType;Ljavax/management/openmbean/OpenType;)V
         3: .line 956
            aload 0 /* this */
            aload 2 /* keyTypeConverter */
            putfield org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase.keyTypeConverter:Lorg/glassfish/gmbal/impl/TypeConverter;
         4: .line 957
            aload 0 /* this */
            aload 3 /* valueTypeConverter */
            putfield org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase.valueTypeConverter:Lorg/glassfish/gmbal/impl/TypeConverter;
         5: .line 958
            return
        end local 3 // org.glassfish.gmbal.impl.TypeConverter valueTypeConverter
        end local 2 // org.glassfish.gmbal.impl.TypeConverter keyTypeConverter
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedType dataType
        end local 0 // org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    6     0                this  Lorg/glassfish/gmbal/impl/TypeConverterImpl$TypeConverterMapBase;
            0    6     1            dataType  Lorg/glassfish/gmbal/typelib/EvaluatedType;
            0    6     2    keyTypeConverter  Lorg/glassfish/gmbal/impl/TypeConverter;
            0    6     3  valueTypeConverter  Lorg/glassfish/gmbal/impl/TypeConverter;
    MethodParameters:
                    Name  Flags
      dataType            
      keyTypeConverter    
      valueTypeConverter  

  private static javax.management.openmbean.TabularType makeMapTabularType(org.glassfish.gmbal.impl.TypeConverter, org.glassfish.gmbal.impl.TypeConverter);
    descriptor: (Lorg/glassfish/gmbal/impl/TypeConverter;Lorg/glassfish/gmbal/impl/TypeConverter;)Ljavax/management/openmbean/TabularType;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=12, args_size=2
        start local 0 // org.glassfish.gmbal.impl.TypeConverter firstTc
        start local 1 // org.glassfish.gmbal.impl.TypeConverter secondTc
         0: .line 963
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* firstTc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "->"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* secondTc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* mapType */
        start local 2 // java.lang.String mapType
         1: .line 965
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "key"
            aastore
            dup
            iconst_1
            ldc "value"
            aastore
            astore 3 /* itemNames */
        start local 3 // java.lang.String[] itemNames
         2: .line 967
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
         3: .line 968
            aload 2 /* mapType */
         4: .line 967
            invokeinterface org.glassfish.gmbal.impl.Exceptions.rowTypeDescription:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* description */
        start local 4 // java.lang.String description
         5: .line 970
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
         6: .line 971
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 2 /* mapType */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.keyFieldDescription:(Ljava/lang/String;)Ljava/lang/String;
            aastore
            dup
            iconst_1
         7: .line 972
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 2 /* mapType */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.valueFieldDescription:(Ljava/lang/String;)Ljava/lang/String;
            aastore
         8: .line 970
            astore 5 /* itemDescriptions */
        start local 5 // java.lang.String[] itemDescriptions
         9: .line 975
            iconst_2
            anewarray javax.management.openmbean.OpenType
            dup
            iconst_0
        10: .line 976
            aload 0 /* firstTc */
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.getManagedType:()Ljavax/management/openmbean/OpenType;
            aastore
            dup
            iconst_1
            aload 1 /* secondTc */
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.getManagedType:()Ljavax/management/openmbean/OpenType;
            aastore
        11: .line 975
            astore 6 /* itemTypes */
        start local 6 // javax.management.openmbean.OpenType[] itemTypes
        12: .line 980
            new javax.management.openmbean.CompositeType
            dup
            aload 2 /* mapType */
        13: .line 981
            aload 4 /* description */
            aload 3 /* itemNames */
            aload 5 /* itemDescriptions */
            aload 6 /* itemTypes */
        14: .line 980
            invokespecial javax.management.openmbean.CompositeType.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljavax/management/openmbean/OpenType;)V
            astore 7 /* rowType */
        start local 7 // javax.management.openmbean.CompositeType rowType
        15: .line 983
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "key"
            aastore
            astore 8 /* keys */
        start local 8 // java.lang.String[] keys
        16: .line 985
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 2 /* mapType */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.tableName:(Ljava/lang/String;)Ljava/lang/String;
        17: .line 984
            astore 9 /* tableName */
        start local 9 // java.lang.String tableName
        18: .line 987
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 2 /* mapType */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.tableDescription:(Ljava/lang/String;)Ljava/lang/String;
        19: .line 986
            astore 10 /* tableDescription */
        start local 10 // java.lang.String tableDescription
        20: .line 989
            new javax.management.openmbean.TabularType
            dup
            aload 9 /* tableName */
        21: .line 990
            aload 10 /* tableDescription */
            aload 7 /* rowType */
            aload 8 /* keys */
        22: .line 989
            invokespecial javax.management.openmbean.TabularType.<init>:(Ljava/lang/String;Ljava/lang/String;Ljavax/management/openmbean/CompositeType;[Ljava/lang/String;)V
            astore 11 /* result */
        start local 11 // javax.management.openmbean.TabularType result
        23: .line 992
            aload 11 /* result */
        24: areturn
        end local 11 // javax.management.openmbean.TabularType result
        end local 10 // java.lang.String tableDescription
        end local 9 // java.lang.String tableName
        end local 8 // java.lang.String[] keys
        end local 7 // javax.management.openmbean.CompositeType rowType
        25: .line 993
      StackMap locals: org.glassfish.gmbal.impl.TypeConverter org.glassfish.gmbal.impl.TypeConverter java.lang.String java.lang.String[] java.lang.String java.lang.String[] javax.management.openmbean.OpenType[]
      StackMap stack: javax.management.openmbean.OpenDataException
            astore 7 /* exc */
        start local 7 // javax.management.openmbean.OpenDataException exc
        26: .line 994
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 7 /* exc */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.exceptionInMakeMapTabularType:(Ljava/lang/Exception;)Ljava/lang/IllegalArgumentException;
            athrow
        end local 7 // javax.management.openmbean.OpenDataException exc
        end local 6 // javax.management.openmbean.OpenType[] itemTypes
        end local 5 // java.lang.String[] itemDescriptions
        end local 4 // java.lang.String description
        end local 3 // java.lang.String[] itemNames
        end local 2 // java.lang.String mapType
        end local 1 // org.glassfish.gmbal.impl.TypeConverter secondTc
        end local 0 // org.glassfish.gmbal.impl.TypeConverter firstTc
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   27     0           firstTc  Lorg/glassfish/gmbal/impl/TypeConverter;
            0   27     1          secondTc  Lorg/glassfish/gmbal/impl/TypeConverter;
            1   27     2           mapType  Ljava/lang/String;
            2   27     3         itemNames  [Ljava/lang/String;
            5   27     4       description  Ljava/lang/String;
            9   27     5  itemDescriptions  [Ljava/lang/String;
           12   27     6         itemTypes  [Ljavax/management/openmbean/OpenType;
           15   25     7           rowType  Ljavax/management/openmbean/CompositeType;
           16   25     8              keys  [Ljava/lang/String;
           18   25     9         tableName  Ljava/lang/String;
           20   25    10  tableDescription  Ljava/lang/String;
           23   25    11            result  Ljavax/management/openmbean/TabularType;
           26   27     7               exc  Ljavax/management/openmbean/OpenDataException;
      Exception table:
        from    to  target  type
          12    24      25  Class javax.management.openmbean.OpenDataException
    MethodParameters:
          Name  Flags
      firstTc   final
      secondTc  final

  protected abstract org.glassfish.gmbal.impl.TypeConverterImpl$Table getTable(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/glassfish/gmbal/impl/TypeConverterImpl$Table;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      obj   

  public java.lang.Object toManagedEntity(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=13, args_size=2
        start local 0 // org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase this
        start local 1 // java.lang.Object obj
         0: .line 1003
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase.getTable:(Ljava/lang/Object;)Lorg/glassfish/gmbal/impl/TypeConverterImpl$Table;
            astore 2 /* table */
        start local 2 // org.glassfish.gmbal.impl.TypeConverterImpl$Table table
         1: .line 1004
            aload 0 /* this */
            invokevirtual org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase.getManagedType:()Ljavax/management/openmbean/OpenType;
            checkcast javax.management.openmbean.TabularType
            astore 3 /* ttype */
        start local 3 // javax.management.openmbean.TabularType ttype
         2: .line 1005
            aload 3 /* ttype */
            invokevirtual javax.management.openmbean.TabularType.getRowType:()Ljavax/management/openmbean/CompositeType;
            astore 4 /* ctype */
        start local 4 // javax.management.openmbean.CompositeType ctype
         3: .line 1006
            new javax.management.openmbean.TabularDataSupport
            dup
            aload 3 /* ttype */
            invokespecial javax.management.openmbean.TabularDataSupport.<init>:(Ljavax/management/openmbean/TabularType;)V
            astore 5 /* result */
        start local 5 // javax.management.openmbean.TabularData result
         4: .line 1007
            aload 2 /* table */
            invokeinterface org.glassfish.gmbal.impl.TypeConverterImpl$Table.iterator:()Ljava/util/Iterator;
            astore 7
            goto 18
      StackMap locals: org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase java.lang.Object org.glassfish.gmbal.impl.TypeConverterImpl$Table javax.management.openmbean.TabularType javax.management.openmbean.CompositeType javax.management.openmbean.TabularData top java.util.Iterator
      StackMap stack:
         5: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 6 /* key */
        start local 6 // java.lang.Object key
         6: .line 1009
            aload 2 /* table */
            aload 6 /* key */
            invokeinterface org.glassfish.gmbal.impl.TypeConverterImpl$Table.get:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 8 /* value */
        start local 8 // java.lang.Object value
         7: .line 1011
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase.keyTypeConverter:Lorg/glassfish/gmbal/impl/TypeConverter;
            aload 6 /* key */
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.toManagedEntity:(Ljava/lang/Object;)Ljava/lang/Object;
         8: .line 1010
            astore 9 /* mappedKey */
        start local 9 // java.lang.Object mappedKey
         9: .line 1013
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase.valueTypeConverter:Lorg/glassfish/gmbal/impl/TypeConverter;
            aload 8 /* value */
            invokeinterface org.glassfish.gmbal.impl.TypeConverter.toManagedEntity:(Ljava/lang/Object;)Ljava/lang/Object;
        10: .line 1012
            astore 10 /* mappedValue */
        start local 10 // java.lang.Object mappedValue
        11: .line 1014
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 11 /* items */
        start local 11 // java.util.Map items
        12: .line 1015
            aload 11 /* items */
            ldc "key"
            aload 9 /* mappedKey */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        13: .line 1016
            aload 11 /* items */
            ldc "value"
            aload 10 /* mappedValue */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        14: .line 1017
            new javax.management.openmbean.CompositeDataSupport
            dup
        15: .line 1018
            aload 4 /* ctype */
            aload 11 /* items */
        16: .line 1017
            invokespecial javax.management.openmbean.CompositeDataSupport.<init>:(Ljavax/management/openmbean/CompositeType;Ljava/util/Map;)V
            astore 12 /* cdata */
        start local 12 // javax.management.openmbean.CompositeDataSupport cdata
        17: .line 1019
            aload 5 /* result */
            aload 12 /* cdata */
            invokeinterface javax.management.openmbean.TabularData.put:(Ljavax/management/openmbean/CompositeData;)V
        end local 12 // javax.management.openmbean.CompositeDataSupport cdata
        end local 11 // java.util.Map items
        end local 10 // java.lang.Object mappedValue
        end local 9 // java.lang.Object mappedKey
        end local 8 // java.lang.Object value
        end local 6 // java.lang.Object key
        18: .line 1007
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 5
        19: .line 1022
            aload 5 /* result */
        20: areturn
        end local 5 // javax.management.openmbean.TabularData result
        end local 4 // javax.management.openmbean.CompositeType ctype
        end local 3 // javax.management.openmbean.TabularType ttype
        end local 2 // org.glassfish.gmbal.impl.TypeConverterImpl$Table table
        21: .line 1023
      StackMap locals: org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase java.lang.Object
      StackMap stack: javax.management.openmbean.OpenDataException
            astore 2 /* exc */
        start local 2 // javax.management.openmbean.OpenDataException exc
        22: .line 1024
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
        23: .line 1025
            aload 2 /* exc */
        24: .line 1024
            invokeinterface org.glassfish.gmbal.impl.Exceptions.excInMakeMapTabularDataToManagedEntity:(Ljava/lang/Exception;)Ljava/lang/IllegalArgumentException;
            athrow
        end local 2 // javax.management.openmbean.OpenDataException exc
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   25     0         this  Lorg/glassfish/gmbal/impl/TypeConverterImpl$TypeConverterMapBase;
            0   25     1          obj  Ljava/lang/Object;
            1   21     2        table  Lorg/glassfish/gmbal/impl/TypeConverterImpl$Table;
            2   21     3        ttype  Ljavax/management/openmbean/TabularType;
            3   21     4        ctype  Ljavax/management/openmbean/CompositeType;
            4   21     5       result  Ljavax/management/openmbean/TabularData;
            6   18     6          key  Ljava/lang/Object;
            7   18     8        value  Ljava/lang/Object;
            9   18     9    mappedKey  Ljava/lang/Object;
           11   18    10  mappedValue  Ljava/lang/Object;
           12   18    11        items  Ljava/util/Map;
           17   18    12        cdata  Ljavax/management/openmbean/CompositeDataSupport;
           22   25     2          exc  Ljavax/management/openmbean/OpenDataException;
      Exception table:
        from    to  target  type
           0    20      21  Class javax.management.openmbean.OpenDataException
    MethodParameters:
      Name  Flags
      obj   
}
SourceFile: "TypeConverterImpl.java"
NestHost: org.glassfish.gmbal.impl.TypeConverterImpl
InnerClasses:
  private abstract Table = org.glassfish.gmbal.impl.TypeConverterImpl$Table of org.glassfish.gmbal.impl.TypeConverterImpl
  private abstract TypeConverterMapBase = org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterMapBase of org.glassfish.gmbal.impl.TypeConverterImpl