From: <one...@us...> - 2003-04-17 08:09:17
|
Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/persister In directory sc8-pr-cvs1:/tmp/cvs-serv15041/hibernate/persister Modified Files: AbstractEntityPersister.java Log Message: allow polymorphic embedded composite-id classes add a test for outer-join=true Index: AbstractEntityPersister.java =================================================================== RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/persister/AbstractEntityPersister.java,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -d -r1.21 -r1.22 *** AbstractEntityPersister.java 15 Apr 2003 04:19:16 -0000 1.21 --- AbstractEntityPersister.java 17 Apr 2003 08:09:12 -0000 1.22 *************** *** 40,43 **** --- 40,44 ---- import net.sf.hibernate.sql.SelectFragment; import net.sf.hibernate.type.AbstractComponentType; + import net.sf.hibernate.type.ComponentType; import net.sf.hibernate.type.IdentifierType; import net.sf.hibernate.type.Type; *************** *** 236,240 **** public void setIdentifier(Object object, Serializable id) throws HibernateException { ! if (identifierSetter!=null) { identifierSetter.set(object, id); } --- 237,245 ---- public void setIdentifier(Object object, Serializable id) throws HibernateException { ! if (hasEmbeddedIdentifier) { ! ComponentType copier = (ComponentType) identifierType; ! copier.setPropertyValues( object, copier.getPropertyValues(id) ); ! } ! else if (identifierSetter!=null) { identifierSetter.set(object, id); } *************** *** 245,249 **** */ public Object instantiate(Serializable id) throws HibernateException { ! if (hasEmbeddedIdentifier) { return id; } --- 250,254 ---- */ public Object instantiate(Serializable id) throws HibernateException { ! if ( hasEmbeddedIdentifier && id.getClass()==mappedClass ) { return id; } |