Author: adamw
Date: 2009-09-30 12:28:00 -0400 (Wed, 30 Sep 2009)
New Revision: 17584
Modified:
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/AbstractDelegateSessionImplementor.java
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/ToOneDelegateSessionImplementor.java
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/UnversionedStrTestEntity.java
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/manytoone/unidirectional/TargetNotAuditedEntity.java
core/trunk/envers/src/test/java/org/hibernate/envers/test/integration/manytoone/unidirectional/RelationNotAuditedTarget.java
core/trunk/envers/src/test/resources/testng.xml
Log:
HHH-4437:
- applying patches
Modified:
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/AbstractDelegateSessionImplementor.java
===================================================================
---
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/AbstractDelegateSessionImplementor.java 2009-09-30
15:18:46 UTC (rev 17583)
+++
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/AbstractDelegateSessionImplementor.java 2009-09-30
16:28:00 UTC (rev 17584)
@@ -58,7 +58,7 @@
* @author Adam Warski (adam at warski dot org)
*/
public abstract class AbstractDelegateSessionImplementor implements SessionImplementor {
- private SessionImplementor delegate;
+ protected SessionImplementor delegate;
public AbstractDelegateSessionImplementor(SessionImplementor delegate) {
this.delegate = delegate;
Modified:
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/ToOneDelegateSessionImplementor.java
===================================================================
---
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/ToOneDelegateSessionImplementor.java 2009-09-30
15:18:46 UTC (rev 17583)
+++
core/trunk/envers/src/main/java/org/hibernate/envers/entities/mapper/relation/lazy/ToOneDelegateSessionImplementor.java 2009-09-30
16:28:00 UTC (rev 17584)
@@ -31,7 +31,6 @@
import org.hibernate.envers.reader.AuditReaderImplementor;
import org.hibernate.HibernateException;
-import org.hibernate.Session;
/**
* @author Adam Warski (adam at warski dot org)
@@ -62,8 +61,7 @@
if (notVersionedEntityConfiguration == null) {
return versionsReader.find(entityClass, entityId, revision);
} else {
- Session session = versionsReader.getSession();
- return session.get(entityClass, (Serializable) entityId);
+ return delegate.immediateLoad(entityName, (Serializable) entityId);
}
}
}
Modified:
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/UnversionedStrTestEntity.java
===================================================================
---
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/UnversionedStrTestEntity.java 2009-09-30
15:18:46 UTC (rev 17583)
+++
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/UnversionedStrTestEntity.java 2009-09-30
16:28:00 UTC (rev 17584)
@@ -72,8 +72,8 @@
UnversionedStrTestEntity that = (UnversionedStrTestEntity) o;
- if (id != null ? !id.equals(that.id) : that.id != null) return false;
- if (str != null ? !str.equals(that.str) : that.str != null) return false;
+ if (id != null ? !id.equals(that.getId()) : that.getId() != null) return false;
+ if (str != null ? !str.equals(that.getStr()) : that.getStr() != null) return
false;
return true;
}
@@ -88,4 +88,4 @@
public String toString() {
return "USTE(id = " + id + ", str = " + str + ")";
}
-}
\ No newline at end of file
+}
Modified:
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/manytoone/unidirectional/TargetNotAuditedEntity.java
===================================================================
---
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/manytoone/unidirectional/TargetNotAuditedEntity.java 2009-09-30
15:18:46 UTC (rev 17583)
+++
core/trunk/envers/src/test/java/org/hibernate/envers/test/entities/manytoone/unidirectional/TargetNotAuditedEntity.java 2009-09-30
16:28:00 UTC (rev 17584)
@@ -45,7 +45,7 @@
private String data;
@Audited(targetAuditMode = RelationTargetAuditMode.NOT_AUDITED)
- @ManyToOne(fetch = FetchType.EAGER)
+ @ManyToOne(fetch = FetchType.LAZY)
private UnversionedStrTestEntity reference;
public TargetNotAuditedEntity() { }
@@ -96,8 +96,8 @@
TargetNotAuditedEntity that = (TargetNotAuditedEntity) o;
- if (data != null ? !data.equals(that.data) : that.data != null) return false;
- if (id != null ? !id.equals(that.id) : that.id != null) return false;
+ if (data != null ? !data.equals(that.getData()) : that.getData() != null) return
false;
+ if (id != null ? !id.equals(that.getId()) : that.getId() != null) return false;
return true;
}
Modified:
core/trunk/envers/src/test/java/org/hibernate/envers/test/integration/manytoone/unidirectional/RelationNotAuditedTarget.java
===================================================================
---
core/trunk/envers/src/test/java/org/hibernate/envers/test/integration/manytoone/unidirectional/RelationNotAuditedTarget.java 2009-09-30
15:18:46 UTC (rev 17583)
+++
core/trunk/envers/src/test/java/org/hibernate/envers/test/integration/manytoone/unidirectional/RelationNotAuditedTarget.java 2009-09-30
16:28:00 UTC (rev 17584)
@@ -32,6 +32,11 @@
import org.hibernate.envers.test.AbstractEntityTest;
import org.hibernate.envers.test.entities.UnversionedStrTestEntity;
import
org.hibernate.envers.test.entities.manytoone.unidirectional.TargetNotAuditedEntity;
+
+import org.hibernate.Hibernate;
+import org.hibernate.proxy.HibernateProxy;
+import org.hibernate.proxy.HibernateProxyHelper;
+
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
@@ -129,6 +134,9 @@
@Test
public void testHistoryOfTnae1_id() {
+ // load original "tnae1" TargetNotAuditedEntity to force load
"str1" UnversionedStrTestEntity as Proxy
+ TargetNotAuditedEntity original = getEntityManager().find(TargetNotAuditedEntity.class,
tnae1_id);
+
UnversionedStrTestEntity uste1 =
getEntityManager().find(UnversionedStrTestEntity.class, uste1_id);
UnversionedStrTestEntity uste2 =
getEntityManager().find(UnversionedStrTestEntity.class, uste2_id);
@@ -141,6 +149,11 @@
assert rev2.getReference().equals(uste2);
assert rev3.getReference().equals(uste2);
assert rev4.getReference().equals(uste1);
+
+ assert original.getReference() instanceof HibernateProxy;
+ assert
UnversionedStrTestEntity.class.equals(Hibernate.getClass(original.getReference()));
+ assert
UnversionedStrTestEntity.class.equals(HibernateProxyHelper.getClassWithoutInitializingProxy(rev1.getReference()));
+ assert UnversionedStrTestEntity.class.equals(Hibernate.getClass(rev1.getReference()));
}
@Test
Modified: core/trunk/envers/src/test/resources/testng.xml
===================================================================
--- core/trunk/envers/src/test/resources/testng.xml 2009-09-30 15:18:46 UTC (rev 17583)
+++ core/trunk/envers/src/test/resources/testng.xml 2009-09-30 16:28:00 UTC (rev 17584)
@@ -33,6 +33,7 @@
<package name="org.hibernate.envers.test.integration.manytomany"
/>
<package
name="org.hibernate.envers.test.integration.manytomany.ternary" />
<package
name="org.hibernate.envers.test.integration.manytomany.unidirectional" />
+ <package
name="org.hibernate.envers.test.integration.manytoone.unidirectional" />
<package name="org.hibernate.envers.test.integration.naming"
/>
<package name="org.hibernate.envers.test.integration.naming.ids"
/>
<package
name="org.hibernate.envers.test.integration.notinsertable" />
Show replies by date