if ( persister.hasCache() ) { final CacheKey ck = new CacheKey( key, persister.getKeyType(), persister.getRole(), session.getEntityMode(), session.getFactory() ); persister.getCacheAccessStrategy().unlockItem( ck, lock ); }
while ( iter.hasNext() ) { Object value = iter.next(); map.put( identifiers.get( new Integer(i++) ), persister.getElementType().deepCopy(value, entityMode, persister.getFactory()) ); }
Clone fragments detected by clone detection tool
File path: /hibernate-distribution-3.3.2.GA/project/core/src/main/java/org/hibernate/action/CollectionAction.java File path: /hibernate-distribution-3.3.2.GA/project/core/src/main/java/org/hibernate/collection/PersistentIdentifierBag.java
Method name: void afterTransactionCompletion(boolean) Method name: Serializable getSnapshot(CollectionPersister)
Number of AST nodes: 3 Number of AST nodes: 3
1
if ( persister.hasCache() ) {
1
while ( iter.hasNext() ) {
2
			final CacheKey ck = new CacheKey( 
2
			
3
					key, 
4
					persist
3
Object value = iter.next();
4
			map.put(
5
er.getKeyType(), 
5
				identifiers.get
6
					persister.getRole(), 
7
					session.getEntityMode(), 
8
					session.getFactory() 
9
				);
10
			persister.getCacheAccessStrategy().unlockItem( ck, lock 
6
( new Integer(i++) ),
7
				persister.getElementType().deepCopy(value, entityMode, persister.getFactory())
11
);
8
			);
12
		}
9
		}
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 locationClones are in different classes
Number of node comparisons1