if ( status == Status.STATUS_MARKED_ROLLBACK ) { log.trace( "on commit, status was marked for rollback-only" ); rollback(); } else { status = Status.STATUS_PREPARING; for ( int i = 0; i < synchronizations.size(); i++ ) { Synchronization s = ( Synchronization ) synchronizations.get( i ); s.beforeCompletion(); } status = Status.STATUS_COMMITTING; if ( connection != null ) { try { connection.commit(); connection.close(); } catch ( SQLException sqle ) { status = Status.STATUS_UNKNOWN; throw new SystemException(); } } status = Status.STATUS_COMMITTED; for ( int i = 0; i < synchronizations.size(); i++ ) { Synchronization s = ( Synchronization ) synchronizations.get( i ); s.afterCompletion( status ); } //status = Status.STATUS_NO_TRANSACTION; jtaTransactionManager.endCurrent( this ); }
if ( status == Status.STATUS_MARKED_ROLLBACK ) { log.trace( "on commit, status was marked for rollback-only" ); rollback(); } else { status = Status.STATUS_PREPARING; for ( int i = 0; i < synchronizations.size(); i++ ) { Synchronization s = ( Synchronization ) synchronizations.get( i ); s.beforeCompletion(); } status = Status.STATUS_COMMITTING; if ( connection != null ) { try { connection.commit(); connection.close(); } catch ( SQLException sqle ) { status = Status.STATUS_UNKNOWN; throw new SystemException(); } } status = Status.STATUS_COMMITTED; for ( int i = 0; i < synchronizations.size(); i++ ) { Synchronization s = ( Synchronization ) synchronizations.get( i ); s.afterCompletion( status ); } //status = Status.STATUS_NO_TRANSACTION; jtaTransactionManager.endCurrent( this ); }
Clone fragments detected by clone detection tool
File path: /hibernate-distribution-3.3.2.GA/project/cache-jbosscache2/src/test/java/org/hibernate/test/cache/jbc2/functional/util/DualNodeJtaTransactionImpl.java File path: /hibernate-distribution-3.3.2.GA/project/testing/src/main/java/org/hibernate/test/tm/SimpleJtaTransactionImpl.java
Method name: Method name:
Number of AST nodes: 0 Number of AST nodes: 0
1
if ( status == Status.STATUS_MARKED_ROLLBACK ) {
1
if ( status == Status.STATUS_MARKED_ROLLBACK ) {
2
			log.trace( "on commit, status was marked for rollback-only" );
2
			log.trace( "on commit, status was marked for rollback-only" );
3
			rollback();
3
			rollback();
4
		}
4
		}
5
		else {
5
		else {
6
			status = Status.STATUS_PREPARING;
6
			status = Status.STATUS_PREPARING;
7
			for ( int i = 0; i < synchronizations.size(); i++ ) {
7
			for ( int i = 0; i < synchronizations.size(); i++ ) {
8
				Synchronization s = ( Synchronization ) synchronizations.get( i );
8
				Synchronization s = ( Synchronization ) synchronizations.get( i );
9
				s.beforeCompletion();
9
				s.beforeCompletion();
10
			}
10
			}
11
			status = Status.STATUS_COMMITTING;
11
			status = Status.STATUS_COMMITTING;
12
			if ( connection != null ) {
12
			if ( connection != null ) {
13
				try {
13
				try {
14
					connection.commit();
14
					connection.commit();
15
					connection.close();
15
					connection.close();
16
				}
16
				}
17
				catch ( SQLException sqle ) {
17
				catch ( SQLException sqle ) {
18
					status = Status.STATUS_UNKNOWN;
18
					status = Status.STATUS_UNKNOWN;
19
					throw new SystemException();
19
					throw new SystemException();
20
				}
20
				}
21
			}
21
			}
22
			status = Status.STATUS_COMMITTED;
22
			status = Status.STATUS_COMMITTED;
23
			for ( int i = 0; i < synchronizations.size(); i++ ) {
23
			for ( int i = 0; i < synchronizations.size(); i++ ) {
24
				Synchronization s = ( Synchronization ) synchronizations.get( i );
24
				Synchronization s = ( Synchronization ) synchronizations.get( i );
25
				s.afterCompletion( status );
25
				s.afterCompletion( status );
26
			}
26
			}
27
			//status = Status.STATUS_NO_TRANSACTION;
27
			//status = Status.STATUS_NO_TRANSACTION;
28
			jtaTransactionManager.endCurrent( this );
28
			jtaTransactionManager.endCurrent( this );
29
		}
29
		}
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones location
Number of node comparisons0