Update of /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/impl
In directory sc8-pr-cvs1:/tmp/cvs-serv20343/hibernate/impl
Modified Files:
SessionImpl.java
Log Message:
added warning in custom type
made <parent> proxy-aware
Index: SessionImpl.java
===================================================================
RCS file: /cvsroot/hibernate/Hibernate2/src/net/sf/hibernate/impl/SessionImpl.java,v
retrieving revision 1.16
retrieving revision 1.17
diff -C2 -d -r1.16 -r1.17
*** SessionImpl.java 2 Feb 2003 04:19:51 -0000 1.16
--- SessionImpl.java 3 Feb 2003 10:28:47 -0000 1.17
***************
*** 1351,1354 ****
--- 1351,1358 ----
}
+ public Object instantiate(Class clazz, Serializable id) throws HibernateException {
+ return instantiate( factory.getPersister(clazz), id );
+ }
+
public Object instantiate(ClassPersister persister, Serializable id) throws HibernateException {
Object result = interceptor.instantiate( persister.getMappedClass(), id );
***************
*** 1470,1476 ****
}
! public void addUninitializedEntity(Key key, Object object, LockMode lockMode) {
addEntity(key, object);
! addEntry( object, LOADING, null, key.getIdentifier(), null, lockMode, true, null ); //temporary
}
--- 1474,1487 ----
}
! public Object proxyFor(Object impl) throws HibernateException {
! EntityEntry e = getEntry(impl);
! //can't use e.persister since it is null after addUninitializedEntity (when this method is called)
! ClassPersister p = getPersister(impl);
! return proxyFor( p, new Key(e.id, p), impl);
! }
!
! public void addUninitializedEntity(Key key, Object object, LockMode lockMode) throws HibernateException {
addEntity(key, object);
! addEntry( object, LOADING, null, key.getIdentifier(), null, lockMode, true, null /*getPersister(object)*/ ); //temporary
}
***************
*** 1739,1743 ****
interceptor.onLoad( object, id, hydratedState, persister.getPropertyNames(), types );
! for ( int i=0; i<hydratedState.length; i++ ) hydratedState[i] = types[i].resolveIdentifier( hydratedState[i], this );
persister.setPropertyValues(object, hydratedState);
TypeFactory.deepCopy(hydratedState, persister.getPropertyTypes(), persister.getPropertyUpdateability(), hydratedState); //after setting values to object
--- 1750,1756 ----
interceptor.onLoad( object, id, hydratedState, persister.getPropertyNames(), types );
! for ( int i=0; i<hydratedState.length; i++ ) {
! hydratedState[i] = types[i].resolveIdentifier( hydratedState[i], this );
! }
persister.setPropertyValues(object, hydratedState);
TypeFactory.deepCopy(hydratedState, persister.getPropertyTypes(), persister.getPropertyUpdateability(), hydratedState); //after setting values to object
|