test_class.declarator: random
test_class.original_string: Random random;
test_class.type: Random
test_class.var_name: random
test_class.declarator: pointer
test_class.modifier: @Mock
test_class.original_string: @Mock
    Pointer pointer;
test_class.type: Pointer
test_class.var_name: pointer
test_class.declarator: queue
test_class.modifier: @Mock
test_class.original_string: @Mock
    BlockingQueue<Integer> queue;
test_class.type: BlockingQueue<Integer>
test_class.var_name: queue
test_class.declarator: buffer
test_class.modifier: @Mock
test_class.original_string: @Mock
    OffHeapByteBuffer buffer;
test_class.type: OffHeapByteBuffer
test_class.var_name: buffer
test_class.declarator: bufferStore = new OffHeapByteBufferStore(1000, 1)
test_class.modifier: @Spy
test_class.original_string: @Spy
    OffHeapByteBufferStore bufferStore = new OffHeapByteBufferStore(1000, 1);
test_class.type: OffHeapByteBufferStore
test_class.var_name: bufferStore
test_class.file: imcache-offheap/src/test/java/com/cetsoft/imcache/offheap/bytebuffer/OffHeapByteBufferStoreTest.java
test_class.identifier: OffHeapByteBufferStoreTest
test_case.body: @Test
    public void freeWithIndex() {
      bufferStore.buffers = new OffHeapByteBuffer[]{buffer};
      bufferStore.availableBuffers = queue;
      doReturn(true).when(queue).add(anyInt());
      doNothing().when(buffer).free();
      bufferStore.free(0);
      verify(buffer).free();
      verify(queue).add(anyInt());
    }
test_case.class_method_signature: OffHeapByteBufferStoreTest.freeWithIndex()
test_case.full_signature: @Test public void freeWithIndex()
test_case.identifier: freeWithIndex
test_case.invocations: add when doReturn anyInt free when doNothing free free verify add verify anyInt
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void freeWithIndex()
focal_class.declarator: buffers
focal_class.modifier: protected
focal_class.original_string: protected OffHeapByteBuffer[] buffers;
focal_class.type: OffHeapByteBuffer[]
focal_class.var_name: buffers
focal_class.declarator: availableBuffers
focal_class.modifier: protected
focal_class.original_string: protected BlockingQueue<Integer> availableBuffers;
focal_class.type: BlockingQueue<Integer>
focal_class.var_name: availableBuffers
focal_class.declarator: bufferSize
focal_class.modifier: private volatile
focal_class.original_string: private volatile int bufferSize;
focal_class.type: int
focal_class.var_name: bufferSize
focal_class.declarator: currentBuffer = new AtomicInteger(0)
focal_class.modifier: private
focal_class.original_string: private AtomicInteger currentBuffer = new AtomicInteger(0);
focal_class.type: AtomicInteger
focal_class.var_name: currentBuffer
focal_class.declarator: bufferChangeLock = new ReentrantLock()
focal_class.modifier: private
focal_class.original_string: private Lock bufferChangeLock = new ReentrantLock();
focal_class.type: Lock
focal_class.var_name: bufferChangeLock
focal_class.file: imcache-offheap/src/main/java/com/cetsoft/imcache/offheap/bytebuffer/OffHeapByteBufferStore.java
focal_class.identifier: OffHeapByteBufferStore
focal_class.interfaces: implements OffHeapStore
focal_class.class_method_signature: OffHeapByteBufferStore.OffHeapByteBufferStore(int capacity, int bufferSize)
focal_class.full_signature: public  OffHeapByteBufferStore(int capacity, int bufferSize)
focal_class.identifier: OffHeapByteBufferStore
focal_class.modifiers: public
focal_class.parameters: (int capacity, int bufferSize)
focal_class.signature:  OffHeapByteBufferStore(int capacity, int bufferSize)
focal_class.class_method_signature: OffHeapByteBufferStore.OffHeapByteBufferStore(int capacity, int bufferSize, int concurrencyLevel)
focal_class.full_signature: public  OffHeapByteBufferStore(int capacity, int bufferSize, int concurrencyLevel)
focal_class.identifier: OffHeapByteBufferStore
focal_class.modifiers: public
focal_class.parameters: (int capacity, int bufferSize, int concurrencyLevel)
focal_class.signature:  OffHeapByteBufferStore(int capacity, int bufferSize, int concurrencyLevel)
focal_class.class_method_signature: OffHeapByteBufferStore.retrieve(Pointer pointer)
focal_class.full_signature: public byte[] retrieve(Pointer pointer)
focal_class.identifier: retrieve
focal_class.modifiers: public
focal_class.parameters: (Pointer pointer)
focal_class.return: byte[]
focal_class.signature: byte[] retrieve(Pointer pointer)
focal_class.class_method_signature: OffHeapByteBufferStore.remove(Pointer pointer)
focal_class.full_signature: public byte[] remove(Pointer pointer)
focal_class.identifier: remove
focal_class.modifiers: public
focal_class.parameters: (Pointer pointer)
focal_class.return: byte[]
focal_class.signature: byte[] remove(Pointer pointer)
focal_class.class_method_signature: OffHeapByteBufferStore.store(byte[] payload, long expiry)
focal_class.full_signature: public Pointer store(byte[] payload, long expiry)
focal_class.identifier: store
focal_class.modifiers: public
focal_class.parameters: (byte[] payload, long expiry)
focal_class.return: Pointer
focal_class.signature: Pointer store(byte[] payload, long expiry)
focal_class.class_method_signature: OffHeapByteBufferStore.nextBuffer()
focal_class.full_signature: protected void nextBuffer()
focal_class.identifier: nextBuffer
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void nextBuffer()
focal_class.class_method_signature: OffHeapByteBufferStore.store(final byte[] payload, final OffHeapByteBuffer buffer, final long expiry)
focal_class.full_signature: protected Pointer store(final byte[] payload, final OffHeapByteBuffer buffer, final long expiry)
focal_class.identifier: store
focal_class.modifiers: protected
focal_class.parameters: (final byte[] payload, final OffHeapByteBuffer buffer, final long expiry)
focal_class.return: Pointer
focal_class.signature: Pointer store(final byte[] payload, final OffHeapByteBuffer buffer, final long expiry)
focal_class.class_method_signature: OffHeapByteBufferStore.update(final Pointer pointer, final byte[] payload, final long expiry)
focal_class.full_signature: public Pointer update(final Pointer pointer, final byte[] payload, final long expiry)
focal_class.identifier: update
focal_class.modifiers: public
focal_class.parameters: (final Pointer pointer, final byte[] payload, final long expiry)
focal_class.return: Pointer
focal_class.signature: Pointer update(final Pointer pointer, final byte[] payload, final long expiry)
focal_class.class_method_signature: OffHeapByteBufferStore.dirtyMemory()
focal_class.full_signature: public long dirtyMemory()
focal_class.identifier: dirtyMemory
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long dirtyMemory()
focal_class.class_method_signature: OffHeapByteBufferStore.usedMemory()
focal_class.full_signature: public long usedMemory()
focal_class.identifier: usedMemory
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long usedMemory()
focal_class.class_method_signature: OffHeapByteBufferStore.freeMemory()
focal_class.full_signature: public long freeMemory()
focal_class.identifier: freeMemory
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: long
focal_class.signature: long freeMemory()
focal_class.class_method_signature: OffHeapByteBufferStore.free()
focal_class.full_signature: public void free()
focal_class.identifier: free
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void free()
focal_class.class_method_signature: OffHeapByteBufferStore.free(int bufferIndex)
focal_class.full_signature: public void free(int bufferIndex)
focal_class.identifier: free
focal_class.modifiers: public
focal_class.parameters: (int bufferIndex)
focal_class.return: void
focal_class.signature: void free(int bufferIndex)
focal_class.class_method_signature: OffHeapByteBufferStore.currentBuffer()
focal_class.full_signature: protected OffHeapByteBuffer currentBuffer()
focal_class.identifier: currentBuffer
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: OffHeapByteBuffer
focal_class.signature: OffHeapByteBuffer currentBuffer()
focal_method.body: public void free() {
      for (int i = 0; i < bufferSize; i++) {
        free(i);
      }
    }
focal_method.class_method_signature: OffHeapByteBufferStore.free()
focal_method.full_signature: public void free()
focal_method.identifier: free
focal_method.invocations: free
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: void
focal_method.signature: void free()