public class org.glassfish.gmbal.impl.ManagedObjectManagerImpl implements org.glassfish.gmbal.impl.ManagedObjectManagerInternal
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  super_class: java.lang.Object
{
  private static final org.glassfish.gmbal.AMXMetadata DEFAULT_AMX_METADATA;
    descriptor: Lorg/glassfish/gmbal/AMXMetadata;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static org.glassfish.pfl.basic.algorithm.ObjectUtility myObjectUtil;
    descriptor: Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static java.util.Comparator<java.lang.String> REV_COMP;
    descriptor: Ljava/util/Comparator;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: Ljava/util/Comparator<Ljava/lang/String;>;

  private final java.lang.String domain;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    RuntimeVisibleAnnotations: 
      org.glassfish.pfl.basic.algorithm.DumpIgnore()

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

  private final java.util.Map<org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, org.glassfish.gmbal.impl.MBeanSkeleton> skeletonMap;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Lorg/glassfish/gmbal/impl/MBeanSkeleton;>;

  private final java.util.Map<org.glassfish.gmbal.typelib.EvaluatedType, org.glassfish.gmbal.impl.TypeConverter> typeConverterMap;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/glassfish/gmbal/typelib/EvaluatedType;Lorg/glassfish/gmbal/impl/TypeConverter;>;

  private final java.util.Map<java.lang.reflect.AnnotatedElement, java.util.Map<java.lang.Class, java.lang.annotation.Annotation>> addedAnnotations;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/reflect/AnnotatedElement;Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;>;

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

  private final java.util.Set<java.lang.String> amxAttributeNames;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  private final org.glassfish.pfl.tf.timer.spi.ObjectRegistrationManager orm;
    descriptor: Lorg/glassfish/pfl/tf/timer/spi/ObjectRegistrationManager;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean rootCreated;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private java.util.ResourceBundle resourceBundle;
    descriptor: Ljava/util/ResourceBundle;
    flags: (0x0002) ACC_PRIVATE

  private javax.management.MBeanServer server;
    descriptor: Ljavax/management/MBeanServer;
    flags: (0x0002) ACC_PRIVATE

  private org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel regDebugLevel;
    descriptor: Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
    flags: (0x0002) ACC_PRIVATE

  private boolean runDebugFlag;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean jmxRegistrationDebugFlag;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private final java.util.SortedSet<java.lang.String> typePrefixes;
    descriptor: Ljava/util/SortedSet;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/SortedSet<Ljava/lang/String;>;

  private boolean stripPackagePrefix;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  java.util.List<org.glassfish.pfl.basic.contain.Pair<java.lang.Class, java.lang.Class>> statsData;
    descriptor: Ljava/util/List;
    flags: (0x0000) 
    Signature: Ljava/util/List<Lorg/glassfish/pfl/basic/contain/Pair<Ljava/lang/Class;Ljava/lang/Class;>;>;

  private java.util.Map<java.lang.reflect.AnnotatedElement, java.util.Map<java.lang.Class, java.lang.annotation.Annotation>> annotationCache;
    descriptor: Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Map<Ljava/lang/reflect/AnnotatedElement;Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=0, args_size=0
         0: .line 109
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DefaultAMXMetadataHolder;
            ldc Lorg/glassfish/gmbal/AMXMetadata;
            invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.glassfish.gmbal.AMXMetadata
         1: .line 108
            putstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.DEFAULT_AMX_METADATA:Lorg/glassfish/gmbal/AMXMetadata;
         2: .line 112
            new org.glassfish.pfl.basic.algorithm.ObjectUtility
            dup
            iconst_1
            iconst_0
            iconst_4
            invokespecial org.glassfish.pfl.basic.algorithm.ObjectUtility.<init>:(ZII)V
         3: .line 113
            ldc Lorg/glassfish/gmbal/typelib/EvaluatedType;
            invokevirtual org.glassfish.pfl.basic.algorithm.ObjectUtility.useToString:(Ljava/lang/Class;)Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;
         4: .line 114
            ldc Lorg/glassfish/gmbal/ManagedObjectManager;
            invokevirtual org.glassfish.pfl.basic.algorithm.ObjectUtility.useToString:(Ljava/lang/Class;)Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;
         5: .line 111
            putstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.myObjectUtil:Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;
         6: .line 123
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$StringComparator
            dup
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$StringComparator.<init>:()V
            putstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.REV_COMP:Ljava/util/Comparator;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.lang.String, javax.management.ObjectName);
    descriptor: (Ljava/lang/String;Ljavax/management/ObjectName;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=8, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String domain
        start local 2 // javax.management.ObjectName rootParentName
         0: .line 150
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 146
            aload 0 /* this */
            new java.util.TreeSet
            dup
         2: .line 147
            getstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.REV_COMP:Ljava/util/Comparator;
         3: .line 146
            invokespecial java.util.TreeSet.<init>:(Ljava/util/Comparator;)V
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typePrefixes:Ljava/util/SortedSet;
         4: .line 148
            aload 0 /* this */
            iconst_0
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.stripPackagePrefix:Z
         5: .line 265
            aload 0 /* this */
            bipush 8
            anewarray org.glassfish.pfl.basic.contain.Pair
            dup
            iconst_0
         6: .line 266
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyStringStatistic;
         7: .line 267
            ldc Lorg/glassfish/external/statistics/StringStatistic;
         8: .line 266
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
            dup
            iconst_1
         9: .line 269
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyTimeStatistic;
        10: .line 270
            ldc Lorg/glassfish/external/statistics/TimeStatistic;
        11: .line 269
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
            dup
            iconst_2
        12: .line 272
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyStatistic;
        13: .line 273
            ldc Lorg/glassfish/external/statistics/Statistic;
        14: .line 272
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
            dup
            iconst_3
        15: .line 275
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyBoundaryStatistic;
        16: .line 276
            ldc Lorg/glassfish/external/statistics/BoundaryStatistic;
        17: .line 275
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
            dup
            iconst_4
        18: .line 278
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyBoundedRangeStatistic;
        19: .line 279
            ldc Lorg/glassfish/external/statistics/BoundedRangeStatistic;
        20: .line 278
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
            dup
            iconst_5
        21: .line 281
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyCountStatistic;
        22: .line 282
            ldc Lorg/glassfish/external/statistics/CountStatistic;
        23: .line 281
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
            dup
            bipush 6
        24: .line 284
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyRangeStatistic;
        25: .line 285
            ldc Lorg/glassfish/external/statistics/RangeStatistic;
        26: .line 284
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
            dup
            bipush 7
        27: .line 287
            ldc Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$DummyAverageRangeStatistic;
        28: .line 288
            ldc Lorg/glassfish/external/statistics/AverageRangeStatistic;
        29: .line 287
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.pair:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/pfl/basic/contain/Pair;
            aastore
        30: .line 265
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.list:([Ljava/lang/Object;)Ljava/util/List;
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.statsData:Ljava/util/List;
        31: .line 855
            aload 0 /* this */
        32: .line 856
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.annotationCache:Ljava/util/Map;
        33: .line 153
            aload 0 /* this */
            aload 1 /* domain */
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.domain:Ljava/lang/String;
        34: .line 154
            aload 0 /* this */
            new org.glassfish.gmbal.impl.MBeanTree
            dup
            aload 0 /* this */
            aload 1 /* domain */
            aload 2 /* rootParentName */
            ldc "type"
            invokespecial org.glassfish.gmbal.impl.MBeanTree.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;Ljava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;)V
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
        35: .line 155
            aload 0 /* this */
        36: .line 156
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
        37: .line 155
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.skeletonMap:Ljava/util/Map;
        38: .line 157
            aload 0 /* this */
            new java.util.WeakHashMap
            dup
            invokespecial java.util.WeakHashMap.<init>:()V
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typeConverterMap:Ljava/util/Map;
        39: .line 158
            aload 0 /* this */
        40: .line 159
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
        41: .line 158
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addedAnnotations:Ljava/util/Map;
        42: .line 163
            ldc Lorg/glassfish/gmbal/AMXMBeanInterface;
        43: .line 162
            invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getEvaluatedType:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
        44: .line 161
            astore 3 /* ecd */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration ecd
        45: .line 164
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.amxAttributeNames:Ljava/util/Set;
        46: .line 165
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* ecd */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getSkeleton:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.amxSkeleton:Lorg/glassfish/gmbal/impl/MBeanSkeleton;
        47: .line 166
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.amxSkeleton:Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            invokevirtual org.glassfish.gmbal.impl.MBeanSkeleton.getMBeanInfo:()Ljavax/management/modelmbean/ModelMBeanInfoSupport;
            invokevirtual javax.management.modelmbean.ModelMBeanInfoSupport.getAttributes:()[Ljavax/management/MBeanAttributeInfo;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 51
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl java.lang.String javax.management.ObjectName org.glassfish.gmbal.typelib.EvaluatedClassDeclaration top int int javax.management.MBeanAttributeInfo[]
      StackMap stack:
        48: aload 7
            iload 5
            aaload
            astore 4 /* mbi */
        start local 4 // javax.management.MBeanAttributeInfo mbi
        49: .line 167
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.amxAttributeNames:Ljava/util/Set;
            aload 4 /* mbi */
            invokevirtual javax.management.MBeanAttributeInfo.getName:()Ljava/lang/String;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // javax.management.MBeanAttributeInfo mbi
        50: .line 166
            iinc 5 1
      StackMap locals:
      StackMap stack:
        51: iload 5
            iload 6
            if_icmplt 48
        52: .line 169
            aload 0 /* this */
            new org.glassfish.gmbal.impl.ObjectRegistrationManagerImpl
            dup
            aload 0 /* this */
            invokespecial org.glassfish.gmbal.impl.ObjectRegistrationManagerImpl.<init>:(Lorg/glassfish/gmbal/ManagedObjectManager;)V
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.orm:Lorg/glassfish/pfl/tf/timer/spi/ObjectRegistrationManager;
        53: .line 170
            return
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration ecd
        end local 2 // javax.management.ObjectName rootParentName
        end local 1 // java.lang.String domain
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   54     0            this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   54     1          domain  Ljava/lang/String;
            0   54     2  rootParentName  Ljavax/management/ObjectName;
           45   54     3             ecd  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
           49   50     4             mbi  Ljavax/management/MBeanAttributeInfo;
    MethodParameters:
                Name  Flags
      domain          final
      rootParentName  final

  private void addAnnotationIfNotNull(java.lang.reflect.AnnotatedElement, java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.reflect.AnnotatedElement elemement
        start local 2 // java.lang.annotation.Annotation annotation
         0: .line 293
            aload 2 /* annotation */
            ifnull 2
         1: .line 294
            aload 0 /* this */
            aload 1 /* elemement */
            aload 2 /* annotation */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addAnnotation:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)V
         2: .line 296
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.annotation.Annotation annotation
        end local 1 // java.lang.reflect.AnnotatedElement elemement
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1   elemement  Ljava/lang/reflect/AnnotatedElement;
            0    3     2  annotation  Ljava/lang/annotation/Annotation;
    MethodParameters:
            Name  Flags
      elemement   
      annotation  

  private void initializeStatisticsSupport();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 299
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.statsData:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 7
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl top java.util.Iterator
      StackMap stack:
         1: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.glassfish.pfl.basic.contain.Pair
            astore 1 /* pair */
        start local 1 // org.glassfish.pfl.basic.contain.Pair pair
         2: .line 300
            aload 1 /* pair */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.first:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 3 /* dummy */
        start local 3 // java.lang.Class dummy
         3: .line 301
            aload 1 /* pair */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.second:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 4 /* real */
        start local 4 // java.lang.Class real
         4: .line 302
            aload 0 /* this */
            aload 4 /* real */
            aload 3 /* dummy */
            ldc Lorg/glassfish/gmbal/ManagedData;
            invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addAnnotationIfNotNull:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)V
         5: .line 303
            aload 0 /* this */
            aload 4 /* real */
            aload 3 /* dummy */
            ldc Lorg/glassfish/gmbal/Description;
            invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addAnnotationIfNotNull:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)V
         6: .line 304
            aload 0 /* this */
            aload 4 /* real */
            aload 3 /* dummy */
            ldc Lorg/glassfish/gmbal/InheritedAttributes;
            invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addAnnotationIfNotNull:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)V
        end local 4 // java.lang.Class real
        end local 3 // java.lang.Class dummy
        end local 1 // org.glassfish.pfl.basic.contain.Pair pair
         7: .line 299
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         8: .line 306
            return
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            2    7     1   pair  Lorg/glassfish/pfl/basic/contain/Pair<Ljava/lang/Class;Ljava/lang/Class;>;
            3    7     3  dummy  Ljava/lang/Class;
            4    7     4   real  Ljava/lang/Class;

  private void init();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 309
            aload 0 /* this */
         1: .line 310
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$1
            dup
            aload 0 /* this */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$1.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;)V
         2: .line 309
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast javax.management.MBeanServer
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.server:Ljavax/management/MBeanServer;
         3: .line 316
            aload 0 /* this */
            iconst_0
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.rootCreated:Z
         4: .line 317
            aload 0 /* this */
            aconst_null
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.resourceBundle:Ljava/util/ResourceBundle;
         5: .line 318
            aload 0 /* this */
            getstatic org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel.NONE:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.regDebugLevel:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
         6: .line 319
            aload 0 /* this */
            iconst_0
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.runDebugFlag:Z
         7: .line 320
            aload 0 /* this */
            iconst_0
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.jmxRegistrationDebugFlag:Z
         8: .line 322
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.clear:()V
         9: .line 323
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.skeletonMap:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
        10: .line 324
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typeConverterMap:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
        11: .line 325
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addedAnnotations:Ljava/util/Map;
            invokeinterface java.util.Map.clear:()V
        12: .line 327
            aload 0 /* this */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.initializeStatisticsSupport:()V
        13: .line 328
            aload 0 /* this */
            invokestatic org.glassfish.gmbal.impl.TimerAnnotationHelper.registerTimerClasses:(Lorg/glassfish/gmbal/ManagedObjectManager;)V
        14: .line 329
            return
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public void <init>(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String domain
         0: .line 332
            aload 0 /* this */
            aload 1 /* domain */
            aconst_null
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl.<init>:(Ljava/lang/String;Ljavax/management/ObjectName;)V
         1: .line 333
            aload 0 /* this */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.init:()V
         2: .line 334
            return
        end local 1 // java.lang.String domain
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1  domain  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      domain  final

  public void <init>(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // javax.management.ObjectName rootParentName
         0: .line 337
            aload 0 /* this */
            aload 1 /* rootParentName */
            invokevirtual javax.management.ObjectName.getDomain:()Ljava/lang/String;
            aload 1 /* rootParentName */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl.<init>:(Ljava/lang/String;Ljavax/management/ObjectName;)V
         1: .line 338
            aload 0 /* this */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.init:()V
         2: .line 339
            return
        end local 1 // javax.management.ObjectName rootParentName
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1  rootParentName  Ljavax/management/ObjectName;
    MethodParameters:
                Name  Flags
      rootParentName  final

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 344
            aload 0 /* this */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.init:()V
         1: .line 345
            return
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()

  private synchronized void checkRootNotCreated(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String methodName
         0: .line 348
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.rootCreated:Z
            ifeq 2
         1: .line 349
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 1 /* methodName */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.createRootCalled:(Ljava/lang/String;)Ljava/lang/IllegalStateException;
            athrow
         2: .line 351
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String methodName
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1  methodName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      methodName  

  private synchronized void checkRootCreated(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String methodName
         0: .line 354
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.rootCreated:Z
            ifne 2
         1: .line 355
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 1 /* methodName */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.createRootNotCalled:(Ljava/lang/String;)Ljava/lang/IllegalStateException;
            athrow
         2: .line 357
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String methodName
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1  methodName  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      methodName  

  public synchronized void suspendJMXRegistration();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 361
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.suspendRegistration:()V
         1: .line 362
            return
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized void resumeJMXRegistration();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 366
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.resumeRegistration:()V
         1: .line 367
            return
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized void stripPackagePrefix();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 370
            aload 0 /* this */
            ldc "stripPackagePrefix"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 371
            aload 0 /* this */
            iconst_1
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.stripPackagePrefix:Z
         2: .line 372
            return
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 377
            new java.lang.StringBuilder
            dup
            ldc "ManagedObjectManagerImpl[domain="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.domain:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized javax.management.ObjectName getRootParentName();
    descriptor: ()Ljavax/management/ObjectName;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 381
            aload 0 /* this */
            ldc "getRootParentName"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootCreated:(Ljava/lang/String;)V
         1: .line 382
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getRootParentName:()Ljavax/management/ObjectName;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized org.glassfish.gmbal.GmbalMBean createRoot();
    descriptor: ()Lorg/glassfish/gmbal/GmbalMBean;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 397
            aload 0 /* this */
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$Root
            dup
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$Root.<init>:()V
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.createRoot:(Ljava/lang/Object;)Lorg/glassfish/gmbal/GmbalMBean;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized org.glassfish.gmbal.GmbalMBean createRoot(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/glassfish/gmbal/GmbalMBean;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object root
         0: .line 401
            aload 0 /* this */
            aload 1 /* root */
            aconst_null
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.createRoot:(Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
            areturn
        end local 1 // java.lang.Object root
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1  root  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      root  

  public synchronized org.glassfish.gmbal.GmbalMBean createRoot(java.lang.Object, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object root
        start local 2 // java.lang.String name
         0: .line 405
            aload 0 /* this */
            ldc "createRoot"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 413
            aload 0 /* this */
            iconst_1
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.rootCreated:Z
         2: .line 414
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* root */
            aload 2 /* name */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.setRoot:(Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
            astore 3 /* result */
        start local 3 // org.glassfish.gmbal.GmbalMBean result
         3: .line 415
            aload 3 /* result */
            ifnonnull 9
         4: .line 416
            aload 0 /* this */
            iconst_0
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.rootCreated:Z
         5: .line 418
            goto 9
        end local 3 // org.glassfish.gmbal.GmbalMBean result
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
         6: astore 4 /* exc */
        start local 4 // java.lang.RuntimeException exc
         7: .line 419
            aload 0 /* this */
            iconst_0
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.rootCreated:Z
         8: .line 420
            aload 4 /* exc */
            athrow
        end local 4 // java.lang.RuntimeException exc
        start local 3 // org.glassfish.gmbal.GmbalMBean result
         9: .line 423
      StackMap locals: org.glassfish.gmbal.GmbalMBean
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // org.glassfish.gmbal.GmbalMBean result
        end local 2 // java.lang.String name
        end local 1 // java.lang.Object root
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   10     1    root  Ljava/lang/Object;
            0   10     2    name  Ljava/lang/String;
            3    6     3  result  Lorg/glassfish/gmbal/GmbalMBean;
            9   10     3  result  Lorg/glassfish/gmbal/GmbalMBean;
            7    9     4     exc  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
           1     5       6  Class java.lang.RuntimeException
    MethodParameters:
      Name  Flags
      root  
      name  

  public synchronized java.lang.Object getRoot();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 428
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getRoot:()Ljava/lang/Object;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  private void message(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String msg
         0: .line 432
            return
        end local 1 // java.lang.String msg
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1   msg  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.glassfish.pfl.tf.spi.annotation.InfoMethod()
    MethodParameters:
      Name  Flags
      msg   

  private void describe(java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String msg
        start local 2 // java.lang.Object data
         0: .line 435
            return
        end local 2 // java.lang.Object data
        end local 1 // java.lang.String msg
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1   msg  Ljava/lang/String;
            0    1     2  data  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      org.glassfish.pfl.tf.spi.annotation.InfoMethod()
    MethodParameters:
      Name  Flags
      msg   
      data  

  private synchronized org.glassfish.gmbal.impl.MBeanSkeleton getSkeleton(org.glassfish.gmbal.typelib.EvaluatedClassDeclaration);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)Lorg/glassfish/gmbal/impl/MBeanSkeleton;
    flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=8, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cls
         0: .line 440
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.skeletonMap:Ljava/util/Map;
            aload 1 /* cls */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.glassfish.gmbal.impl.MBeanSkeleton
            astore 2 /* result */
        start local 2 // org.glassfish.gmbal.impl.MBeanSkeleton result
         1: .line 442
            aload 2 /* result */
            ifnonnull 2
            iconst_1
            goto 3
      StackMap locals: org.glassfish.gmbal.impl.MBeanSkeleton
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 3 /* newSkeleton */
        start local 3 // boolean newSkeleton
         4: .line 443
            iload 3 /* newSkeleton */
            ifeq 21
         5: .line 444
            aload 0 /* this */
            ldc "Skeleton not found"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.message:(Ljava/lang/String;)V
         6: .line 447
            aload 0 /* this */
            aload 1 /* cls */
            ldc Lorg/glassfish/gmbal/ManagedObject;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getClassAnalyzer:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)Lorg/glassfish/pfl/basic/contain/Pair;
         7: .line 446
            astore 4 /* pair */
        start local 4 // org.glassfish.pfl.basic.contain.Pair pair
         8: .line 448
            aload 4 /* pair */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.second:()Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer
            astore 5 /* ca */
        start local 5 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
         9: .line 450
            aload 4 /* pair */
            invokevirtual org.glassfish.pfl.basic.contain.Pair.first:()Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
            astore 6 /* annotatedClass */
        start local 6 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration annotatedClass
        10: .line 451
            aload 0 /* this */
            ldc "Annotated class for skeleton"
            aload 6 /* annotatedClass */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.describe:(Ljava/lang/String;Ljava/lang/Object;)V
        11: .line 452
            aload 6 /* annotatedClass */
            ifnonnull 15
        12: .line 453
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
        13: .line 454
            aload 1 /* cls */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.name:()Ljava/lang/String;
        14: .line 453
            invokeinterface org.glassfish.gmbal.impl.Exceptions.managedObjectAnnotationNotFound:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
            athrow
        15: .line 457
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.impl.MBeanSkeleton int org.glassfish.pfl.basic.contain.Pair org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
      StackMap stack:
            new org.glassfish.gmbal.impl.MBeanSkeleton
            dup
            aload 1 /* cls */
            aload 5 /* ca */
            aload 0 /* this */
            invokespecial org.glassfish.gmbal.impl.MBeanSkeleton.<init>:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;)V
            astore 7 /* skel */
        start local 7 // org.glassfish.gmbal.impl.MBeanSkeleton skel
        16: .line 459
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.amxSkeleton:Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            ifnonnull 19
        17: .line 461
            aload 7 /* skel */
            astore 2 /* result */
        18: .line 462
            goto 20
        19: .line 463
      StackMap locals: org.glassfish.gmbal.impl.MBeanSkeleton
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.amxSkeleton:Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            aload 7 /* skel */
            invokevirtual org.glassfish.gmbal.impl.MBeanSkeleton.compose:(Lorg/glassfish/gmbal/impl/MBeanSkeleton;)Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            astore 2 /* result */
        20: .line 466
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.skeletonMap:Ljava/util/Map;
            aload 1 /* cls */
            aload 2 /* result */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // org.glassfish.gmbal.impl.MBeanSkeleton skel
        end local 6 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration annotatedClass
        end local 5 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
        end local 4 // org.glassfish.pfl.basic.contain.Pair pair
        21: .line 469
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.impl.MBeanSkeleton int
      StackMap stack:
            iload 3 /* newSkeleton */
            ifeq 25
        22: .line 470
            aload 0 /* this */
            ldc "Skeleton"
        23: .line 471
            new org.glassfish.pfl.basic.algorithm.DelayedObjectToString
            dup
            aload 2 /* result */
            getstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.myObjectUtil:Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;
            invokespecial org.glassfish.pfl.basic.algorithm.DelayedObjectToString.<init>:(Ljava/lang/Object;Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;)V
        24: .line 470
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.describe:(Ljava/lang/String;Ljava/lang/Object;)V
        25: .line 474
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 3 // boolean newSkeleton
        end local 2 // org.glassfish.gmbal.impl.MBeanSkeleton result
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cls
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   26     0            this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   26     1             cls  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            1   26     2          result  Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            4   26     3     newSkeleton  Z
            8   21     4            pair  Lorg/glassfish/pfl/basic/contain/Pair<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;>;
            9   21     5              ca  Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;
           10   21     6  annotatedClass  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
           16   21     7            skel  Lorg/glassfish/gmbal/impl/MBeanSkeleton;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
      Name  Flags
      cls   

  public synchronized org.glassfish.gmbal.impl.TypeConverter getTypeConverter(org.glassfish.gmbal.typelib.EvaluatedType);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedType;)Lorg/glassfish/gmbal/impl/TypeConverter;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedType type
         0: .line 481
            aconst_null
            astore 2 /* result */
        start local 2 // org.glassfish.gmbal.impl.TypeConverter result
         1: .line 483
            iconst_0
            istore 3 /* newTypeConverter */
        start local 3 // boolean newTypeConverter
         2: .line 484
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typeConverterMap:Ljava/util/Map;
            aload 1 /* type */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.glassfish.gmbal.impl.TypeConverter
            astore 2 /* result */
         3: .line 485
            aload 2 /* result */
            ifnonnull 11
         4: .line 486
            aload 0 /* this */
            ldc "Creating new TypeConverter"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.message:(Ljava/lang/String;)V
         5: .line 490
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typeConverterMap:Ljava/util/Map;
            aload 1 /* type */
         6: .line 491
            new org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterPlaceHolderImpl
            dup
            aload 1 /* type */
            invokespecial org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterPlaceHolderImpl.<init>:(Lorg/glassfish/gmbal/typelib/EvaluatedType;)V
         7: .line 490
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 493
            aload 1 /* type */
            aload 0 /* this */
            invokestatic org.glassfish.gmbal.impl.TypeConverterImpl.makeTypeConverter:(Lorg/glassfish/gmbal/typelib/EvaluatedType;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal;)Lorg/glassfish/gmbal/impl/TypeConverter;
            astore 2 /* result */
         9: .line 496
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typeConverterMap:Ljava/util/Map;
            aload 1 /* type */
            aload 2 /* result */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 497
            iconst_1
            istore 3 /* newTypeConverter */
        11: .line 500
      StackMap locals: org.glassfish.gmbal.impl.TypeConverter int
      StackMap stack:
            iload 3 /* newTypeConverter */
            ifeq 13
        12: .line 501
            aload 0 /* this */
            ldc "result"
            getstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.myObjectUtil:Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;
            aload 2 /* result */
            invokevirtual org.glassfish.pfl.basic.algorithm.ObjectUtility.objectToString:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.describe:(Ljava/lang/String;Ljava/lang/Object;)V
        13: .line 504
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 3 // boolean newTypeConverter
        end local 2 // org.glassfish.gmbal.impl.TypeConverter result
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedType type
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   14     0              this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   14     1              type  Lorg/glassfish/gmbal/typelib/EvaluatedType;
            1   14     2            result  Lorg/glassfish/gmbal/impl/TypeConverter;
            2   14     3  newTypeConverter  Z
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistrationFine()
    MethodParameters:
      Name  Flags
      type  

  private static java.lang.reflect.Field getDeclaredField(java.lang.Class<?>, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // java.lang.Class cls
        start local 1 // java.lang.String name
         0: .line 511
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 2 /* sman */
        start local 2 // java.lang.SecurityManager sman
         1: .line 512
            aload 2 /* sman */
            ifnonnull 3
         2: .line 513
            aload 0 /* cls */
            aload 1 /* name */
            invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
            areturn
         3: .line 516
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$2
            dup
            aload 0 /* cls */
            aload 1 /* name */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$2.<init>:(Ljava/lang/Class;Ljava/lang/String;)V
         4: .line 515
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
            checkcast java.lang.reflect.Field
            areturn
        end local 2 // java.lang.SecurityManager sman
        end local 1 // java.lang.String name
        end local 0 // java.lang.Class cls
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0   cls  Ljava/lang/Class<*>;
            0    5     1  name  Ljava/lang/String;
            1    5     2  sman  Ljava/lang/SecurityManager;
    Exceptions:
      throws java.security.PrivilegedActionException, java.lang.NoSuchFieldException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)Ljava/lang/reflect/Field;
    MethodParameters:
      Name  Flags
      cls   final
      name  final

  private java.lang.String getAMXTypeFromField(java.lang.Class<?>, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Class cls
        start local 2 // java.lang.String fieldName
         0: .line 527
            aload 1 /* cls */
            aload 2 /* fieldName */
            invokestatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getDeclaredField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Field;
            astore 3 /* fld */
        start local 3 // java.lang.reflect.Field fld
         1: .line 529
            aload 3 /* fld */
            invokevirtual java.lang.reflect.Field.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
            ifeq 7
         2: .line 530
            aload 3 /* fld */
            invokevirtual java.lang.reflect.Field.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
            ifeq 7
         3: .line 531
            aload 3 /* fld */
            invokevirtual java.lang.reflect.Field.getType:()Ljava/lang/Class;
            ldc Ljava/lang/String;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 7
         4: .line 533
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$3
            dup
            aload 0 /* this */
            aload 3 /* fld */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$3.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;Ljava/lang/reflect/Field;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         5: .line 540
            aload 3 /* fld */
            aconst_null
            invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
         6: areturn
         7: .line 542
      StackMap locals: java.lang.reflect.Field
      StackMap stack:
            ldc ""
            areturn
        end local 3 // java.lang.reflect.Field fld
         8: .line 544
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl java.lang.Class java.lang.String
      StackMap stack: java.security.PrivilegedActionException
            pop
         9: .line 545
            ldc ""
            areturn
        10: .line 546
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
            pop
        11: .line 547
            ldc ""
            areturn
        12: .line 548
      StackMap locals:
      StackMap stack: java.lang.IllegalAccessException
            pop
        13: .line 549
            ldc ""
            areturn
        14: .line 550
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldException
            pop
        15: .line 551
            ldc ""
            areturn
        16: .line 552
      StackMap locals:
      StackMap stack: java.lang.SecurityException
            pop
        17: .line 553
            ldc ""
            areturn
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.Class cls
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   18     0       this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   18     1        cls  Ljava/lang/Class<*>;
            0   18     2  fieldName  Ljava/lang/String;
            1    8     3        fld  Ljava/lang/reflect/Field;
      Exception table:
        from    to  target  type
           0     6       8  Class java.security.PrivilegedActionException
           0     6      10  Class java.lang.IllegalArgumentException
           0     6      12  Class java.lang.IllegalAccessException
           0     6      14  Class java.lang.NoSuchFieldException
           0     6      16  Class java.lang.SecurityException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)Ljava/lang/String;
    MethodParameters:
           Name  Flags
      cls        
      fieldName  

  private boolean goodResult(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String str
         0: .line 558
            aload 1 /* str */
            ifnull 1
            aload 1 /* str */
            invokevirtual java.lang.String.length:()I
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // java.lang.String str
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    2     1   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      str   

  public synchronized java.lang.String getTypeName(java.lang.Class<?>, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=8, args_size=4
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Class cls
        start local 2 // java.lang.String fieldName
        start local 3 // java.lang.String nameFromAnnotation
         0: .line 565
            aload 0 /* this */
            aload 1 /* cls */
            aload 2 /* fieldName */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getAMXTypeFromField:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* result */
        start local 4 // java.lang.String result
         1: .line 566
            aload 0 /* this */
            aload 4 /* result */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.goodResult:(Ljava/lang/String;)Z
            ifeq 3
         2: .line 567
            aload 4 /* result */
            areturn
         3: .line 571
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 3 /* nameFromAnnotation */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.goodResult:(Ljava/lang/String;)Z
            ifeq 5
         4: .line 572
            aload 3 /* nameFromAnnotation */
            areturn
         5: .line 575
      StackMap locals:
      StackMap stack:
            aload 1 /* cls */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            astore 5 /* className */
        start local 5 // java.lang.String className
         6: .line 578
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typePrefixes:Ljava/util/SortedSet;
            invokeinterface java.util.SortedSet.iterator:()Ljava/util/Iterator;
            astore 7
            goto 10
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl java.lang.Class java.lang.String java.lang.String java.lang.String java.lang.String top java.util.Iterator
      StackMap stack:
         7: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* str */
        start local 6 // java.lang.String str
         8: .line 579
            aload 5 /* className */
            aload 6 /* str */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 10
         9: .line 580
            aload 5 /* className */
            aload 6 /* str */
            invokevirtual java.lang.String.length:()I
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
        end local 6 // java.lang.String str
        10: .line 578
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        11: .line 586
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.stripPackagePrefix:Z
            ifeq 16
        12: .line 587
            aload 5 /* className */
            bipush 46
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 6 /* lastDot */
        start local 6 // int lastDot
        13: .line 588
            iload 6 /* lastDot */
            iconst_m1
            if_icmpne 15
        14: .line 589
            aload 5 /* className */
            areturn
        15: .line 591
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl java.lang.Class java.lang.String java.lang.String java.lang.String java.lang.String int
      StackMap stack:
            aload 5 /* className */
            iload 6 /* lastDot */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            areturn
        end local 6 // int lastDot
        16: .line 594
      StackMap locals:
      StackMap stack:
            aload 5 /* className */
            areturn
        end local 5 // java.lang.String className
        end local 4 // java.lang.String result
        end local 3 // java.lang.String nameFromAnnotation
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.Class cls
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   17     0                this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   17     1                 cls  Ljava/lang/Class<*>;
            0   17     2           fieldName  Ljava/lang/String;
            0   17     3  nameFromAnnotation  Ljava/lang/String;
            1   17     4              result  Ljava/lang/String;
            6   17     5           className  Ljava/lang/String;
            8   10     6                 str  Ljava/lang/String;
           13   16     6             lastDot  I
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    MethodParameters:
                    Name  Flags
      cls                 
      fieldName           
      nameFromAnnotation  

  public synchronized boolean isManagedObject(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
         0: .line 601
            aload 1 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
         1: .line 600
            invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getEvaluatedType:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
         2: .line 599
            astore 2 /* cdecl */
        start local 2 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cdecl
         3: .line 602
            aload 0 /* this */
            aload 2 /* cdecl */
         4: .line 603
            ldc Lorg/glassfish/gmbal/ManagedObject;
         5: .line 602
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getFirstAnnotationOnClass:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.glassfish.gmbal.ManagedObject
            astore 3 /* mo */
        start local 3 // org.glassfish.gmbal.ManagedObject mo
         6: .line 605
            aload 3 /* mo */
            ifnull 7
            iconst_1
            ireturn
      StackMap locals: org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.ManagedObject
      StackMap stack:
         7: iconst_0
            ireturn
        end local 3 // org.glassfish.gmbal.ManagedObject mo
        end local 2 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cdecl
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    8     1    obj  Ljava/lang/Object;
            3    8     2  cdecl  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            6    8     3     mo  Lorg/glassfish/gmbal/ManagedObject;
    MethodParameters:
      Name  Flags
      obj   

  public synchronized org.glassfish.gmbal.impl.MBeanImpl constructMBean(org.glassfish.gmbal.impl.MBeanImpl, java.lang.Object, java.lang.String);
    descriptor: (Lorg/glassfish/gmbal/impl/MBeanImpl;Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/impl/MBeanImpl;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=11, args_size=4
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.impl.MBeanImpl parentEntity
        start local 2 // java.lang.Object obj
        start local 3 // java.lang.String name
         0: .line 613
            aconst_null
            astore 4 /* result */
        start local 4 // org.glassfish.gmbal.impl.MBeanImpl result
         1: .line 615
            aload 3 /* name */
            astore 5 /* objName */
        start local 5 // java.lang.String objName
         2: .line 617
            aload 2 /* obj */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            astore 6 /* cls */
        start local 6 // java.lang.Class cls
         3: .line 619
            aload 6 /* cls */
            invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getEvaluatedType:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
         4: .line 618
            astore 7 /* cdecl */
        start local 7 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cdecl
         5: .line 620
            aload 0 /* this */
            aload 7 /* cdecl */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getSkeleton:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            astore 8 /* skel */
        start local 8 // org.glassfish.gmbal.impl.MBeanSkeleton skel
         6: .line 622
            aload 0 /* this */
            aload 7 /* cdecl */
            ldc Lorg/glassfish/gmbal/AMXMetadata;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getFirstAnnotationOnClass:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.glassfish.gmbal.AMXMetadata
            astore 9 /* amd */
        start local 9 // org.glassfish.gmbal.AMXMetadata amd
         7: .line 623
            aload 9 /* amd */
            ifnonnull 9
         8: .line 624
            aload 0 /* this */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getDefaultAMXMetadata:()Lorg/glassfish/gmbal/AMXMetadata;
            astore 9 /* amd */
         9: .line 627
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl org.glassfish.gmbal.impl.MBeanImpl java.lang.Object java.lang.String org.glassfish.gmbal.impl.MBeanImpl java.lang.String java.lang.Class org.glassfish.gmbal.typelib.EvaluatedClassDeclaration org.glassfish.gmbal.impl.MBeanSkeleton org.glassfish.gmbal.AMXMetadata
      StackMap stack:
            aload 8 /* skel */
            invokevirtual org.glassfish.gmbal.impl.MBeanSkeleton.getType:()Ljava/lang/String;
            astore 10 /* type */
        start local 10 // java.lang.String type
        10: .line 628
            aload 0 /* this */
            ldc "Stripped type"
            aload 10 /* type */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.describe:(Ljava/lang/String;Ljava/lang/Object;)V
        11: .line 630
            new org.glassfish.gmbal.impl.MBeanImpl
            dup
            aload 8 /* skel */
            aload 2 /* obj */
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.server:Ljavax/management/MBeanServer;
            aload 10 /* type */
            invokespecial org.glassfish.gmbal.impl.MBeanImpl.<init>:(Lorg/glassfish/gmbal/impl/MBeanSkeleton;Ljava/lang/Object;Ljavax/management/MBeanServer;Ljava/lang/String;)V
            astore 4 /* result */
        12: .line 632
            aload 5 /* objName */
            ifnonnull 16
        13: .line 633
            aload 8 /* skel */
            aload 4 /* result */
            invokevirtual org.glassfish.gmbal.impl.MBeanSkeleton.getNameValue:(Lorg/glassfish/pfl/basic/facet/FacetAccessor;)Ljava/lang/String;
            astore 5 /* objName */
        14: .line 634
            aload 5 /* objName */
            ifnonnull 16
        15: .line 635
            ldc ""
            astore 5 /* objName */
        16: .line 639
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* objName */
            invokevirtual java.lang.String.length:()I
            ifne 21
        17: .line 640
            aload 9 /* amd */
            invokeinterface org.glassfish.gmbal.AMXMetadata.isSingleton:()Z
            ifne 25
        18: .line 641
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
        19: .line 642
            aload 1 /* parentEntity */
            aload 10 /* type */
        20: .line 641
            invokeinterface org.glassfish.gmbal.impl.Exceptions.nonSingletonRequiresName:(Lorg/glassfish/gmbal/impl/MBeanImpl;Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
            athrow
        21: .line 645
      StackMap locals:
      StackMap stack:
            aload 9 /* amd */
            invokeinterface org.glassfish.gmbal.AMXMetadata.isSingleton:()Z
            ifeq 25
        22: .line 646
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
        23: .line 647
            aload 1 /* parentEntity */
            aload 10 /* type */
            aload 3 /* name */
        24: .line 646
            invokeinterface org.glassfish.gmbal.impl.Exceptions.singletonCannotSpecifyName:(Lorg/glassfish/gmbal/impl/MBeanImpl;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
            athrow
        25: .line 651
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Name value"
            aload 5 /* objName */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.describe:(Ljava/lang/String;Ljava/lang/Object;)V
        26: .line 653
            aload 4 /* result */
            aload 5 /* objName */
            invokevirtual org.glassfish.gmbal.impl.MBeanImpl.name:(Ljava/lang/String;)V
        end local 10 // java.lang.String type
        end local 9 // org.glassfish.gmbal.AMXMetadata amd
        end local 8 // org.glassfish.gmbal.impl.MBeanSkeleton skel
        end local 7 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cdecl
        end local 6 // java.lang.Class cls
        27: .line 654
            goto 30
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl org.glassfish.gmbal.impl.MBeanImpl java.lang.Object java.lang.String org.glassfish.gmbal.impl.MBeanImpl java.lang.String
      StackMap stack: javax.management.JMException
        28: astore 6 /* exc */
        start local 6 // javax.management.JMException exc
        29: .line 655
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 5 /* objName */
            aload 6 /* exc */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.errorInConstructingMBean:(Ljava/lang/String;Ljavax/management/JMException;)Ljava/lang/IllegalArgumentException;
            athrow
        end local 6 // javax.management.JMException exc
        30: .line 658
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            areturn
        end local 5 // java.lang.String objName
        end local 4 // org.glassfish.gmbal.impl.MBeanImpl result
        end local 3 // java.lang.String name
        end local 2 // java.lang.Object obj
        end local 1 // org.glassfish.gmbal.impl.MBeanImpl parentEntity
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   31     0          this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   31     1  parentEntity  Lorg/glassfish/gmbal/impl/MBeanImpl;
            0   31     2           obj  Ljava/lang/Object;
            0   31     3          name  Ljava/lang/String;
            1   31     4        result  Lorg/glassfish/gmbal/impl/MBeanImpl;
            2   31     5       objName  Ljava/lang/String;
            3   27     6           cls  Ljava/lang/Class<*>;
            5   27     7         cdecl  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            6   27     8          skel  Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            7   27     9           amd  Lorg/glassfish/gmbal/AMXMetadata;
           10   27    10          type  Ljava/lang/String;
           29   30     6           exc  Ljavax/management/JMException;
      Exception table:
        from    to  target  type
           2    27      28  Class javax.management.JMException
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
              Name  Flags
      parentEntity  
      obj           
      name          

  public synchronized org.glassfish.gmbal.GmbalMBean register(java.lang.Object, java.lang.Object, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=6, args_size=4
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object parent
        start local 2 // java.lang.Object obj
        start local 3 // java.lang.String name
         0: .line 666
            aload 0 /* this */
            ldc "register"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootCreated:(Ljava/lang/String;)V
         1: .line 667
            aload 2 /* obj */
            instanceof java.lang.String
            ifeq 3
         2: .line 668
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 2 /* obj */
            checkcast java.lang.String
            invokeinterface org.glassfish.gmbal.impl.Exceptions.objStringWrongRegisterCall:(Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
            athrow
         3: .line 673
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* parent */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getParentEntity:(Ljava/lang/Object;)Lorg/glassfish/gmbal/impl/MBeanImpl;
            astore 4 /* parentEntity */
        start local 4 // org.glassfish.gmbal.impl.MBeanImpl parentEntity
         4: .line 675
            aload 0 /* this */
            aload 4 /* parentEntity */
            aload 2 /* obj */
            aload 3 /* name */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.constructMBean:(Lorg/glassfish/gmbal/impl/MBeanImpl;Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/impl/MBeanImpl;
            astore 5 /* mb */
        start local 5 // org.glassfish.gmbal.impl.MBeanImpl mb
         5: .line 677
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 4 /* parentEntity */
            aload 2 /* obj */
            aload 5 /* mb */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.register:(Lorg/glassfish/gmbal/impl/MBeanImpl;Ljava/lang/Object;Lorg/glassfish/gmbal/impl/MBeanImpl;)Lorg/glassfish/gmbal/GmbalMBean;
         6: areturn
        end local 5 // org.glassfish.gmbal.impl.MBeanImpl mb
        end local 4 // org.glassfish.gmbal.impl.MBeanImpl parentEntity
         7: .line 678
      StackMap locals:
      StackMap stack: javax.management.JMException
            astore 4 /* exc */
        start local 4 // javax.management.JMException exc
         8: .line 679
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 4 /* exc */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.exceptionInRegister:(Ljava/lang/Exception;)Ljava/lang/IllegalArgumentException;
            athrow
        end local 4 // javax.management.JMException exc
        end local 3 // java.lang.String name
        end local 2 // java.lang.Object obj
        end local 1 // java.lang.Object parent
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    9     1        parent  Ljava/lang/Object;
            0    9     2           obj  Ljava/lang/Object;
            0    9     3          name  Ljava/lang/String;
            4    7     4  parentEntity  Lorg/glassfish/gmbal/impl/MBeanImpl;
            5    7     5            mb  Lorg/glassfish/gmbal/impl/MBeanImpl;
            8    9     4           exc  Ljavax/management/JMException;
      Exception table:
        from    to  target  type
           3     6       7  Class javax.management.JMException
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
        Name  Flags
      parent  final
      obj     final
      name    final

  public synchronized org.glassfish.gmbal.GmbalMBean register(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Lorg/glassfish/gmbal/GmbalMBean;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object parent
        start local 2 // java.lang.Object obj
         0: .line 686
            aload 0 /* this */
            aload 1 /* parent */
            aload 2 /* obj */
            aconst_null
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.register:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
            areturn
        end local 2 // java.lang.Object obj
        end local 1 // java.lang.Object parent
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1  parent  Ljava/lang/Object;
            0    1     2     obj  Ljava/lang/Object;
    MethodParameters:
        Name  Flags
      parent  final
      obj     final

  public synchronized org.glassfish.gmbal.GmbalMBean registerAtRoot(java.lang.Object, java.lang.String);
    descriptor: (Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
        start local 2 // java.lang.String name
         0: .line 691
            aload 0 /* this */
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getRoot:()Ljava/lang/Object;
            aload 1 /* obj */
            aload 2 /* name */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.register:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
            areturn
        end local 2 // java.lang.String name
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1   obj  Ljava/lang/Object;
            0    1     2  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      obj   
      name  

  public synchronized org.glassfish.gmbal.GmbalMBean registerAtRoot(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/glassfish/gmbal/GmbalMBean;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
         0: .line 695
            aload 0 /* this */
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getRoot:()Ljava/lang/Object;
            aload 1 /* obj */
            aconst_null
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.register:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)Lorg/glassfish/gmbal/GmbalMBean;
            areturn
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1   obj  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      obj   

  public synchronized void unregister(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
         0: .line 700
            aload 0 /* this */
            ldc "unregister"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootCreated:(Ljava/lang/String;)V
         1: .line 703
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* obj */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.unregister:(Ljava/lang/Object;)V
         2: .line 704
            goto 5
      StackMap locals:
      StackMap stack: javax.management.JMException
         3: astore 2 /* exc */
        start local 2 // javax.management.JMException exc
         4: .line 705
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 2 /* exc */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.exceptionInUnregister:(Ljava/lang/Exception;)Ljava/lang/IllegalArgumentException;
            athrow
        end local 2 // javax.management.JMException exc
         5: .line 707
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    6     1   obj  Ljava/lang/Object;
            4    5     2   exc  Ljavax/management/JMException;
      Exception table:
        from    to  target  type
           1     2       3  Class javax.management.JMException
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
      Name  Flags
      obj   

  public synchronized javax.management.ObjectName getObjectName(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljavax/management/ObjectName;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
         0: .line 711
            aload 0 /* this */
            ldc "getObjectName"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootCreated:(Ljava/lang/String;)V
         1: .line 713
            aload 1 /* obj */
            instanceof javax.management.ObjectName
            ifeq 3
         2: .line 714
            aload 1 /* obj */
            checkcast javax.management.ObjectName
            areturn
         3: .line 717
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.glassfish.gmbal.AMXClient
            ifeq 5
         4: .line 718
            aload 1 /* obj */
            checkcast org.glassfish.gmbal.AMXClient
            invokevirtual org.glassfish.gmbal.AMXClient.objectName:()Ljavax/management/ObjectName;
            areturn
         5: .line 721
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* obj */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getObjectName:(Ljava/lang/Object;)Ljavax/management/ObjectName;
            astore 2 /* result */
        start local 2 // javax.management.ObjectName result
         6: .line 723
            aload 2 /* result */
            areturn
        end local 2 // javax.management.ObjectName result
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    7     1     obj  Ljava/lang/Object;
            6    7     2  result  Ljavax/management/ObjectName;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
      Name  Flags
      obj   

  public org.glassfish.gmbal.AMXClient getAMXClient(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/glassfish/gmbal/AMXClient;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
         0: .line 727
            aload 0 /* this */
            aload 1 /* obj */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getObjectName:(Ljava/lang/Object;)Ljavax/management/ObjectName;
            astore 2 /* oname */
        start local 2 // javax.management.ObjectName oname
         1: .line 728
            aload 2 /* oname */
            ifnonnull 3
         2: .line 729
            aconst_null
            areturn
         3: .line 732
      StackMap locals: javax.management.ObjectName
      StackMap stack:
            new org.glassfish.gmbal.AMXClient
            dup
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.server:Ljavax/management/MBeanServer;
            aload 2 /* oname */
            invokespecial org.glassfish.gmbal.AMXClient.<init>:(Ljavax/management/MBeanServerConnection;Ljavax/management/ObjectName;)V
            areturn
        end local 2 // javax.management.ObjectName oname
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    4     1    obj  Ljava/lang/Object;
            1    4     2  oname  Ljavax/management/ObjectName;
    MethodParameters:
      Name  Flags
      obj   

  public synchronized java.lang.Object getObject(javax.management.ObjectName);
    descriptor: (Ljavax/management/ObjectName;)Ljava/lang/Object;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // javax.management.ObjectName oname
         0: .line 737
            aload 0 /* this */
            ldc "getObject"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootCreated:(Ljava/lang/String;)V
         1: .line 739
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* oname */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getObject:(Ljavax/management/ObjectName;)Ljava/lang/Object;
            astore 2 /* result */
        start local 2 // java.lang.Object result
         2: .line 741
            aload 2 /* result */
            areturn
        end local 2 // java.lang.Object result
        end local 1 // javax.management.ObjectName oname
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1   oname  Ljavax/management/ObjectName;
            2    3     2  result  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
       Name  Flags
      oname  

  public synchronized org.glassfish.pfl.basic.facet.FacetAccessor getFacetAccessor(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Lorg/glassfish/pfl/basic/facet/FacetAccessor;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
         0: .line 746
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* obj */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getMBeanImpl:(Ljava/lang/Object;)Lorg/glassfish/gmbal/impl/MBeanImpl;
            astore 2 /* mb */
        start local 2 // org.glassfish.gmbal.impl.MBeanImpl mb
         1: .line 747
            aload 2 /* mb */
            ifnull 3
         2: .line 748
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* obj */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getFacetAccessor:(Ljava/lang/Object;)Lorg/glassfish/pfl/basic/facet/FacetAccessor;
            areturn
         3: .line 750
      StackMap locals: org.glassfish.gmbal.impl.MBeanImpl
      StackMap stack:
            new org.glassfish.pfl.basic.facet.FacetAccessorImpl
            dup
            aload 1 /* obj */
            invokespecial org.glassfish.pfl.basic.facet.FacetAccessorImpl.<init>:(Ljava/lang/Object;)V
            areturn
        end local 2 // org.glassfish.gmbal.impl.MBeanImpl mb
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    4     1   obj  Ljava/lang/Object;
            1    4     2    mb  Lorg/glassfish/gmbal/impl/MBeanImpl;
    MethodParameters:
      Name  Flags
      obj   

  public synchronized java.lang.String getDomain();
    descriptor: ()Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 756
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.domain:Ljava/lang/String;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized void setMBeanServer(javax.management.MBeanServer);
    descriptor: (Ljavax/management/MBeanServer;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // javax.management.MBeanServer server
         0: .line 760
            aload 0 /* this */
            ldc "setMBeanServer"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 761
            aload 0 /* this */
            aload 1 /* server */
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.server:Ljavax/management/MBeanServer;
         2: .line 762
            return
        end local 1 // javax.management.MBeanServer server
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1  server  Ljavax/management/MBeanServer;
    MethodParameters:
        Name  Flags
      server  

  public synchronized javax.management.MBeanServer getMBeanServer();
    descriptor: ()Ljavax/management/MBeanServer;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 766
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.server:Ljavax/management/MBeanServer;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized void setResourceBundle(java.util.ResourceBundle);
    descriptor: (Ljava/util/ResourceBundle;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.util.ResourceBundle rb
         0: .line 770
            aload 0 /* this */
            ldc "setResourceBundle"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 771
            aload 0 /* this */
            aload 1 /* rb */
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.resourceBundle:Ljava/util/ResourceBundle;
         2: .line 772
            return
        end local 1 // java.util.ResourceBundle rb
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1    rb  Ljava/util/ResourceBundle;
    MethodParameters:
      Name  Flags
      rb    

  public synchronized java.util.ResourceBundle getResourceBundle();
    descriptor: ()Ljava/util/ResourceBundle;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 776
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.resourceBundle:Ljava/util/ResourceBundle;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized java.lang.String getDescription(org.glassfish.gmbal.typelib.EvaluatedDeclaration);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedDeclaration element
         0: .line 782
            aload 1 /* element */
            instanceof org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
            ifeq 4
         1: .line 783
            aload 1 /* element */
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
            astore 3 /* ecd */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration ecd
         2: .line 784
            aload 0 /* this */
            aload 3 /* ecd */
            ldc Lorg/glassfish/gmbal/Description;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getFirstAnnotationOnClass:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.glassfish.gmbal.Description
            astore 2 /* desc */
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration ecd
        start local 2 // org.glassfish.gmbal.Description desc
         3: .line 785
            goto 5
        end local 2 // org.glassfish.gmbal.Description desc
         4: .line 786
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* element */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedDeclaration.element:()Ljava/lang/reflect/AnnotatedElement;
            ldc Lorg/glassfish/gmbal/Description;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getAnnotation:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.glassfish.gmbal.Description
            astore 2 /* desc */
        start local 2 // org.glassfish.gmbal.Description desc
         5: .line 789
      StackMap locals: org.glassfish.gmbal.Description
      StackMap stack:
            ldc ""
            astore 3 /* result */
        start local 3 // java.lang.String result
         6: .line 790
            aload 2 /* desc */
            ifnull 8
         7: .line 791
            aload 2 /* desc */
            invokeinterface org.glassfish.gmbal.Description.value:()Ljava/lang/String;
            astore 3 /* result */
         8: .line 794
      StackMap locals: java.lang.String
      StackMap stack:
            aload 3 /* result */
            invokevirtual java.lang.String.length:()I
            ifne 11
         9: .line 795
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            invokeinterface org.glassfish.gmbal.impl.Exceptions.noDescriptionAvailable:()Ljava/lang/String;
            astore 3 /* result */
        10: .line 796
            goto 13
        11: .line 797
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.resourceBundle:Ljava/util/ResourceBundle;
            ifnull 13
        12: .line 798
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.resourceBundle:Ljava/util/ResourceBundle;
            aload 3 /* result */
            invokevirtual java.util.ResourceBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* result */
        13: .line 802
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // java.lang.String result
        end local 2 // org.glassfish.gmbal.Description desc
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedDeclaration element
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   14     1  element  Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;
            3    4     2     desc  Lorg/glassfish/gmbal/Description;
            5   14     2     desc  Lorg/glassfish/gmbal/Description;
            2    3     3      ecd  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            6   14     3   result  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      element  

  public synchronized void addAnnotation(java.lang.reflect.AnnotatedElement, java.lang.annotation.Annotation);
    descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.reflect.AnnotatedElement element
        start local 2 // java.lang.annotation.Annotation annotation
         0: .line 809
            aload 0 /* this */
            ldc "addAnnotation"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 810
            aload 2 /* annotation */
            ifnonnull 3
         2: .line 811
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 1 /* element */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.cannotAddNullAnnotation:(Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/IllegalArgumentException;
            athrow
         3: .line 814
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addedAnnotations:Ljava/util/Map;
            aload 1 /* element */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
            astore 3 /* map */
        start local 3 // java.util.Map map
         4: .line 815
            aload 3 /* map */
            ifnonnull 8
         5: .line 816
            aload 0 /* this */
            ldc "Creating new Map<Class,Annotation>"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.message:(Ljava/lang/String;)V
         6: .line 818
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 3 /* map */
         7: .line 819
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addedAnnotations:Ljava/util/Map;
            aload 1 /* element */
            aload 3 /* map */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 822
      StackMap locals: java.util.Map
      StackMap stack:
            aload 2 /* annotation */
            invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
            astore 4 /* annotationType */
        start local 4 // java.lang.Class annotationType
         9: .line 823
            aload 3 /* map */
            aload 4 /* annotationType */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.annotation.Annotation
            astore 5 /* ann */
        start local 5 // java.lang.annotation.Annotation ann
        10: .line 824
            aload 5 /* ann */
            ifnull 15
        11: .line 825
            aload 0 /* this */
            ldc "Duplicate annotation"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.message:(Ljava/lang/String;)V
        12: .line 827
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 1 /* element */
        13: .line 828
            aload 2 /* annotation */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
        14: .line 827
            invokeinterface org.glassfish.gmbal.impl.Exceptions.duplicateAnnotation:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Ljava/lang/IllegalArgumentException;
            athrow
        15: .line 831
      StackMap locals: java.lang.Class java.lang.annotation.Annotation
      StackMap stack:
            aload 3 /* map */
            aload 4 /* annotationType */
            aload 2 /* annotation */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 832
            return
        end local 5 // java.lang.annotation.Annotation ann
        end local 4 // java.lang.Class annotationType
        end local 3 // java.util.Map map
        end local 2 // java.lang.annotation.Annotation annotation
        end local 1 // java.lang.reflect.AnnotatedElement element
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   17     0            this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   17     1         element  Ljava/lang/reflect/AnnotatedElement;
            0   17     2      annotation  Ljava/lang/annotation/Annotation;
            4   17     3             map  Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;
            9   17     4  annotationType  Ljava/lang/Class<*>;
           10   17     5             ann  Ljava/lang/annotation/Annotation;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
            Name  Flags
      element     
      annotation  

  public synchronized void addInheritedAnnotations(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Class cls
         0: .line 836
            aload 0 /* this */
            ldc "addInheritedAnnotation"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 839
            return
        end local 1 // java.lang.Class cls
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    2     1   cls  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)V
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
      Name  Flags
      cls   final

  public <T extends java.lang.annotation.Annotation> T getFirstAnnotationOnClass(org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, java.lang.Class<T>);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration element
        start local 2 // java.lang.Class type
         0: .line 844
            new org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer
            dup
            aload 1 /* element */
            invokespecial org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.<init>:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)V
            astore 3 /* eca */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer eca
         1: .line 845
            aload 3 /* eca */
         2: .line 846
            aload 0 /* this */
            aload 2 /* type */
            ldc Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.forAnnotation:(Ljava/lang/Class;Ljava/lang/Class;)Lorg/glassfish/pfl/basic/func/UnaryPredicate;
         3: .line 845
            invokevirtual org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.findClasses:(Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Ljava/util/List;
            astore 4 /* ecds */
        start local 4 // java.util.List ecds
         4: .line 848
            aload 4 /* ecds */
            invokeinterface java.util.List.size:()I
            ifle 6
         5: .line 849
            aload 0 /* this */
            aload 4 /* ecds */
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedClassDeclaration.element:()Ljava/lang/reflect/AnnotatedElement;
            aload 2 /* type */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getAnnotation:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            areturn
         6: .line 851
      StackMap locals: org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer java.util.List
      StackMap stack:
            aconst_null
            areturn
        end local 4 // java.util.List ecds
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer eca
        end local 2 // java.lang.Class type
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration element
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    7     1  element  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            0    7     2     type  Ljava/lang/Class<TT;>;
            1    7     3      eca  Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;
            4    7     4     ecds  Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
    Signature: <T::Ljava/lang/annotation/Annotation;>(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
         Name  Flags
      element  final
      type     final

  private java.util.Map<java.lang.Class, java.lang.annotation.Annotation> getAllAnnotations(java.lang.Class);
    descriptor: (Ljava/lang/Class;)Ljava/util/Map;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Class cls
         0: .line 859
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.annotationCache:Ljava/util/Map;
            aload 1 /* cls */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
            astore 2 /* result */
        start local 2 // java.util.Map result
         1: .line 861
            aload 2 /* result */
            ifnonnull 8
         2: .line 863
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
         3: .line 862
            astore 3 /* res */
        start local 3 // java.util.Map res
         4: .line 865
            aload 1 /* cls */
            invokestatic org.glassfish.pfl.basic.algorithm.ClassAnalyzer.getClassAnalyzer:(Ljava/lang/Class;)Lorg/glassfish/pfl/basic/algorithm/ClassAnalyzer;
            astore 4 /* ca */
        start local 4 // org.glassfish.pfl.basic.algorithm.ClassAnalyzer ca
         5: .line 866
            aload 4 /* ca */
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$4
            dup
            aload 0 /* this */
            aload 3 /* res */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$4.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;Ljava/util/Map;)V
            invokevirtual org.glassfish.pfl.basic.algorithm.ClassAnalyzer.findClasses:(Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Ljava/util/List;
            pop
         6: .line 887
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.annotationCache:Ljava/util/Map;
            aload 1 /* cls */
            aload 3 /* res */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 888
            aload 3 /* res */
            astore 2 /* result */
        end local 4 // org.glassfish.pfl.basic.algorithm.ClassAnalyzer ca
        end local 3 // java.util.Map res
         8: .line 891
      StackMap locals: java.util.Map
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 2 // java.util.Map result
        end local 1 // java.lang.Class cls
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    9     1     cls  Ljava/lang/Class;
            1    9     2  result  Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;
            4    8     3     res  Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;
            5    8     4      ca  Lorg/glassfish/pfl/basic/algorithm/ClassAnalyzer;
    Signature: (Ljava/lang/Class;)Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;
    MethodParameters:
      Name  Flags
      cls   final

  public synchronized <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.reflect.AnnotatedElement, java.lang.Class<T>);
    descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=5, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.reflect.AnnotatedElement element
        start local 2 // java.lang.Class type
         0: .line 900
            aload 1 /* element */
            instanceof java.lang.Class
            ifeq 4
         1: .line 901
            aload 1 /* element */
            checkcast java.lang.Class
            astore 3 /* cls */
        start local 3 // java.lang.Class cls
         2: .line 902
            aload 0 /* this */
            aload 3 /* cls */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getAllAnnotations:(Ljava/lang/Class;)Ljava/util/Map;
            astore 4 /* annos */
        start local 4 // java.util.Map annos
         3: .line 903
            aload 4 /* annos */
            aload 2 /* type */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.annotation.Annotation
            areturn
        end local 4 // java.util.Map annos
        end local 3 // java.lang.Class cls
         4: .line 905
      StackMap locals:
      StackMap stack:
            aload 1 /* element */
            aload 2 /* type */
            invokeinterface java.lang.reflect.AnnotatedElement.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            astore 3 /* result */
        start local 3 // java.lang.annotation.Annotation result
         5: .line 906
            aload 3 /* result */
            ifnonnull 12
         6: .line 907
            aload 0 /* this */
            ldc "No annotation on element: trying addedAnnotations map"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.message:(Ljava/lang/String;)V
         7: .line 909
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.addedAnnotations:Ljava/util/Map;
         8: .line 910
            aload 1 /* element */
         9: .line 909
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.Map
            astore 4 /* map */
        start local 4 // java.util.Map map
        10: .line 911
            aload 4 /* map */
            ifnull 12
        11: .line 912
            aload 4 /* map */
            aload 2 /* type */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.annotation.Annotation
            astore 3 /* result */
        end local 4 // java.util.Map map
        12: .line 916
      StackMap locals: java.lang.annotation.Annotation
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // java.lang.annotation.Annotation result
        end local 2 // java.lang.Class type
        end local 1 // java.lang.reflect.AnnotatedElement element
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   13     1  element  Ljava/lang/reflect/AnnotatedElement;
            0   13     2     type  Ljava/lang/Class<TT;>;
            2    4     3      cls  Ljava/lang/Class;
            3    4     4    annos  Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;
            5   13     3   result  TT;
           10   12     4      map  Ljava/util/Map<Ljava/lang/Class;Ljava/lang/annotation/Annotation;>;
    Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TT;>;)TT;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistrationFine()
    MethodParameters:
         Name  Flags
      element  
      type     

  public synchronized java.util.Collection<java.lang.annotation.Annotation> getAnnotations(java.lang.reflect.AnnotatedElement);
    descriptor: (Ljava/lang/reflect/AnnotatedElement;)Ljava/util/Collection;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.reflect.AnnotatedElement elem
         0: .line 925
            aload 1 /* elem */
            instanceof java.lang.Class
            ifeq 3
         1: .line 926
            aload 1 /* elem */
            checkcast java.lang.Class
            astore 2 /* cls */
        start local 2 // java.lang.Class cls
         2: .line 928
            aload 0 /* this */
            aload 2 /* cls */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getAllAnnotations:(Ljava/lang/Class;)Ljava/util/Map;
            invokeinterface java.util.Map.values:()Ljava/util/Collection;
            areturn
        end local 2 // java.lang.Class cls
         3: .line 929
      StackMap locals:
      StackMap stack:
            aload 1 /* elem */
            instanceof java.lang.reflect.Method
            ifeq 5
         4: .line 930
            aload 1 /* elem */
            invokeinterface java.lang.reflect.AnnotatedElement.getAnnotations:()[Ljava/lang/annotation/Annotation;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            areturn
         5: .line 931
      StackMap locals:
      StackMap stack:
            aload 1 /* elem */
            instanceof java.lang.reflect.Field
            ifeq 7
         6: .line 932
            aload 1 /* elem */
            invokeinterface java.lang.reflect.AnnotatedElement.getAnnotations:()[Ljava/lang/annotation/Annotation;
            invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
            areturn
         7: .line 935
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 1 /* elem */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.annotationsNotSupported:(Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/IllegalArgumentException;
            athrow
        end local 1 // java.lang.reflect.AnnotatedElement elem
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    8     1  elem  Ljava/lang/reflect/AnnotatedElement;
            2    3     2   cls  Ljava/lang/Class;
    Signature: (Ljava/lang/reflect/AnnotatedElement;)Ljava/util/Collection<Ljava/lang/annotation/Annotation;>;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistrationFine()
    MethodParameters:
      Name  Flags
      elem  

  public synchronized org.glassfish.pfl.basic.contain.Pair<org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer> getClassAnalyzer(org.glassfish.gmbal.typelib.EvaluatedClassDeclaration, java.lang.Class<? extends java.lang.annotation.Annotation>);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)Lorg/glassfish/pfl/basic/contain/Pair;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=6, locals=12, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cls
        start local 2 // java.lang.Class annotationClass
         0: .line 944
            new org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer
            dup
            aload 1 /* cls */
            invokespecial org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.<init>:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)V
            astore 3 /* clsca */
        start local 3 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer clsca
         1: .line 947
            aload 3 /* clsca */
            aload 0 /* this */
            aload 2 /* annotationClass */
         2: .line 948
            ldc Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
         3: .line 947
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.forAnnotation:(Ljava/lang/Class;Ljava/lang/Class;)Lorg/glassfish/pfl/basic/func/UnaryPredicate;
            invokevirtual org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.findClasses:(Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Ljava/util/List;
         4: .line 949
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$5
            dup
            aload 0 /* this */
            aload 2 /* annotationClass */
            aload 1 /* cls */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$5.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;Ljava/lang/Class;Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;)V
         5: .line 946
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.getFirst:(Ljava/util/Collection;Ljava/lang/Runnable;)Ljava/lang/Object;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
            astore 4 /* annotatedClass */
        start local 4 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration annotatedClass
         6: .line 956
            aload 0 /* this */
            ldc "annotatedClass"
            aload 4 /* annotatedClass */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.describe:(Ljava/lang/String;Ljava/lang/Object;)V
         7: .line 959
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
         8: .line 958
            astore 5 /* classes */
        start local 5 // java.util.List classes
         9: .line 960
            aload 5 /* classes */
            aload 1 /* cls */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        10: .line 963
            aload 0 /* this */
        11: .line 964
            aload 1 /* cls */
            ldc Lorg/glassfish/gmbal/IncludeSubclass;
        12: .line 963
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getFirstAnnotationOnClass:(Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast org.glassfish.gmbal.IncludeSubclass
            astore 6 /* incsub */
        start local 6 // org.glassfish.gmbal.IncludeSubclass incsub
        13: .line 965
            aload 6 /* incsub */
            ifnull 22
        14: .line 966
            aload 6 /* incsub */
            invokeinterface org.glassfish.gmbal.IncludeSubclass.value:()[Ljava/lang/Class;
            dup
            astore 10
            arraylength
            istore 9
            iconst_0
            istore 8
            goto 21
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl org.glassfish.gmbal.typelib.EvaluatedClassDeclaration java.lang.Class org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer org.glassfish.gmbal.typelib.EvaluatedClassDeclaration java.util.List org.glassfish.gmbal.IncludeSubclass top int int java.lang.Class[]
      StackMap stack:
        15: aload 10
            iload 8
            aaload
            astore 7 /* klass */
        start local 7 // java.lang.Class klass
        16: .line 968
            aload 7 /* klass */
            invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.getEvaluatedType:(Ljava/lang/Class;)Lorg/glassfish/gmbal/typelib/EvaluatedType;
            checkcast org.glassfish.gmbal.typelib.EvaluatedClassDeclaration
        17: .line 967
            astore 11 /* ecd */
        start local 11 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration ecd
        18: .line 969
            aload 5 /* classes */
            aload 11 /* ecd */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        19: .line 970
            aload 0 /* this */
            ldc "included subclass"
            aload 7 /* klass */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.describe:(Ljava/lang/String;Ljava/lang/Object;)V
        end local 11 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration ecd
        end local 7 // java.lang.Class klass
        20: .line 966
            iinc 8 1
      StackMap locals:
      StackMap stack:
        21: iload 8
            iload 9
            if_icmplt 15
        22: .line 974
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl org.glassfish.gmbal.typelib.EvaluatedClassDeclaration java.lang.Class org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer org.glassfish.gmbal.typelib.EvaluatedClassDeclaration java.util.List org.glassfish.gmbal.IncludeSubclass
      StackMap stack:
            new org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer
            dup
            aload 5 /* classes */
            invokespecial org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.<init>:(Ljava/util/List;)V
            astore 7 /* ca */
        start local 7 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
        23: .line 976
            new org.glassfish.pfl.basic.contain.Pair
            dup
        24: .line 977
            aload 4 /* annotatedClass */
            aload 7 /* ca */
        25: .line 976
            invokespecial org.glassfish.pfl.basic.contain.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
            areturn
        end local 7 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
        end local 6 // org.glassfish.gmbal.IncludeSubclass incsub
        end local 5 // java.util.List classes
        end local 4 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration annotatedClass
        end local 3 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer clsca
        end local 2 // java.lang.Class annotationClass
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedClassDeclaration cls
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   26     0             this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   26     1              cls  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            0   26     2  annotationClass  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
            1   26     3            clsca  Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;
            6   26     4   annotatedClass  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
            9   26     5          classes  Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
           13   26     6           incsub  Lorg/glassfish/gmbal/IncludeSubclass;
           16   20     7            klass  Ljava/lang/Class<*>;
           18   20    11              ecd  Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
           23   26     7               ca  Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;
    Signature: (Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Lorg/glassfish/pfl/basic/contain/Pair<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;>;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
                 Name  Flags
      cls              final
      annotationClass  final

  public synchronized java.util.List<org.glassfish.gmbal.InheritedAttribute> getInheritedAttributes(org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;)Ljava/util/List;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
         0: .line 986
            aload 0 /* this */
            ldc Lorg/glassfish/gmbal/InheritedAttribute;
         1: .line 987
            ldc Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
         2: .line 986
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.forAnnotation:(Ljava/lang/Class;Ljava/lang/Class;)Lorg/glassfish/pfl/basic/func/UnaryPredicate;
         3: .line 988
            aload 0 /* this */
            ldc Lorg/glassfish/gmbal/InheritedAttributes;
         4: .line 989
            ldc Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;
         5: .line 988
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.forAnnotation:(Ljava/lang/Class;Ljava/lang/Class;)Lorg/glassfish/pfl/basic/func/UnaryPredicate;
         6: .line 985
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.or:(Lorg/glassfish/pfl/basic/func/UnaryPredicate;Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Lorg/glassfish/pfl/basic/func/UnaryPredicate;
            astore 2 /* pred */
        start local 2 // org.glassfish.pfl.basic.func.UnaryPredicate pred
         7: .line 994
            aload 1 /* ca */
            aload 2 /* pred */
            invokevirtual org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.findClasses:(Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Ljava/util/List;
         8: .line 993
            astore 3 /* iaClasses */
        start local 3 // java.util.List iaClasses
         9: .line 996
            aload 3 /* iaClasses */
        10: .line 997
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$6
            dup
            aload 0 /* this */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$6.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;)V
        11: .line 996
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.flatten:(Ljava/util/List;Lorg/glassfish/pfl/basic/func/UnaryFunction;)Ljava/util/List;
            astore 4 /* isList */
        start local 4 // java.util.List isList
        12: .line 1020
            aload 4 /* isList */
            areturn
        end local 4 // java.util.List isList
        end local 3 // java.util.List iaClasses
        end local 2 // org.glassfish.pfl.basic.func.UnaryPredicate pred
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   13     1         ca  Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;
            7   13     2       pred  Lorg/glassfish/pfl/basic/func/UnaryPredicate<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
            9   13     3  iaClasses  Ljava/util/List<Lorg/glassfish/gmbal/typelib/EvaluatedClassDeclaration;>;
           12   13     4     isList  Ljava/util/List<Lorg/glassfish/gmbal/InheritedAttribute;>;
    Signature: (Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;)Ljava/util/List<Lorg/glassfish/gmbal/InheritedAttribute;>;
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
    MethodParameters:
      Name  Flags
      ca    final

  private org.glassfish.gmbal.impl.AttributeDescriptor getAttributeDescriptorIfInherited(org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration, java.util.List<org.glassfish.gmbal.InheritedAttribute>, org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;Ljava/util/List;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Lorg/glassfish/gmbal/impl/AttributeDescriptor;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration method
        start local 2 // java.util.List ias
        start local 3 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
         0: .line 1057
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$ADHolder
            dup
            aload 0 /* this */
            aload 1 /* method */
            aload 3 /* adt */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$ADHolder.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)V
            astore 4 /* adh */
        start local 4 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl$ADHolder adh
         1: .line 1058
            aload 2 /* ias */
            aload 4 /* adh */
            invokestatic org.glassfish.pfl.basic.algorithm.Algorithms.find:(Ljava/util/List;Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Ljava/lang/Object;
            pop
         2: .line 1059
            aload 4 /* adh */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl$ADHolder.content:()Lorg/glassfish/gmbal/impl/AttributeDescriptor;
            areturn
        end local 4 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl$ADHolder adh
        end local 3 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
        end local 2 // java.util.List ias
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedMethodDeclaration method
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1  method  Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;
            0    3     2     ias  Ljava/util/List<Lorg/glassfish/gmbal/InheritedAttribute;>;
            0    3     3     adt  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;
            1    3     4     adh  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl$ADHolder;
    Signature: (Lorg/glassfish/gmbal/typelib/EvaluatedMethodDeclaration;Ljava/util/List<Lorg/glassfish/gmbal/InheritedAttribute;>;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Lorg/glassfish/gmbal/impl/AttributeDescriptor;
    MethodParameters:
        Name  Flags
      method  final
      ias     final
      adt     final

  public synchronized <K, V> void putIfNotPresent(java.util.Map<K, V>, K, );
    descriptor: (Ljava/util/Map;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.util.Map map
        start local 2 // java.lang.Object key
        start local 3 // java.lang.Object value
         0: .line 1066
            aload 1 /* map */
            aload 2 /* key */
            invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
            ifne 4
         1: .line 1067
            aload 0 /* this */
            ldc "Adding key, value to map"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.message:(Ljava/lang/String;)V
         2: .line 1068
            aload 1 /* map */
            aload 2 /* key */
            aload 3 /* value */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 1069
            goto 5
         4: .line 1070
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Key,value already in map"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.message:(Ljava/lang/String;)V
         5: .line 1072
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Object value
        end local 2 // java.lang.Object key
        end local 1 // java.util.Map map
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    6     1    map  Ljava/util/Map<TK;TV;>;
            0    6     2    key  TK;
            0    6     3  value  TV;
    Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/Map<TK;TV;>;TK;TV;)V
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistrationFine()
    MethodParameters:
       Name  Flags
      map    final
      key    final
      value  final

  static void checkFieldType(org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration field
         0: .line 1076
            aload 0 /* field */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration.modifiers:()I
            invokestatic java.lang.reflect.Modifier.isFinal:(I)Z
            ifeq 2
         1: .line 1077
            aload 0 /* field */
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration.fieldType:()Lorg/glassfish/gmbal/typelib/EvaluatedType;
            invokeinterface org.glassfish.gmbal.typelib.EvaluatedType.isImmutable:()Z
            ifne 3
         2: .line 1078
      StackMap locals:
      StackMap stack:
            getstatic org.glassfish.gmbal.impl.Exceptions.self:Lorg/glassfish/gmbal/impl/Exceptions;
            aload 0 /* field */
            invokeinterface org.glassfish.gmbal.impl.Exceptions.illegalAttributeField:(Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;)Ljava/lang/IllegalArgumentException;
            pop
         3: .line 1080
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.glassfish.gmbal.typelib.EvaluatedFieldDeclaration field
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0  field  Lorg/glassfish/gmbal/typelib/EvaluatedFieldDeclaration;
    MethodParameters:
       Name  Flags
      field  

  public synchronized org.glassfish.pfl.basic.contain.Pair<java.util.Map<java.lang.String, org.glassfish.gmbal.impl.AttributeDescriptor>, java.util.Map<java.lang.String, org.glassfish.gmbal.impl.AttributeDescriptor>> getAttributes(org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer, org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType);
    descriptor: (Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Lorg/glassfish/pfl/basic/contain/Pair;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=8, locals=7, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
        start local 2 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
         0: .line 1094
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
         1: .line 1093
            astore 3 /* getters */
        start local 3 // java.util.Map getters
         2: .line 1096
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
         3: .line 1095
            astore 4 /* setters */
        start local 4 // java.util.Map setters
         4: .line 1099
            new org.glassfish.pfl.basic.contain.Pair
            dup
         5: .line 1100
            aload 3 /* getters */
            aload 4 /* setters */
         6: .line 1099
            invokespecial org.glassfish.pfl.basic.contain.Pair.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
         7: .line 1098
            astore 5 /* result */
        start local 5 // org.glassfish.pfl.basic.contain.Pair result
         8: .line 1102
            aload 0 /* this */
            aload 1 /* ca */
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.getInheritedAttributes:(Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;)Ljava/util/List;
            astore 6 /* ias */
        start local 6 // java.util.List ias
         9: .line 1104
            aload 1 /* ca */
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$7
            dup
            aload 0 /* this */
            aload 2 /* adt */
            aload 3 /* getters */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$7.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;Ljava/util/Map;)V
            invokevirtual org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.findFields:(Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Ljava/util/List;
            pop
        10: .line 1134
            aload 1 /* ca */
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$8
            dup
            aload 0 /* this */
            aload 6 /* ias */
            aload 2 /* adt */
            aload 3 /* getters */
            aload 4 /* setters */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$8.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;Ljava/util/List;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;Ljava/util/Map;Ljava/util/Map;)V
            invokevirtual org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer.findMethods:(Lorg/glassfish/pfl/basic/func/UnaryPredicate;)Ljava/util/List;
            pop
        11: .line 1169
            aload 5 /* result */
            areturn
        end local 6 // java.util.List ias
        end local 5 // org.glassfish.pfl.basic.contain.Pair result
        end local 4 // java.util.Map setters
        end local 3 // java.util.Map getters
        end local 2 // org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType adt
        end local 1 // org.glassfish.gmbal.typelib.EvaluatedClassAnalyzer ca
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0   12     1       ca  Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;
            0   12     2      adt  Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;
            2   12     3  getters  Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor;>;
            4   12     4  setters  Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor;>;
            8   12     5   result  Lorg/glassfish/pfl/basic/contain/Pair<Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor;>;Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor;>;>;
            9   12     6      ias  Ljava/util/List<Lorg/glassfish/gmbal/InheritedAttribute;>;
    Signature: (Lorg/glassfish/gmbal/typelib/EvaluatedClassAnalyzer;Lorg/glassfish/gmbal/impl/ManagedObjectManagerInternal$AttributeDescriptorType;)Lorg/glassfish/pfl/basic/contain/Pair<Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor;>;Ljava/util/Map<Ljava/lang/String;Lorg/glassfish/gmbal/impl/AttributeDescriptor;>;>;
    MethodParameters:
      Name  Flags
      ca    final
      adt   final

  public synchronized void setRegistrationDebug(org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel);
    descriptor: (Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel level
         0: .line 1178
            aload 0 /* this */
            aload 1 /* level */
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.regDebugLevel:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
         1: .line 1179
            return
        end local 1 // org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel level
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    2     1  level  Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
    MethodParameters:
       Name  Flags
      level  

  public synchronized void setJMXRegistrationDebug(boolean);
    descriptor: (Z)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // boolean flag
         0: .line 1182
            aload 0 /* this */
            iload 1 /* flag */
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.jmxRegistrationDebugFlag:Z
         1: .line 1183
            return
        end local 1 // boolean flag
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    2     1  flag  Z
    MethodParameters:
      Name  Flags
      flag  

  public synchronized void setRuntimeDebug(boolean);
    descriptor: (Z)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // boolean flag
         0: .line 1187
            aload 0 /* this */
            iload 1 /* flag */
            putfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.runDebugFlag:Z
         1: .line 1188
            return
        end local 1 // boolean flag
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    2     1  flag  Z
    MethodParameters:
      Name  Flags
      flag  

  public synchronized void setTypelibDebug(int);
    descriptor: (I)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // int level
         0: .line 1192
            iload 1 /* level */
            invokestatic org.glassfish.gmbal.typelib.TypeEvaluator.setDebugLevel:(I)V
         1: .line 1193
            return
        end local 1 // int level
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    2     1  level  I
    MethodParameters:
       Name  Flags
      level  

  public synchronized java.lang.String dumpSkeleton(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Object obj
         0: .line 1197
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            aload 1 /* obj */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.getMBeanImpl:(Ljava/lang/Object;)Lorg/glassfish/gmbal/impl/MBeanImpl;
            astore 2 /* impl */
        start local 2 // org.glassfish.gmbal.impl.MBeanImpl impl
         1: .line 1198
            aload 2 /* impl */
            ifnonnull 3
         2: .line 1199
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 1 /* obj */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " is not currently registered with mom "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
         3: .line 1201
      StackMap locals: org.glassfish.gmbal.impl.MBeanImpl
      StackMap stack:
            aload 2 /* impl */
            invokevirtual org.glassfish.gmbal.impl.MBeanImpl.skeleton:()Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            astore 3 /* skel */
        start local 3 // org.glassfish.gmbal.impl.MBeanSkeleton skel
         4: .line 1202
            getstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.myObjectUtil:Lorg/glassfish/pfl/basic/algorithm/ObjectUtility;
            aload 3 /* skel */
            invokevirtual org.glassfish.pfl.basic.algorithm.ObjectUtility.objectToString:(Ljava/lang/Object;)Ljava/lang/String;
            astore 4 /* skelString */
        start local 4 // java.lang.String skelString
         5: .line 1203
            new java.lang.StringBuilder
            dup
            ldc "Skeleton for MBean for object "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* obj */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ":\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         6: .line 1204
            aload 4 /* skelString */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         7: .line 1203
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 4 // java.lang.String skelString
        end local 3 // org.glassfish.gmbal.impl.MBeanSkeleton skel
        end local 2 // org.glassfish.gmbal.impl.MBeanImpl impl
        end local 1 // java.lang.Object obj
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    8     1         obj  Ljava/lang/Object;
            1    8     2        impl  Lorg/glassfish/gmbal/impl/MBeanImpl;
            4    8     3        skel  Lorg/glassfish/gmbal/impl/MBeanSkeleton;
            5    8     4  skelString  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      obj   

  public synchronized boolean registrationDebug();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 1210
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.regDebugLevel:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
            getstatic org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel.NORMAL:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
            if_acmpeq 3
         1: .line 1211
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.regDebugLevel:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
            getstatic org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel.FINE:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
            if_acmpeq 3
         2: .line 1210
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_1
            ireturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized boolean registrationFineDebug();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 1216
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.regDebugLevel:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
            getstatic org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel.FINE:Lorg/glassfish/gmbal/ManagedObjectManager$RegistrationDebugLevel;
            if_acmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized boolean runtimeDebug();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 1221
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.runDebugFlag:Z
            ireturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized boolean jmxRegistrationDebug();
    descriptor: ()Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 1225
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.jmxRegistrationDebugFlag:Z
            ireturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public synchronized void stripPrefix(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x00a1) ACC_PUBLIC, ACC_SYNCHRONIZED, ACC_VARARGS
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String[] args
         0: .line 1229
            aload 0 /* this */
            ldc "stripPrefix"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 1230
            aload 1 /* args */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 5
      StackMap locals: org.glassfish.gmbal.impl.ManagedObjectManagerImpl java.lang.String[] top int int java.lang.String[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* str */
        start local 2 // java.lang.String str
         3: .line 1231
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.typePrefixes:Ljava/util/SortedSet;
            aload 2 /* str */
            invokeinterface java.util.SortedSet.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.lang.String str
         4: .line 1230
            iinc 3 1
      StackMap locals:
      StackMap stack:
         5: iload 3
            iload 4
            if_icmplt 2
         6: .line 1233
            return
        end local 1 // java.lang.String[] args
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    7     1  args  [Ljava/lang/String;
            3    4     2   str  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      args  

  public synchronized <T extends org.glassfish.gmbal.typelib.EvaluatedDeclaration> org.glassfish.pfl.basic.func.UnaryPredicate<T> forAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;Ljava/lang/Class;)Lorg/glassfish/pfl/basic/func/UnaryPredicate;
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.Class annotation
        start local 2 // java.lang.Class cls
         0: .line 1240
            new org.glassfish.gmbal.impl.ManagedObjectManagerImpl$9
            dup
            aload 0 /* this */
            aload 1 /* annotation */
            invokespecial org.glassfish.gmbal.impl.ManagedObjectManagerImpl$9.<init>:(Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;Ljava/lang/Class;)V
            areturn
        end local 2 // java.lang.Class cls
        end local 1 // java.lang.Class annotation
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1  annotation  Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
            0    1     2         cls  Ljava/lang/Class<TT;>;
    Signature: <T::Lorg/glassfish/gmbal/typelib/EvaluatedDeclaration;>(Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/Class<TT;>;)Lorg/glassfish/pfl/basic/func/UnaryPredicate<TT;>;
    MethodParameters:
            Name  Flags
      annotation  final
      cls         final

  public org.glassfish.gmbal.AMXMetadata getDefaultAMXMetadata();
    descriptor: ()Lorg/glassfish/gmbal/AMXMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 1248
            getstatic org.glassfish.gmbal.impl.ManagedObjectManagerImpl.DEFAULT_AMX_METADATA:Lorg/glassfish/gmbal/AMXMetadata;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;

  public boolean isAMXAttributeName(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // java.lang.String name
         0: .line 1252
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.amxAttributeNames:Ljava/util/Set;
            aload 1 /* name */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ireturn
        end local 1 // java.lang.String name
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    1     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  

  public void suppressDuplicateRootReport(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
        start local 1 // boolean suppressReport
         0: .line 1256
            aload 0 /* this */
            ldc "suppressDuplicateRootReport"
            invokevirtual org.glassfish.gmbal.impl.ManagedObjectManagerImpl.checkRootNotCreated:(Ljava/lang/String;)V
         1: .line 1257
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.tree:Lorg/glassfish/gmbal/impl/MBeanTree;
            iload 1 /* suppressReport */
            invokevirtual org.glassfish.gmbal.impl.MBeanTree.setSuppressDuplicateSetRootReport:(Z)V
         2: .line 1258
            return
        end local 1 // boolean suppressReport
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
            0    3     1  suppressReport  Z
    MethodParameters:
                Name  Flags
      suppressReport  

  public org.glassfish.pfl.tf.timer.spi.ObjectRegistrationManager getObjectRegistrationManager();
    descriptor: ()Lorg/glassfish/pfl/tf/timer/spi/ObjectRegistrationManager;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
         0: .line 1261
            aload 0 /* this */
            getfield org.glassfish.gmbal.impl.ManagedObjectManagerImpl.orm:Lorg/glassfish/pfl/tf/timer/spi/ObjectRegistrationManager;
            areturn
        end local 0 // org.glassfish.gmbal.impl.ManagedObjectManagerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/gmbal/impl/ManagedObjectManagerImpl;
}
SourceFile: "ManagedObjectManagerImpl.java"
NestMembers:
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$1  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$2  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$3  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$4  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$5  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$6  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$7  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$8  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$9  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$ADHolder  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DefaultAMXMetadataHolder  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyAverageRangeStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyBoundaryStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyBoundedRangeStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyCountStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyRangeStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyStringStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyTimeStatistic  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$Root  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$StringComparator
InnerClasses:
  public final RegistrationDebugLevel = org.glassfish.gmbal.ManagedObjectManager$RegistrationDebugLevel of org.glassfish.gmbal.ManagedObjectManager
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$1
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$2
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$3
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$4
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$5
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$6
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$7
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$8
  org.glassfish.gmbal.impl.ManagedObjectManagerImpl$9
  private ADHolder = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$ADHolder of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  DefaultAMXMetadataHolder = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DefaultAMXMetadataHolder of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyAverageRangeStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyAverageRangeStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyBoundaryStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyBoundaryStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyBoundedRangeStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyBoundedRangeStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyCountStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyCountStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyRangeStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyRangeStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyStringStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyStringStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public abstract DummyTimeStatistic = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$DummyTimeStatistic of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  private Root = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$Root of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  private final StringComparator = org.glassfish.gmbal.impl.ManagedObjectManagerImpl$StringComparator of org.glassfish.gmbal.impl.ManagedObjectManagerImpl
  public final AttributeDescriptorType = org.glassfish.gmbal.impl.ManagedObjectManagerInternal$AttributeDescriptorType of org.glassfish.gmbal.impl.ManagedObjectManagerInternal
  public TypeConverterPlaceHolderImpl = org.glassfish.gmbal.impl.TypeConverterImpl$TypeConverterPlaceHolderImpl of org.glassfish.gmbal.impl.TypeConverterImpl
    RuntimeVisibleAnnotations: 
      org.glassfish.gmbal.impl.trace.TraceRegistration()
      org.glassfish.gmbal.impl.trace.TraceRegistrationFine()