test_class.declarator: logger = LoggerFactory.getLogger(ConnectPool.class)
test_class.modifier: private final
test_class.original_string: private final Logger logger = LoggerFactory.getLogger(ConnectPool.class);
test_class.type: Logger
test_class.var_name: logger
test_class.file: jimsql/jim-rpc/src/test/java/io/jimdb/rpc/client/ConnectPoolTest.java
test_class.identifier: ConnectPoolTest
test_class.superclass: extends BaseTest
test_case.body: @Test
    public void checkHeartbeatSizeTest() {
      try {
        Thread.sleep(HEARTBEATINTERVAL + 100);
      } catch (InterruptedException e) {
        logger.error(e.getMessage(), e);
      }
  
      List<Connection> list = pool.shouldHeartbeat();
      Assert.assertEquals(POOLSIZE, list.size());
    }
test_case.class_method_signature: ConnectPoolTest.checkHeartbeatSizeTest()
test_case.full_signature: @Test public void checkHeartbeatSizeTest()
test_case.identifier: checkHeartbeatSizeTest
test_case.invocations: sleep error getMessage shouldHeartbeat assertEquals size
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void checkHeartbeatSizeTest()
focal_class.declarator: lastTime
focal_class.modifier: @sun.misc.Contended
    private volatile
focal_class.original_string: @sun.misc.Contended
    private volatile long lastTime;
focal_class.type: long
focal_class.var_name: lastTime
focal_class.declarator: address
focal_class.modifier: final
focal_class.original_string: final String address;
focal_class.type: String
focal_class.var_name: address
focal_class.declarator: size
focal_class.modifier: private final
focal_class.original_string: private final int size;
focal_class.type: int
focal_class.var_name: size
focal_class.declarator: mask
focal_class.modifier: private final
focal_class.original_string: private final int mask;
focal_class.type: int
focal_class.var_name: mask
focal_class.declarator: maxIdle
focal_class.modifier: private final
focal_class.original_string: private final int maxIdle;
focal_class.type: int
focal_class.var_name: maxIdle
focal_class.declarator: conns
focal_class.modifier: private final
focal_class.original_string: private final Connection[] conns;
focal_class.type: Connection[]
focal_class.var_name: conns
focal_class.declarator: seq = new LongAdder()
focal_class.modifier: private final
focal_class.original_string: private final LongAdder seq = new LongAdder();
focal_class.type: LongAdder
focal_class.var_name: seq
focal_class.file: jimsql/jim-rpc/src/main/java/io/jimdb/rpc/client/ConnectPool.java
focal_class.identifier: ConnectPool
focal_class.interfaces: implements Closeable
focal_class.class_method_signature: ConnectPool.ConnectPool(final NettyClientConfig config, final String address, final Bootstrap bootstrap, final EventBus eventBus)
focal_class.full_signature:   ConnectPool(final NettyClientConfig config, final String address, final Bootstrap bootstrap, final EventBus eventBus)
focal_class.identifier: ConnectPool
focal_class.parameters: (final NettyClientConfig config, final String address, final Bootstrap bootstrap, final EventBus eventBus)
focal_class.signature:  ConnectPool(final NettyClientConfig config, final String address, final Bootstrap bootstrap, final EventBus eventBus)
focal_class.class_method_signature: ConnectPool.getConn()
focal_class.full_signature:  Connection getConn()
focal_class.identifier: getConn
focal_class.parameters: ()
focal_class.return: Connection
focal_class.signature: Connection getConn()
focal_class.class_method_signature: ConnectPool.shouldHeartbeat()
focal_class.full_signature:  List<Connection> shouldHeartbeat()
focal_class.identifier: shouldHeartbeat
focal_class.parameters: ()
focal_class.return: List<Connection>
focal_class.signature: List<Connection> shouldHeartbeat()
focal_class.class_method_signature: ConnectPool.shouldEvict()
focal_class.full_signature:  boolean shouldEvict()
focal_class.identifier: shouldEvict
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean shouldEvict()
focal_class.class_method_signature: ConnectPool.evictIdle()
focal_class.full_signature:  boolean evictIdle()
focal_class.identifier: evictIdle
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean evictIdle()
focal_class.class_method_signature: ConnectPool.evictTimeout()
focal_class.full_signature:  void evictTimeout()
focal_class.identifier: evictTimeout
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void evictTimeout()
focal_class.class_method_signature: ConnectPool.close()
focal_class.full_signature: @Override public void close()
focal_class.identifier: close
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void close()
focal_method.body: List<Connection> shouldHeartbeat() {
      final List<Connection> heartbeats = new ArrayList<>();
  
      for (Connection conn : conns) {
        if (conn.shouldHeartbeat()) {
          heartbeats.add(conn);
        }
      }
      return heartbeats;
    }
focal_method.class_method_signature: ConnectPool.shouldHeartbeat()
focal_method.full_signature:  List<Connection> shouldHeartbeat()
focal_method.identifier: shouldHeartbeat
focal_method.invocations: shouldHeartbeat add
focal_method.parameters: ()
focal_method.return: List<Connection>
focal_method.signature: List<Connection> shouldHeartbeat()