public String formattedMetrics(ByteBufAllocatorMetric allocatorMetric) { int capacity = allocatorMetric != null ? 384: 96; // roughly with or without allocator metrics StringBuilder sb = new StringBuilder(capacity) .append('{') .append(" poolName: ").append(getName()) .append(", initialPoolSize: ").append(getInitialSize()) .append(", totalPoolSize: ").append(getTotalSize()) .append(", availablePoolSize: ").append(getAvailableSize()); if (allocatorMetric != null) { sb.append(", allocatorMetric: ").append(allocatorMetric); } return sb.append('}').toString(); }
public String formattedMetrics(ByteBufAllocatorMetric allocatorMetric) { int capacity = allocatorMetric != null ? 384: 96; // roughly with or without allocator metrics StringBuilder sb = new StringBuilder(capacity) .append('{') .append(" poolName: ").append(getName()) .append(", initialPoolSize: ").append(getInitialSize()) .append(", totalPoolSize: ").append(getTotalSize()) .append(", availablePoolSize: ").append(getAvailableSize()); if (allocatorMetric != null) { sb.append(", allocatorMetric: ").append(allocatorMetric); } return sb.append('}').toString(); }
@Test public void defaultReleaseCallbackReturnsPooledElement() throws PoolResourceException { // given BufferedItemSourcePool pool = createDefaultTestBufferedItemSourcePool(false); assertEquals(DEFAULT_TEST_INITIAL_POOL_SIZE, pool.getAvailableSize()); pool.incrementPoolSize(); assertEquals(DEFAULT_TEST_INITIAL_POOL_SIZE + 1, pool.getAvailableSize()); // when ItemSource<ByteBuf> itemSource = pool.getPooled(); assertEquals(DEFAULT_TEST_INITIAL_POOL_SIZE, pool.getAvailableSize()); itemSource.release(); // then assertEquals(DEFAULT_TEST_INITIAL_POOL_SIZE + 1, pool.getAvailableSize()); }
@Test public void poolShutdownClearsSourceList() { // given final ScheduledExecutorService mockedExecutor = mock(ScheduledExecutorService.class); BufferedItemSourcePool pool = createDefaultTestBufferedItemSourcePool(false, mockedExecutor); pool.incrementPoolSize(); assertEquals(DEFAULT_TEST_INITIAL_POOL_SIZE + 1, pool.getAvailableSize()); // when pool.shutdown(); // then assertEquals(0, pool.getAvailableSize()); }
@Test public void incrementSizeByNumberAddsExactNumberOfPooledElements() throws PoolResourceException { // given BufferedItemSourcePool pool = spy(createDefaultTestBufferedItemSourcePool(0,false)); int expectedNumberOfPooledItemSources = 10; pool.incrementPoolSize(expectedNumberOfPooledItemSources); ItemSource<ByteBuf> itemSource; int remaining = expectedNumberOfPooledItemSources; // when do { itemSource = pool.getPooled(); assertEquals(--remaining, pool.getAvailableSize()); } while (remaining > 0); // then assertNotNull(itemSource); assertEquals(0, remaining); }
@Test public void incrementSizeAddsOnePooledElement() throws PoolResourceException { // given BufferedItemSourcePool pool = createDefaultTestBufferedItemSourcePool(0,false); // when pool.incrementPoolSize(); // then assertEquals(1, pool.getAvailableSize()); ItemSource<ByteBuf> itemSource = pool.getPooled(); assertNotNull(itemSource); }