Session current = existingSession( factory ); if ( current == null ) { throw new HibernateException( "No session currently bound to execution context" ); } return current;
Tuplizer tuplizer = getTuplizerOrNull( entityMode ); if ( tuplizer == null ) { throw new HibernateException( "No tuplizer found for entity-mode [" + entityMode + "]"); } return tuplizer;
Clone fragments detected by clone detection tool
File path: /hibernate-distribution-3.3.2.GA/project/core/src/main/java/org/hibernate/context/ManagedSessionContext.java File path: /hibernate-distribution-3.3.2.GA/project/core/src/main/java/org/hibernate/tuple/EntityModeToTuplizerMapping.java
Method name: Session currentSession() Method name: Tuplizer getTuplizer(EntityMode)
Number of AST nodes: 4 Number of AST nodes: 4
1
Session current = existingSession( factory );
1
Tuplizer tuplizer = getTuplizerOrNull( entityMode );
2
		if ( current == null ) {
2
		if ( tuplizer == null ) {
3
			throw new HibernateException( "No session currently bound to execution context" );
3
			throw new HibernateException( "No tuplizer found for entity-mode [" + entityMode + "]");
4
		}
4
		}
5
		return current;
5
		return tuplizer;
Summary
Number of common nesting structure subtrees1
Number of refactorable cases0
Number of non-refactorable cases1
Time elapsed for finding largest common nesting structure subtrees (ms)0.1
Clones locationClones are in different classes
Number of node comparisons8
  1. {Non-refactorable}
    Mapping Summary
    Number of mapped statements2
    Number of unmapped statements in the first code fragment2
    Number of unmapped statements in the second code fragment2
    Time elapsed for statement mapping (ms)0.4
    Clone typeType 2
    Mapped Statements
    ID Statement ID Statement
                                                                                                          
    1
    Tuplizer tuplizer = getTuplizerOrNull(entityMode);
    1
    Session current = existingSession(factory);
                                                                                            
    2
    if (current == null)
    2
    if (current == null)
    2
    if (tuplizer == null)
    Differences
    Expression1Expression2Difference
    currenttuplizerVARIABLE_NAME_MISMATCH
    org.hibernate.classic.Sessionorg.hibernate.tuple.TuplizerVARIABLE_TYPE_MISMATCH
    Preondition Violations
    Type org.hibernate.classic.Session of variable current does not match with type org.hibernate.tuple.Tuplizer of variable tuplizer
    • Make classes org.hibernate.classic.Session and org.hibernate.tuple.Tuplizer extend a common superclass
    2
    if (tuplizer == null)
    3
    throw new HibernateException("No session currently bound to execution context");
    3
    throw new HibernateException("No session currently bound to execution context");
    3
    throw new HibernateException("No tuplizer found for entity-mode [" + entityMode + "]");
    Differences
    Expression1Expression2Difference
    "No session currently bound to execution context""No tuplizer found for entity-mode [" + entityMode + "]"TYPE_COMPATIBLE_REPLACEMENT
    3
    throw new HibernateException("No tuplizer found for entity-mode [" + entityMode + "]");
                                          
    4
    return tuplizer;
    Preondition Violations
    Unmatched return tuplizer;
    4
    return tuplizer;
    4
    return current;
    4
    return current;
    Preondition Violations
    Unmatched return current;
                                        
    Precondition Violations (3)
    Row Violation
    1Type org.hibernate.classic.Session of variable current does not match with type org.hibernate.tuple.Tuplizer of variable tuplizer
    2Unmatched return tuplizer;
    3Unmatched return current;