public class org.glassfish.grizzly.memory.HeapMemoryManager extends org.glassfish.grizzly.memory.AbstractMemoryManager<org.glassfish.grizzly.memory.HeapBuffer> implements org.glassfish.grizzly.memory.WrapperAware
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.glassfish.grizzly.memory.HeapMemoryManager
  super_class: org.glassfish.grizzly.memory.AbstractMemoryManager
{
  private static final org.glassfish.grizzly.ThreadCache$CachedTypeIndex<org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer> CACHE_IDX;
    descriptor: Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex<Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;>;

  private static final org.glassfish.grizzly.ThreadCache$CachedTypeIndex<org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper> BBW_CACHE_IDX;
    descriptor: Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex<Lorg/glassfish/grizzly/memory/HeapMemoryManager$RecyclableByteBufferWrapper;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 37
            ldc Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
         1: .line 38
            new java.lang.StringBuilder
            dup
            ldc Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".thb-cache-size"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            bipush 8
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
         2: .line 37
            invokestatic org.glassfish.grizzly.ThreadCache.obtainIndex:(Ljava/lang/Class;I)Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
            putstatic org.glassfish.grizzly.memory.HeapMemoryManager.CACHE_IDX:Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
         3: .line 40
            ldc Lorg/glassfish/grizzly/memory/HeapMemoryManager$RecyclableByteBufferWrapper;
         4: .line 41
            new java.lang.StringBuilder
            dup
            ldc Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".rbbw-cache-size"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            iconst_2
            invokestatic java.lang.Integer.getInteger:(Ljava/lang/String;I)Ljava/lang/Integer;
            invokevirtual java.lang.Integer.intValue:()I
         5: .line 40
            invokestatic org.glassfish.grizzly.ThreadCache.obtainIndex:(Ljava/lang/Class;I)Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
            putstatic org.glassfish.grizzly.memory.HeapMemoryManager.BBW_CACHE_IDX:Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
         6: .line 41
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
         0: .line 44
            aload 0 /* this */
            invokespecial org.glassfish.grizzly.memory.AbstractMemoryManager.<init>:()V
         1: .line 45
            return
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // int maxBufferSize
         0: .line 48
            aload 0 /* this */
            iload 1 /* maxBufferSize */
            invokespecial org.glassfish.grizzly.memory.AbstractMemoryManager.<init>:(I)V
         1: .line 49
            return
        end local 1 // int maxBufferSize
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    2     1  maxBufferSize  I
    MethodParameters:
               Name  Flags
      maxBufferSize  final

  public org.glassfish.grizzly.memory.HeapBuffer allocate(int);
    descriptor: (I)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // int size
         0: .line 58
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.allocateHeapBuffer:(I)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
        end local 1 // int size
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1  size  I
    MethodParameters:
      Name  Flags
      size  final

  public org.glassfish.grizzly.memory.HeapBuffer allocateAtLeast(int);
    descriptor: (I)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // int size
         0: .line 66
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.allocateHeapBufferAtLeast:(I)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
        end local 1 // int size
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1  size  I
    MethodParameters:
      Name  Flags
      size  final

  public org.glassfish.grizzly.memory.HeapBuffer reallocate(org.glassfish.grizzly.memory.HeapBuffer, int);
    descriptor: (Lorg/glassfish/grizzly/memory/HeapBuffer;I)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // org.glassfish.grizzly.memory.HeapBuffer oldBuffer
        start local 2 // int newSize
         0: .line 74
            aload 0 /* this */
            aload 1 /* oldBuffer */
            iload 2 /* newSize */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.reallocateHeapBuffer:(Lorg/glassfish/grizzly/memory/HeapBuffer;I)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
        end local 2 // int newSize
        end local 1 // org.glassfish.grizzly.memory.HeapBuffer oldBuffer
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1  oldBuffer  Lorg/glassfish/grizzly/memory/HeapBuffer;
            0    1     2    newSize  I
    MethodParameters:
           Name  Flags
      oldBuffer  final
      newSize    final

  public void release(org.glassfish.grizzly.memory.HeapBuffer);
    descriptor: (Lorg/glassfish/grizzly/memory/HeapBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // org.glassfish.grizzly.memory.HeapBuffer buffer
         0: .line 82
            aload 0 /* this */
            aload 1 /* buffer */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.releaseHeapBuffer:(Lorg/glassfish/grizzly/memory/HeapBuffer;)V
         1: .line 83
            return
        end local 1 // org.glassfish.grizzly.memory.HeapBuffer buffer
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    2     1  buffer  Lorg/glassfish/grizzly/memory/HeapBuffer;
    MethodParameters:
        Name  Flags
      buffer  final

  public boolean willAllocateDirect(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // int size
         0: .line 90
            iconst_0
            ireturn
        end local 1 // int size
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1  size  I
    MethodParameters:
      Name  Flags
      size  

  public org.glassfish.grizzly.monitoring.MonitoringConfig<org.glassfish.grizzly.memory.MemoryProbe> getMonitoringConfig();
    descriptor: ()Lorg/glassfish/grizzly/monitoring/MonitoringConfig;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
         0: .line 98
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            areturn
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
    Signature: ()Lorg/glassfish/grizzly/monitoring/MonitoringConfig<Lorg/glassfish/grizzly/memory/MemoryProbe;>;

  public org.glassfish.grizzly.memory.ThreadLocalPool createThreadLocalPool();
    descriptor: ()Lorg/glassfish/grizzly/memory/ThreadLocalPool;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
         0: .line 106
            new org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool
            dup
            aload 0 /* this */
            invokespecial org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool.<init>:(Lorg/glassfish/grizzly/memory/HeapMemoryManager;)V
            areturn
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;

  protected java.lang.Object createJmxManagementObject();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
         0: .line 114
            ldc "org.glassfish.grizzly.memory.jmx.HeapMemoryManager"
            aload 0 /* this */
            ldc Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            invokestatic org.glassfish.grizzly.monitoring.MonitoringUtils.loadJmxObject:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
            areturn
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;

  public org.glassfish.grizzly.memory.HeapBuffer wrap(byte[]);
    descriptor: ([B)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // byte[] data
         0: .line 124
            aload 0 /* this */
            aload 1 /* data */
            iconst_0
            aload 1 /* data */
            arraylength
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createTrimAwareBuffer:([BII)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
            areturn
        end local 1 // byte[] data
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1  data  [B
    MethodParameters:
      Name  Flags
      data  final

  public org.glassfish.grizzly.memory.HeapBuffer wrap(byte[], int, int);
    descriptor: ([BII)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // byte[] data
        start local 2 // int offset
        start local 3 // int length
         0: .line 132
            aload 0 /* this */
            aload 1 /* data */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createTrimAwareBuffer:([BII)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
            areturn
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] data
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1    data  [B
            0    1     2  offset  I
            0    1     3  length  I
    MethodParameters:
        Name  Flags
      data    final
      offset  final
      length  final

  public org.glassfish.grizzly.memory.HeapBuffer wrap(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // java.lang.String s
         0: .line 140
            aload 0 /* this */
            aload 1 /* s */
            invokestatic java.nio.charset.Charset.defaultCharset:()Ljava/nio/charset/Charset;
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.wrap:(Ljava/lang/String;Ljava/nio/charset/Charset;)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
        end local 1 // java.lang.String s
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1     s  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     final

  public org.glassfish.grizzly.memory.HeapBuffer wrap(java.lang.String, java.nio.charset.Charset);
    descriptor: (Ljava/lang/String;Ljava/nio/charset/Charset;)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // java.lang.String s
        start local 2 // java.nio.charset.Charset charset
         0: .line 148
            aload 0 /* this */
            aload 1 /* s */
            aload 2 /* charset */
            invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.wrap:([B)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
        end local 2 // java.nio.charset.Charset charset
        end local 1 // java.lang.String s
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    1     1        s  Ljava/lang/String;
            0    1     2  charset  Ljava/nio/charset/Charset;
    MethodParameters:
         Name  Flags
      s        final
      charset  final

  public org.glassfish.grizzly.Buffer wrap(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Lorg/glassfish/grizzly/Buffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // java.nio.ByteBuffer byteBuffer
         0: .line 156
            aload 1 /* byteBuffer */
            invokevirtual java.nio.ByteBuffer.hasArray:()Z
            ifeq 2
         1: .line 157
            aload 0 /* this */
            aload 1 /* byteBuffer */
            invokevirtual java.nio.ByteBuffer.array:()[B
            aload 1 /* byteBuffer */
            invokevirtual java.nio.ByteBuffer.arrayOffset:()I
            aload 1 /* byteBuffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            iadd
            aload 1 /* byteBuffer */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.wrap:([BII)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
         2: .line 159
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* byteBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createByteBufferWrapper:(Ljava/nio/ByteBuffer;)Lorg/glassfish/grizzly/memory/ByteBufferWrapper;
            areturn
        end local 1 // java.nio.ByteBuffer byteBuffer
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    3     1  byteBuffer  Ljava/nio/ByteBuffer;
    MethodParameters:
            Name  Flags
      byteBuffer  final

  protected org.glassfish.grizzly.memory.HeapBuffer allocateHeapBuffer(int);
    descriptor: (I)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // int size
         0: .line 172
            iload 1 /* size */
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.maxBufferSize:I
            if_icmple 2
         1: .line 174
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createTrimAwareBuffer:(I)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
            areturn
         2: .line 177
      StackMap locals:
      StackMap stack:
            invokestatic org.glassfish.grizzly.memory.HeapMemoryManager.getHeapBufferThreadLocalPool:()Lorg/glassfish/grizzly/memory/HeapMemoryManager$HeapBufferThreadLocalPool;
            astore 2 /* threadLocalCache */
        start local 2 // org.glassfish.grizzly.memory.ThreadLocalPool threadLocalCache
         3: .line 178
            aload 2 /* threadLocalCache */
            ifnull 8
         4: .line 179
            aload 2 /* threadLocalCache */
            invokeinterface org.glassfish.grizzly.memory.ThreadLocalPool.remaining:()I
            istore 3 /* remaining */
        start local 3 // int remaining
         5: .line 181
            iload 3 /* remaining */
            ifeq 6
            iload 3 /* remaining */
            iload 1 /* size */
            if_icmpge 7
         6: .line 182
      StackMap locals: org.glassfish.grizzly.memory.ThreadLocalPool int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.reallocatePoolBuffer:()V
         7: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* threadLocalCache */
            iload 1 /* size */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.allocateFromPool:(Lorg/glassfish/grizzly/memory/ThreadLocalPool;I)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.memory.HeapBuffer
            areturn
        end local 3 // int remaining
         8: .line 187
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createTrimAwareBuffer:(I)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
            areturn
        end local 2 // org.glassfish.grizzly.memory.ThreadLocalPool threadLocalCache
        end local 1 // int size
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    9     1              size  I
            3    9     2  threadLocalCache  Lorg/glassfish/grizzly/memory/ThreadLocalPool<Lorg/glassfish/grizzly/memory/HeapBuffer;>;
            5    8     3         remaining  I
    MethodParameters:
      Name  Flags
      size  final

  protected org.glassfish.grizzly.memory.HeapBuffer allocateHeapBufferAtLeast(int);
    descriptor: (I)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // int size
         0: .line 192
            iload 1 /* size */
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.maxBufferSize:I
            if_icmple 2
         1: .line 194
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createTrimAwareBuffer:(I)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
            areturn
         2: .line 197
      StackMap locals:
      StackMap stack:
            invokestatic org.glassfish.grizzly.memory.HeapMemoryManager.getHeapBufferThreadLocalPool:()Lorg/glassfish/grizzly/memory/HeapMemoryManager$HeapBufferThreadLocalPool;
            astore 2 /* threadLocalCache */
        start local 2 // org.glassfish.grizzly.memory.ThreadLocalPool threadLocalCache
         3: .line 198
            aload 2 /* threadLocalCache */
            ifnull 9
         4: .line 199
            aload 2 /* threadLocalCache */
            invokeinterface org.glassfish.grizzly.memory.ThreadLocalPool.remaining:()I
            istore 3 /* remaining */
        start local 3 // int remaining
         5: .line 201
            iload 3 /* remaining */
            ifeq 6
            iload 3 /* remaining */
            iload 1 /* size */
            if_icmpge 8
         6: .line 202
      StackMap locals: org.glassfish.grizzly.memory.ThreadLocalPool int
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.reallocatePoolBuffer:()V
         7: .line 203
            aload 2 /* threadLocalCache */
            invokeinterface org.glassfish.grizzly.memory.ThreadLocalPool.remaining:()I
            istore 3 /* remaining */
         8: .line 206
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* threadLocalCache */
            iload 3 /* remaining */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.allocateFromPool:(Lorg/glassfish/grizzly/memory/ThreadLocalPool;I)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.memory.HeapBuffer
            areturn
        end local 3 // int remaining
         9: .line 208
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createTrimAwareBuffer:(I)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
            areturn
        end local 2 // org.glassfish.grizzly.memory.ThreadLocalPool threadLocalCache
        end local 1 // int size
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   10     0              this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0   10     1              size  I
            3   10     2  threadLocalCache  Lorg/glassfish/grizzly/memory/ThreadLocalPool<Lorg/glassfish/grizzly/memory/HeapBuffer;>;
            5    9     3         remaining  I
    MethodParameters:
      Name  Flags
      size  final

  protected org.glassfish.grizzly.memory.HeapBuffer reallocateHeapBuffer(org.glassfish.grizzly.memory.HeapBuffer, int);
    descriptor: (Lorg/glassfish/grizzly/memory/HeapBuffer;I)Lorg/glassfish/grizzly/memory/HeapBuffer;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // org.glassfish.grizzly.memory.HeapBuffer oldHeapBuffer
        start local 2 // int newSize
         0: .line 213
            aload 1 /* oldHeapBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapBuffer.capacity:()I
            iload 2 /* newSize */
            if_icmplt 2
         1: .line 214
            aload 1 /* oldHeapBuffer */
            areturn
         2: .line 217
      StackMap locals:
      StackMap stack:
            invokestatic org.glassfish.grizzly.memory.HeapMemoryManager.getHeapBufferThreadLocalPool:()Lorg/glassfish/grizzly/memory/HeapMemoryManager$HeapBufferThreadLocalPool;
            astore 3 /* memoryPool */
        start local 3 // org.glassfish.grizzly.memory.ThreadLocalPool memoryPool
         3: .line 218
            aload 3 /* memoryPool */
            ifnull 8
         4: .line 219
            aload 3 /* memoryPool */
            aload 1 /* oldHeapBuffer */
            iload 2 /* newSize */
            invokeinterface org.glassfish.grizzly.memory.ThreadLocalPool.reallocate:(Ljava/lang/Object;I)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.memory.HeapBuffer
            astore 4 /* newBuffer */
        start local 4 // org.glassfish.grizzly.memory.HeapBuffer newBuffer
         5: .line 221
            aload 4 /* newBuffer */
            ifnull 8
         6: .line 222
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            iload 2 /* newSize */
            aload 1 /* oldHeapBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapBuffer.capacity:()I
            isub
            invokestatic org.glassfish.grizzly.memory.ProbeNotifier.notifyBufferAllocatedFromPool:(Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;I)V
         7: .line 224
            aload 4 /* newBuffer */
            areturn
        end local 4 // org.glassfish.grizzly.memory.HeapBuffer newBuffer
         8: .line 228
      StackMap locals: org.glassfish.grizzly.memory.ThreadLocalPool
      StackMap stack:
            aload 0 /* this */
            iload 2 /* newSize */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.allocateHeapBuffer:(I)Lorg/glassfish/grizzly/memory/HeapBuffer;
            astore 4 /* newHeapBuffer */
        start local 4 // org.glassfish.grizzly.memory.HeapBuffer newHeapBuffer
         9: .line 229
            aload 1 /* oldHeapBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapBuffer.flip:()Lorg/glassfish/grizzly/memory/HeapBuffer;
            pop
        10: .line 230
            aload 4 /* newHeapBuffer */
            aload 1 /* oldHeapBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapBuffer.put:(Lorg/glassfish/grizzly/Buffer;)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
        end local 4 // org.glassfish.grizzly.memory.HeapBuffer newHeapBuffer
        end local 3 // org.glassfish.grizzly.memory.ThreadLocalPool memoryPool
        end local 2 // int newSize
        end local 1 // org.glassfish.grizzly.memory.HeapBuffer oldHeapBuffer
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0   11     1  oldHeapBuffer  Lorg/glassfish/grizzly/memory/HeapBuffer;
            0   11     2        newSize  I
            3   11     3     memoryPool  Lorg/glassfish/grizzly/memory/ThreadLocalPool<Lorg/glassfish/grizzly/memory/HeapBuffer;>;
            5    8     4      newBuffer  Lorg/glassfish/grizzly/memory/HeapBuffer;
            9   11     4  newHeapBuffer  Lorg/glassfish/grizzly/memory/HeapBuffer;
    MethodParameters:
               Name  Flags
      oldHeapBuffer  
      newSize        

  protected final void releaseHeapBuffer(org.glassfish.grizzly.memory.HeapBuffer);
    descriptor: (Lorg/glassfish/grizzly/memory/HeapBuffer;)V
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // org.glassfish.grizzly.memory.HeapBuffer heapBuffer
         0: .line 234
            invokestatic org.glassfish.grizzly.memory.HeapMemoryManager.getHeapBufferThreadLocalPool:()Lorg/glassfish/grizzly/memory/HeapMemoryManager$HeapBufferThreadLocalPool;
            astore 2 /* memoryPool */
        start local 2 // org.glassfish.grizzly.memory.ThreadLocalPool memoryPool
         1: .line 235
            aload 2 /* memoryPool */
            ifnull 4
         2: .line 237
            aload 2 /* memoryPool */
            aload 1 /* heapBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapBuffer.clear:()Lorg/glassfish/grizzly/memory/HeapBuffer;
            invokeinterface org.glassfish.grizzly.memory.ThreadLocalPool.release:(Ljava/lang/Object;)Z
            ifeq 4
         3: .line 238
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            aload 1 /* heapBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapBuffer.capacity:()I
            invokestatic org.glassfish.grizzly.memory.ProbeNotifier.notifyBufferReleasedToPool:(Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;I)V
         4: .line 242
      StackMap locals: org.glassfish.grizzly.memory.ThreadLocalPool
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.memory.ThreadLocalPool memoryPool
        end local 1 // org.glassfish.grizzly.memory.HeapBuffer heapBuffer
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    5     1  heapBuffer  Lorg/glassfish/grizzly/memory/HeapBuffer;
            1    5     2  memoryPool  Lorg/glassfish/grizzly/memory/ThreadLocalPool<Lorg/glassfish/grizzly/memory/HeapBuffer;>;
    MethodParameters:
            Name  Flags
      heapBuffer  final

  private void reallocatePoolBuffer();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
         0: .line 247
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.maxBufferSize:I
            newarray 8
            astore 1 /* heap */
        start local 1 // byte[] heap
         1: .line 248
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.maxBufferSize:I
            invokestatic org.glassfish.grizzly.memory.ProbeNotifier.notifyBufferAllocated:(Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;I)V
         2: .line 250
            invokestatic org.glassfish.grizzly.memory.HeapMemoryManager.getHeapBufferThreadLocalPool:()Lorg/glassfish/grizzly/memory/HeapMemoryManager$HeapBufferThreadLocalPool;
            astore 2 /* threadLocalCache */
        start local 2 // org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool threadLocalCache
         3: .line 251
            aload 2 /* threadLocalCache */
            ifnull 5
         4: .line 252
            aload 2 /* threadLocalCache */
            aload 1 /* heap */
            iconst_0
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.maxBufferSize:I
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool.reset:([BII)V
         5: .line 254
      StackMap locals: byte[] org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool
      StackMap stack:
            return
        end local 2 // org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool threadLocalCache
        end local 1 // byte[] heap
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            1    6     1              heap  [B
            3    6     2  threadLocalCache  Lorg/glassfish/grizzly/memory/HeapMemoryManager$HeapBufferThreadLocalPool;

  org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer createTrimAwareBuffer(int);
    descriptor: (I)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // int length
         0: .line 257
            iload 1 /* length */
            newarray 8
            astore 2 /* heap */
        start local 2 // byte[] heap
         1: .line 258
            aload 0 /* this */
            getfield org.glassfish.grizzly.memory.HeapMemoryManager.monitoringConfig:Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;
            iload 1 /* length */
            invokestatic org.glassfish.grizzly.memory.ProbeNotifier.notifyBufferAllocated:(Lorg/glassfish/grizzly/monitoring/DefaultMonitoringConfig;I)V
         2: .line 260
            aload 0 /* this */
            aload 2 /* heap */
            iconst_0
            iload 1 /* length */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.createTrimAwareBuffer:([BII)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
            areturn
        end local 2 // byte[] heap
        end local 1 // int length
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    3     1  length  I
            1    3     2    heap  [B
    MethodParameters:
        Name  Flags
      length  final

  org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer createTrimAwareBuffer(byte[], int, int);
    descriptor: ([BII)Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // byte[] heap
        start local 2 // int offset
        start local 3 // int length
         0: .line 265
            getstatic org.glassfish.grizzly.memory.HeapMemoryManager.CACHE_IDX:Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
            invokestatic org.glassfish.grizzly.ThreadCache.takeFromCache:(Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer
            astore 4 /* buffer */
        start local 4 // org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer buffer
         1: .line 266
            aload 4 /* buffer */
            ifnull 4
         2: .line 267
            aload 4 /* buffer */
            aload 0 /* this */
            aload 1 /* heap */
            iload 2 /* offset */
            iload 3 /* length */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer.initialize:(Lorg/glassfish/grizzly/memory/HeapMemoryManager;[BII)V
         3: .line 268
            aload 4 /* buffer */
            areturn
         4: .line 271
      StackMap locals: org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer
      StackMap stack:
            new org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer
            dup
            aload 0 /* this */
            aload 1 /* heap */
            iload 2 /* offset */
            iload 3 /* length */
            invokespecial org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer.<init>:(Lorg/glassfish/grizzly/memory/HeapMemoryManager;[BII)V
            areturn
        end local 4 // org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer buffer
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] heap
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    5     1    heap  [B
            0    5     2  offset  I
            0    5     3  length  I
            1    5     4  buffer  Lorg/glassfish/grizzly/memory/HeapMemoryManager$TrimmableHeapBuffer;
    MethodParameters:
        Name  Flags
      heap    final
      offset  final
      length  final

  private org.glassfish.grizzly.memory.ByteBufferWrapper createByteBufferWrapper(java.nio.ByteBuffer);
    descriptor: (Ljava/nio/ByteBuffer;)Lorg/glassfish/grizzly/memory/ByteBufferWrapper;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
        start local 1 // java.nio.ByteBuffer underlyingByteBuffer
         0: .line 276
            getstatic org.glassfish.grizzly.memory.HeapMemoryManager.BBW_CACHE_IDX:Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;
            invokestatic org.glassfish.grizzly.ThreadCache.takeFromCache:(Lorg/glassfish/grizzly/ThreadCache$CachedTypeIndex;)Ljava/lang/Object;
            checkcast org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper
            astore 2 /* buffer */
        start local 2 // org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper buffer
         1: .line 277
            aload 2 /* buffer */
            ifnull 4
         2: .line 278
            aload 2 /* buffer */
            aload 1 /* underlyingByteBuffer */
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper.initialize:(Ljava/nio/ByteBuffer;)V
         3: .line 279
            aload 2 /* buffer */
            areturn
         4: .line 282
      StackMap locals: org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper
      StackMap stack:
            new org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper
            dup
            aload 1 /* underlyingByteBuffer */
            invokespecial org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper.<init>:(Ljava/nio/ByteBuffer;)V
            areturn
        end local 2 // org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper buffer
        end local 1 // java.nio.ByteBuffer underlyingByteBuffer
        end local 0 // org.glassfish.grizzly.memory.HeapMemoryManager this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    5     0                  this  Lorg/glassfish/grizzly/memory/HeapMemoryManager;
            0    5     1  underlyingByteBuffer  Ljava/nio/ByteBuffer;
            1    5     2                buffer  Lorg/glassfish/grizzly/memory/HeapMemoryManager$RecyclableByteBufferWrapper;
    MethodParameters:
                      Name  Flags
      underlyingByteBuffer  final

  private static org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool getHeapBufferThreadLocalPool();
    descriptor: ()Lorg/glassfish/grizzly/memory/HeapMemoryManager$HeapBufferThreadLocalPool;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=0
         0: .line 292
            invokestatic org.glassfish.grizzly.memory.HeapMemoryManager.getThreadLocalPool:()Lorg/glassfish/grizzly/memory/ThreadLocalPool;
            astore 0 /* pool */
        start local 0 // org.glassfish.grizzly.memory.ThreadLocalPool pool
         1: .line 293
            aload 0 /* pool */
            instanceof org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool
            ifeq 2
            aload 0 /* pool */
            checkcast org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool
            goto 3
      StackMap locals: org.glassfish.grizzly.memory.ThreadLocalPool
      StackMap stack:
         2: aconst_null
      StackMap locals:
      StackMap stack: org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool
         3: areturn
        end local 0 // org.glassfish.grizzly.memory.ThreadLocalPool pool
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1    4     0  pool  Lorg/glassfish/grizzly/memory/ThreadLocalPool;

  public org.glassfish.grizzly.Buffer allocate(int);
    descriptor: (I)Lorg/glassfish/grizzly/Buffer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.allocate:(I)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.glassfish.grizzly.Buffer wrap(java.lang.String, java.nio.charset.Charset);
    descriptor: (Ljava/lang/String;Ljava/nio/charset/Charset;)Lorg/glassfish/grizzly/Buffer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.wrap:(Ljava/lang/String;Ljava/nio/charset/Charset;)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.glassfish.grizzly.Buffer wrap(java.lang.String);
    descriptor: (Ljava/lang/String;)Lorg/glassfish/grizzly/Buffer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.wrap:(Ljava/lang/String;)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.glassfish.grizzly.Buffer wrap(byte[], int, int);
    descriptor: ([BII)Lorg/glassfish/grizzly/Buffer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            iload 2
            iload 3
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.wrap:([BII)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.glassfish.grizzly.Buffer wrap(byte[]);
    descriptor: ([B)Lorg/glassfish/grizzly/Buffer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.wrap:([B)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.glassfish.grizzly.Buffer allocateAtLeast(int);
    descriptor: (I)Lorg/glassfish/grizzly/Buffer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            iload 1
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.allocateAtLeast:(I)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public org.glassfish.grizzly.Buffer reallocate(org.glassfish.grizzly.Buffer, int);
    descriptor: (Lorg/glassfish/grizzly/Buffer;I)Lorg/glassfish/grizzly/Buffer;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            checkcast org.glassfish.grizzly.memory.HeapBuffer
            iload 2
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.reallocate:(Lorg/glassfish/grizzly/memory/HeapBuffer;I)Lorg/glassfish/grizzly/memory/HeapBuffer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void release(org.glassfish.grizzly.Buffer);
    descriptor: (Lorg/glassfish/grizzly/Buffer;)V
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            checkcast org.glassfish.grizzly.memory.HeapBuffer
            invokevirtual org.glassfish.grizzly.memory.HeapMemoryManager.release:(Lorg/glassfish/grizzly/memory/HeapBuffer;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
Signature: Lorg/glassfish/grizzly/memory/AbstractMemoryManager<Lorg/glassfish/grizzly/memory/HeapBuffer;>;Lorg/glassfish/grizzly/memory/WrapperAware;
SourceFile: "HeapMemoryManager.java"
NestMembers:
  org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool  org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper  org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer
InnerClasses:
  public final CachedTypeIndex = org.glassfish.grizzly.ThreadCache$CachedTypeIndex of org.glassfish.grizzly.ThreadCache
  private final HeapBufferThreadLocalPool = org.glassfish.grizzly.memory.HeapMemoryManager$HeapBufferThreadLocalPool of org.glassfish.grizzly.memory.HeapMemoryManager
  private final RecyclableByteBufferWrapper = org.glassfish.grizzly.memory.HeapMemoryManager$RecyclableByteBufferWrapper of org.glassfish.grizzly.memory.HeapMemoryManager
  private final TrimmableHeapBuffer = org.glassfish.grizzly.memory.HeapMemoryManager$TrimmableHeapBuffer of org.glassfish.grizzly.memory.HeapMemoryManager