class org.glassfish.grizzly.memory.MemoryManagerInitializer
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.glassfish.grizzly.memory.MemoryManagerInitializer
  super_class: java.lang.Object
{
  private static final java.lang.String DMM_PROP_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "org.glassfish.grizzly.DEFAULT_MEMORY_MANAGER"

  private static final java.util.logging.Logger LOGGER;
    descriptor: Ljava/util/logging/Logger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 30
            ldc Lorg/glassfish/grizzly/memory/MemoryManagerInitializer;
            invokestatic org.glassfish.grizzly.Grizzly.logger:(Ljava/lang/Class;)Ljava/util/logging/Logger;
            putstatic org.glassfish.grizzly.memory.MemoryManagerInitializer.LOGGER:Ljava/util/logging/Logger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.memory.MemoryManagerInitializer this
         0: .line 26
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.glassfish.grizzly.memory.MemoryManagerInitializer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/MemoryManagerInitializer;

  static org.glassfish.grizzly.memory.MemoryManager initManager();
    descriptor: ()Lorg/glassfish/grizzly/memory/MemoryManager;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 36
            invokestatic org.glassfish.grizzly.memory.MemoryManagerInitializer.initMemoryManagerViaFactory:()Lorg/glassfish/grizzly/memory/MemoryManager;
            astore 0 /* mm */
        start local 0 // org.glassfish.grizzly.memory.MemoryManager mm
         1: .line 37
            aload 0 /* mm */
            ifnull 2
            aload 0 /* mm */
            goto 3
      StackMap locals: org.glassfish.grizzly.memory.MemoryManager
      StackMap stack:
         2: invokestatic org.glassfish.grizzly.memory.MemoryManagerInitializer.initMemoryManagerFallback:()Lorg/glassfish/grizzly/memory/MemoryManager;
      StackMap locals:
      StackMap stack: org.glassfish.grizzly.memory.MemoryManager
         3: areturn
        end local 0 // org.glassfish.grizzly.memory.MemoryManager mm
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    4     0    mm  Lorg/glassfish/grizzly/memory/MemoryManager;

  private static org.glassfish.grizzly.memory.MemoryManager initMemoryManagerViaFactory();
    descriptor: ()Lorg/glassfish/grizzly/memory/MemoryManager;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=0
         0: .line 45
            ldc "org.glassfish.grizzly.MEMORY_MANAGER_FACTORY"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* dmmfClassName */
        start local 0 // java.lang.String dmmfClassName
         1: .line 46
            aload 0 /* dmmfClassName */
            ifnull 5
         2: .line 47
            aload 0 /* dmmfClassName */
            invokestatic org.glassfish.grizzly.memory.MemoryManagerInitializer.newInstance:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.memory.DefaultMemoryManagerFactory
            astore 1 /* mmf */
        start local 1 // org.glassfish.grizzly.memory.DefaultMemoryManagerFactory mmf
         3: .line 48
            aload 1 /* mmf */
            ifnull 5
         4: .line 49
            aload 1 /* mmf */
            invokeinterface org.glassfish.grizzly.memory.DefaultMemoryManagerFactory.createMemoryManager:()Lorg/glassfish/grizzly/memory/MemoryManager;
            areturn
        end local 1 // org.glassfish.grizzly.memory.DefaultMemoryManagerFactory mmf
         5: .line 52
      StackMap locals: java.lang.String
      StackMap stack:
            aconst_null
            areturn
        end local 0 // java.lang.String dmmfClassName
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            1    6     0  dmmfClassName  Ljava/lang/String;
            3    5     1            mmf  Lorg/glassfish/grizzly/memory/DefaultMemoryManagerFactory;

  private static org.glassfish.grizzly.memory.MemoryManager initMemoryManagerFallback();
    descriptor: ()Lorg/glassfish/grizzly/memory/MemoryManager;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=0
         0: .line 57
            ldc "org.glassfish.grizzly.DEFAULT_MEMORY_MANAGER"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* className */
        start local 0 // java.lang.String className
         1: .line 58
            aload 0 /* className */
            invokestatic org.glassfish.grizzly.memory.MemoryManagerInitializer.newInstance:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.memory.MemoryManager
            astore 1 /* mm */
        start local 1 // org.glassfish.grizzly.memory.MemoryManager mm
         2: .line 59
            aload 1 /* mm */
            ifnull 3
            aload 1 /* mm */
            goto 4
      StackMap locals: java.lang.String org.glassfish.grizzly.memory.MemoryManager
      StackMap stack:
         3: new org.glassfish.grizzly.memory.HeapMemoryManager
            dup
            invokespecial org.glassfish.grizzly.memory.HeapMemoryManager.<init>:()V
      StackMap locals:
      StackMap stack: org.glassfish.grizzly.memory.MemoryManager
         4: areturn
        end local 1 // org.glassfish.grizzly.memory.MemoryManager mm
        end local 0 // java.lang.String className
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            1    5     0  className  Ljava/lang/String;
            2    5     1         mm  Lorg/glassfish/grizzly/memory/MemoryManager;

  private static <T> T newInstance(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/Object;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // java.lang.String className
         0: .line 64
            aload 0 /* className */
            ifnonnull 2
         1: .line 65
            aconst_null
            areturn
         2: .line 68
      StackMap locals:
      StackMap stack:
            aload 0 /* className */
            iconst_1
            ldc Lorg/glassfish/grizzly/memory/MemoryManager;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            astore 1 /* clazz */
        start local 1 // java.lang.Class clazz
         3: .line 69
            aload 1 /* clazz */
            invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
         4: areturn
        end local 1 // java.lang.Class clazz
         5: .line 70
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 1 /* e */
        start local 1 // java.lang.Exception e
         6: .line 71
            getstatic org.glassfish.grizzly.memory.MemoryManagerInitializer.LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.SEVERE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 8
         7: .line 72
            getstatic org.glassfish.grizzly.memory.MemoryManagerInitializer.LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.SEVERE:Ljava/util/logging/Level;
            ldc "Unable to load or create a new instance of Class {0}.  Cause: {1}"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* className */
            aastore
            dup
            iconst_1
            aload 1 /* e */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            aastore
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;[Ljava/lang/Object;)V
         8: .line 74
      StackMap locals: java.lang.Exception
      StackMap stack:
            getstatic org.glassfish.grizzly.memory.MemoryManagerInitializer.LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
            ifeq 10
         9: .line 75
            getstatic org.glassfish.grizzly.memory.MemoryManagerInitializer.LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINE:Ljava/util/logging/Level;
            aload 1 /* e */
            invokevirtual java.lang.Exception.toString:()Ljava/lang/String;
            aload 1 /* e */
            invokevirtual java.util.logging.Logger.log:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)V
        10: .line 77
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 1 // java.lang.Exception e
        end local 0 // java.lang.String className
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0  className  Ljava/lang/String;
            3    5     1      clazz  Ljava/lang/Class;
            6   11     1          e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     4       5  Class java.lang.Exception
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;)TT;
    MethodParameters:
           Name  Flags
      className  final
}
SourceFile: "MemoryManagerInitializer.java"