test_class.declarator: backendConnection
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private BackendConnection backendConnection;
test_class.type: BackendConnection
test_class.var_name: backendConnection
test_class.declarator: transactionStatus
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private TransactionStatus transactionStatus;
test_class.type: TransactionStatus
test_class.var_name: transactionStatus
test_class.declarator: localTransactionManager
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private LocalTransactionManager localTransactionManager;
test_class.type: LocalTransactionManager
test_class.var_name: localTransactionManager
test_class.declarator: shardingTransactionManager
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private ShardingTransactionManager shardingTransactionManager;
test_class.type: ShardingTransactionManager
test_class.var_name: shardingTransactionManager
test_class.declarator: backendTransactionManager
test_class.modifier: private
test_class.original_string: private BackendTransactionManager backendTransactionManager;
test_class.type: BackendTransactionManager
test_class.var_name: backendTransactionManager
test_class.file: shardingsphere-proxy/shardingsphere-proxy-backend/src/test/java/org/apache/shardingsphere/proxy/backend/communication/jdbc/transaction/BackendTransactionManagerTest.java
test_class.identifier: BackendTransactionManagerTest
test_case.body: @Test
      public void assertCommitWithoutTransaction() throws SQLException {
          newBackendTransactionManager(TransactionType.LOCAL, false);
          backendTransactionManager.commit();
          verify(transactionStatus, times(0)).setInTransaction(false);
          verify(localTransactionManager, times(0)).commit();
          verify(shardingTransactionManager, times(0)).commit();
      }
test_case.class_method_signature: BackendTransactionManagerTest.assertCommitWithoutTransaction()
test_case.full_signature: @Test public void assertCommitWithoutTransaction()
test_case.identifier: assertCommitWithoutTransaction
test_case.invocations: newBackendTransactionManager commit setInTransaction verify times commit verify times commit verify times
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertCommitWithoutTransaction()
focal_class.declarator: connection
focal_class.modifier: private final
focal_class.original_string: private final BackendConnection connection;
focal_class.type: BackendConnection
focal_class.var_name: connection
focal_class.declarator: transactionType
focal_class.modifier: private final
focal_class.original_string: private final TransactionType transactionType;
focal_class.type: TransactionType
focal_class.var_name: transactionType
focal_class.declarator: localTransactionManager
focal_class.modifier: private final
focal_class.original_string: private final LocalTransactionManager localTransactionManager;
focal_class.type: LocalTransactionManager
focal_class.var_name: localTransactionManager
focal_class.declarator: shardingTransactionManager
focal_class.modifier: private final
focal_class.original_string: private final ShardingTransactionManager shardingTransactionManager;
focal_class.type: ShardingTransactionManager
focal_class.var_name: shardingTransactionManager
focal_class.file: shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/communication/jdbc/transaction/BackendTransactionManager.java
focal_class.identifier: BackendTransactionManager
focal_class.interfaces: implements TransactionManager
focal_class.class_method_signature: BackendTransactionManager.BackendTransactionManager(final BackendConnection backendConnection)
focal_class.full_signature: public  BackendTransactionManager(final BackendConnection backendConnection)
focal_class.identifier: BackendTransactionManager
focal_class.modifiers: public
focal_class.parameters: (final BackendConnection backendConnection)
focal_class.signature:  BackendTransactionManager(final BackendConnection backendConnection)
focal_class.class_method_signature: BackendTransactionManager.begin()
focal_class.full_signature: @Override public void begin()
focal_class.identifier: begin
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void begin()
focal_class.class_method_signature: BackendTransactionManager.commit()
focal_class.full_signature: @Override public void commit()
focal_class.identifier: commit
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void commit()
focal_class.class_method_signature: BackendTransactionManager.rollback()
focal_class.full_signature: @Override public void rollback()
focal_class.identifier: rollback
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void rollback()
focal_method.body: @Override
      public void commit() throws SQLException {
          if (connection.getTransactionStatus().isInTransaction()) {
              try {
                  if (TransactionType.LOCAL == transactionType || null == shardingTransactionManager) {
                      localTransactionManager.commit();
                  } else {
                      shardingTransactionManager.commit();
                  }
              } finally {
                  connection.getTransactionStatus().setInTransaction(false);
              }
          }
      }
focal_method.class_method_signature: BackendTransactionManager.commit()
focal_method.full_signature: @Override public void commit()
focal_method.identifier: commit
focal_method.invocations: isInTransaction getTransactionStatus commit commit setInTransaction getTransactionStatus
focal_method.modifiers: @Override public
focal_method.parameters: ()
focal_method.return: void
focal_method.signature: void commit()