test_class.file: shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/test/java/org/apache/shardingsphere/proxy/frontend/postgresql/PostgreSQLFrontendEngineTest.java
test_class.identifier: PostgreSQLFrontendEngineTest
test_case.body: @Test
      public void assertRelease() {
          BackendConnection backendConnection = mock(BackendConnection.class);
          int connectionId = 1;
          when(backendConnection.getConnectionId()).thenReturn(connectionId);
          BinaryStatementRegistry registry = BinaryStatementRegistry.getInstance();
          registry.register(connectionId);
          assertNotNull(registry.get(connectionId));
          PostgreSQLFrontendEngine frontendEngine = new PostgreSQLFrontendEngine();
          frontendEngine.release(backendConnection);
          assertNull(registry.get(connectionId));
      }
test_case.class_method_signature: PostgreSQLFrontendEngineTest.assertRelease()
test_case.full_signature: @Test public void assertRelease()
test_case.identifier: assertRelease
test_case.invocations: mock thenReturn when getConnectionId getInstance register assertNotNull get release assertNull get
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertRelease()
focal_class.declarator: frontendContext = new FrontendContext(true, false)
focal_class.modifier: private final
focal_class.original_string: private final FrontendContext frontendContext = new FrontendContext(true, false);
focal_class.type: FrontendContext
focal_class.var_name: frontendContext
focal_class.declarator: authEngine = new PostgreSQLAuthenticationEngine()
focal_class.modifier: private final
focal_class.original_string: private final PostgreSQLAuthenticationEngine authEngine = new PostgreSQLAuthenticationEngine();
focal_class.type: PostgreSQLAuthenticationEngine
focal_class.var_name: authEngine
focal_class.declarator: commandExecuteEngine = new PostgreSQLCommandExecuteEngine()
focal_class.modifier: private final
focal_class.original_string: private final PostgreSQLCommandExecuteEngine commandExecuteEngine = new PostgreSQLCommandExecuteEngine();
focal_class.type: PostgreSQLCommandExecuteEngine
focal_class.var_name: commandExecuteEngine
focal_class.declarator: codecEngine = new PostgreSQLPacketCodecEngine()
focal_class.modifier: private final
focal_class.original_string: private final DatabasePacketCodecEngine<?> codecEngine = new PostgreSQLPacketCodecEngine();
focal_class.type: DatabasePacketCodecEngine<?>
focal_class.var_name: codecEngine
focal_class.file: shardingsphere-proxy/shardingsphere-proxy-frontend/shardingsphere-proxy-frontend-postgresql/src/main/java/org/apache/shardingsphere/proxy/frontend/postgresql/PostgreSQLFrontendEngine.java
focal_class.identifier: PostgreSQLFrontendEngine
focal_class.interfaces: implements DatabaseProtocolFrontendEngine
focal_class.class_method_signature: PostgreSQLFrontendEngine.getDatabaseType()
focal_class.full_signature: @Override public String getDatabaseType()
focal_class.identifier: getDatabaseType
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getDatabaseType()
focal_class.class_method_signature: PostgreSQLFrontendEngine.release(final BackendConnection backendConnection)
focal_class.full_signature: @Override public void release(final BackendConnection backendConnection)
focal_class.identifier: release
focal_class.modifiers: @Override public
focal_class.parameters: (final BackendConnection backendConnection)
focal_class.return: void
focal_class.signature: void release(final BackendConnection backendConnection)
focal_method.body: @Override
      public void release(final BackendConnection backendConnection) {
          BinaryStatementRegistry.getInstance().unregister(backendConnection.getConnectionId());
      }
focal_method.class_method_signature: PostgreSQLFrontendEngine.release(final BackendConnection backendConnection)
focal_method.full_signature: @Override public void release(final BackendConnection backendConnection)
focal_method.identifier: release
focal_method.invocations: unregister getInstance getConnectionId
focal_method.modifiers: @Override public
focal_method.parameters: (final BackendConnection backendConnection)
focal_method.return: void
focal_method.signature: void release(final BackendConnection backendConnection)