File path: /hibernate-distribution-3.3.2.GA/project/core/src/main/java/org/hibernate/event/def/DefaultLoadEventListener.java | File path: /hibernate-distribution-3.3.2.GA/project/testsuite/src/test/java/org/hibernate/test/unionsubclass/UnionSubclassTest.java | |||
Method name: Object createProxyIfNecessary(LoadEvent, EntityPersister, EntityKey, LoadEventListener.LoadType, PersistenceContext)
|
Method name: void testUnionSubclassFetchMode()
|
|||
Number of AST nodes: 5 | Number of AST nodes: 4 | |||
1 | log.trace( "creating new proxy for entity" );↵ | |||
2 | // return new uninitialized proxy↵ | |||
3 | Object proxy = persister.createProxy( event.getEntityId(), event.getSession() );↵ | |||
4 | persistenceContext.getBatchFetchQueue().addBatchLoadableEntityKey(keyToLoad);↵ | |||
5 | persistenceContext.addProxy(keyToLoad, proxy);↵ | |||
6 | return proxy↵ | 1 | Human h = (Human) list.get(i);↵ | |
2 | assertTrue( Hibernate.isInitialized( h.getLocation() ) );↵ | |||
3 | assertTrue( Hibernate.isInitialized( h.getLocation().getBeings() ) );↵ | |||
7 | ; | 4 | s.delete(h); | |
See real code fragment | See real code fragment |
Number of common nesting structure subtrees | 1 |
Number of refactorable cases | 0 |
Number of non-refactorable cases | 1 |
Time elapsed for finding largest common nesting structure subtrees (ms) | 0.0 |
Clones location | Clones are in different classes |
Number of node comparisons | 20 |
Number of mapped statements | 1 |
Number of unmapped statements in the first code fragment | 4 |
Number of unmapped statements in the second code fragment | 3 |
Time elapsed for statement mapping (ms) | 0.0 |
Clone type | Type 3 |
ID | Statement | ID | Statement | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
10 | log.trace("creating new proxy for entity"); | | ||||||||||||||||||||||
11 | Object proxy = persister.createProxy(event.getEntityId(), event.getSession()); | | ||||||||||||||||||||||
12 | persistenceContext.getBatchFetchQueue().addBatchLoadableEntityKey(keyToLoad); | | ||||||||||||||||||||||
|
| 19 | Human h = (Human)list.get(i); | |||||||||||||||||||||
13 | persistenceContext.addProxy(keyToLoad, proxy); |
| 20 | assertTrue(Hibernate.isInitialized(h.getLocation())); | ||||||||||||||||||||
14 | return proxy; |
| | |||||||||||||||||||||
| 21 | assertTrue(Hibernate.isInitialized(h.getLocation().getBeings())); | ||||||||||||||||||||||
| 22 | s.delete(h); |
Row | Violation |
---|---|
1 | Unmatched statement Human h=(Human)list.get(i); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted |
2 | Expression persistenceContext.addProxy(keyToLoad,proxy) is a void method call, and thus it cannot be parameterized |
3 | Expression assertTrue(Hibernate.isInitialized(h.getLocation())) is a void method call, and thus it cannot be parameterized |
4 | Expression persistenceContext.addProxy(keyToLoad,proxy) is a void method call, and thus it cannot be parameterized |
5 | Expression assertTrue(Hibernate.isInitialized(h.getLocation())) is a void method call, and thus it cannot be parameterized |
6 | Unmatched return proxy; |