From: Kevin W. <kev...@us...> - 2004-12-31 19:50:54
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Impl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12365 Modified Files: CacheEntry.cs Log Message: fixing xml comments and letting ReSharper do reformatting Index: CacheEntry.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Impl/CacheEntry.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** CacheEntry.cs 28 Mar 2004 06:07:37 -0000 1.3 --- CacheEntry.cs 31 Dec 2004 19:50:45 -0000 1.4 *************** *** 1,12 **** using System; - using System.Data; - using System.Collections; - using NHibernate.Engine; using NHibernate.Persister; using NHibernate.Type; ! ! namespace NHibernate.Impl { /// <summary> --- 1,8 ---- using System; using NHibernate.Engine; using NHibernate.Persister; using NHibernate.Type; ! namespace NHibernate.Impl { /// <summary> *************** *** 14,64 **** /// </summary> [Serializable] ! internal class CacheEntry { ! ! object[] state; ! System.Type subclass; ! public System.Type Subclass { get { return subclass; } } ! public CacheEntry(object obj, IClassPersister persister, ISessionImplementor session) { ! state = Disassemble(obj, persister, session); subclass = obj.GetType(); } ! private object[] Disassemble(object obj, IClassPersister persister, ISessionImplementor session) { ! object[] values = persister.GetPropertyValues(obj); ! IType[] propertyTypes = persister.PropertyTypes; ! for (int i=0; i<values.Length; i++) { ! values[i] = propertyTypes[i].Disassemble(values[i], session); } return values; } ! public object[] Assemble(object instance, object id, IClassPersister persister, ISessionImplementor session) { ! if ( subclass!=persister.MappedClass ) throw new AssertionFailure("Tried to assemble a different subclass instance"); ! return Assemble(state, instance, id, persister, session); } ! private object[] Assemble(object[] values, object result, object id, IClassPersister persister, ISessionImplementor session) { ! IType[] propertyTypes = persister.PropertyTypes; ! object[] assembledProps = new object[propertyTypes.Length]; ! for (int i=0; i<values.Length; i++ ) { ! assembledProps[i] = propertyTypes[i].Assemble( values[i], session, result ); } ! persister.SetPropertyValues(result, assembledProps); ! persister.SetIdentifier(result, id); ! if ( persister.ImplementsLifecycle ) { ! ( (ILifecycle) result ).OnLoad(session, id); } --- 10,95 ---- /// </summary> [Serializable] ! internal class CacheEntry ! { ! private object[ ] state; ! private System.Type subclass; ! /// <summary></summary> ! public System.Type Subclass { get { return subclass; } } ! /// <summary> ! /// ! /// </summary> ! /// <param name="obj"></param> ! /// <param name="persister"></param> ! /// <param name="session"></param> ! public CacheEntry( object obj, IClassPersister persister, ISessionImplementor session ) { ! state = Disassemble( obj, persister, session ); subclass = obj.GetType(); } ! /// <summary> ! /// ! /// </summary> ! /// <param name="obj"></param> ! /// <param name="persister"></param> ! /// <param name="session"></param> ! /// <returns></returns> ! private object[ ] Disassemble( object obj, IClassPersister persister, ISessionImplementor session ) { ! object[ ] values = persister.GetPropertyValues( obj ); ! IType[ ] propertyTypes = persister.PropertyTypes; ! for( int i = 0; i < values.Length; i++ ) { ! values[ i ] = propertyTypes[ i ].Disassemble( values[ i ], session ); } return values; } ! /// <summary> ! /// ! /// </summary> ! /// <param name="instance"></param> ! /// <param name="id"></param> ! /// <param name="persister"></param> ! /// <param name="session"></param> ! /// <returns></returns> ! public object[ ] Assemble( object instance, object id, IClassPersister persister, ISessionImplementor session ) { ! if( subclass != persister.MappedClass ) ! { ! throw new AssertionFailure( "Tried to assemble a different subclass instance" ); ! } ! return Assemble( state, instance, id, persister, session ); } ! /// <summary> ! /// ! /// </summary> ! /// <param name="values"></param> ! /// <param name="result"></param> ! /// <param name="id"></param> ! /// <param name="persister"></param> ! /// <param name="session"></param> ! /// <returns></returns> ! private object[ ] Assemble( object[ ] values, object result, object id, IClassPersister persister, ISessionImplementor session ) { ! IType[ ] propertyTypes = persister.PropertyTypes; ! object[ ] assembledProps = new object[propertyTypes.Length]; ! for( int i = 0; i < values.Length; i++ ) { ! assembledProps[ i ] = propertyTypes[ i ].Assemble( values[ i ], session, result ); } ! persister.SetPropertyValues( result, assembledProps ); ! persister.SetIdentifier( result, id ); ! if( persister.ImplementsLifecycle ) ! { ! ( ( ILifecycle ) result ).OnLoad( session, id ); } *************** *** 66,68 **** } } ! } --- 97,99 ---- } } ! } \ No newline at end of file |