From: Michael D. <mik...@us...> - 2004-11-22 03:53:31
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28715/Loader Modified Files: AbstractEntityLoader.cs CollectionLoader.cs EntityLoader.cs Loader.cs OneToManyLoader.cs OuterJoinLoader.cs SimpleEntityLoader.cs Log Message: removed protected fields in favor of protected properties. Index: AbstractEntityLoader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader/AbstractEntityLoader.cs,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** AbstractEntityLoader.cs 21 Nov 2004 22:56:29 -0000 1.11 --- AbstractEntityLoader.cs 22 Nov 2004 03:53:07 -0000 1.12 *************** *** 13,17 **** public class AbstractEntityLoader : OuterJoinLoader { ! protected ILoadable persister; private string alias; --- 13,17 ---- public class AbstractEntityLoader : OuterJoinLoader { ! private ILoadable persister; private string alias; *************** *** 27,30 **** --- 27,38 ---- } + /// <summary> + /// Gets the <see cref="ILoadable"/> Persister. + /// </summary> + protected ILoadable Persister + { + get { return persister; } + } + protected void RenderStatement(SqlSelectBuilder selectBuilder, ISessionFactoryImplementor factory) { *************** *** 63,71 **** .SetOrderByClause(orderBy); ! ! classPersisters = new ILoadable[joins+1]; ! lockModeArray = CreateLockModeArray(joins+1, LockMode.None); ! for (int i=0; i<joins; i++) classPersisters[i] = ((OuterJoinableAssociation)associations[i]).Subpersister; ! classPersisters[joins] = persister; } --- 71,82 ---- .SetOrderByClause(orderBy); ! Persisters = new ILoadable[joins+1]; ! // classPersisters = new ILoadable[joins+1]; ! LockModeArray = CreateLockModeArray(joins+1, LockMode.None); ! for (int i=0; i<joins; i++) ! { ! Persisters[i] = ((OuterJoinableAssociation)associations[i]).Subpersister; ! } ! Persisters[joins] = persister; } *************** *** 112,119 **** this.SqlString = sqlBuilder.ToSqlString(); ! classPersisters = new ILoadable[joins+1]; ! lockModeArray = CreateLockModeArray(joins+1, LockMode.None); ! for (int i=0; i<joins; i++) classPersisters[i] = ((OuterJoinableAssociation)associations[i]).Subpersister; ! classPersisters[joins] = persister; } --- 123,133 ---- this.SqlString = sqlBuilder.ToSqlString(); ! Persisters = new ILoadable[joins+1]; ! LockModeArray = CreateLockModeArray(joins+1, LockMode.None); ! for (int i=0; i<joins; i++) ! { ! Persisters[i] = ((OuterJoinableAssociation)associations[i]).Subpersister; ! } ! Persisters[joins] = persister; } Index: OneToManyLoader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader/OneToManyLoader.cs,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** OneToManyLoader.cs 21 Nov 2004 22:56:29 -0000 1.11 --- OneToManyLoader.cs 22 Nov 2004 03:53:07 -0000 1.12 *************** *** 83,90 **** ! classPersisters = new ILoadable[joins+1]; ! lockModeArray = CreateLockModeArray(joins+1, LockMode.None); ! for (int i=0; i<joins; i++) classPersisters[i] = ((OuterJoinableAssociation) associations[i]).Subpersister; ! classPersisters[joins] = persister; PostInstantiate(); --- 83,93 ---- ! Persisters = new ILoadable[joins+1]; ! LockModeArray = CreateLockModeArray(joins+1, LockMode.None); ! for (int i=0; i<joins; i++) ! { ! Persisters[i] = ((OuterJoinableAssociation) associations[i]).Subpersister; ! } ! Persisters[joins] = persister; PostInstantiate(); Index: CollectionLoader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader/CollectionLoader.cs,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** CollectionLoader.cs 21 Nov 2004 22:56:29 -0000 1.10 --- CollectionLoader.cs 22 Nov 2004 03:53:07 -0000 1.11 *************** *** 56,62 **** this.SqlString = selectBuilder.ToSqlString(); ! classPersisters = new ILoadable[joins]; ! lockModeArray = CreateLockModeArray(joins, LockMode.None); ! for (int i=0; i<joins; i++) classPersisters[i] = (ILoadable) ((OuterJoinableAssociation) associations[i]).Subpersister; this.collectionPersister = persister; --- 56,65 ---- this.SqlString = selectBuilder.ToSqlString(); ! Persisters = new ILoadable[joins]; ! LockModeArray = CreateLockModeArray(joins, LockMode.None); ! for (int i=0; i<joins; i++) ! { ! Persisters[i] = (ILoadable) ((OuterJoinableAssociation) associations[i]).Subpersister; ! } this.collectionPersister = persister; Index: OuterJoinLoader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader/OuterJoinLoader.cs,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** OuterJoinLoader.cs 21 Nov 2004 22:56:29 -0000 1.15 --- OuterJoinLoader.cs 22 Nov 2004 03:53:07 -0000 1.16 *************** *** 29,34 **** protected static readonly string[] NoStrings = new string[0]; protected static readonly ILoadable[] NoPersisters = new ILoadable[0]; ! protected ILoadable[] classPersisters; ! protected LockMode[] lockModeArray; private SqlString sqlString; --- 29,35 ---- protected static readonly string[] NoStrings = new string[0]; protected static readonly ILoadable[] NoPersisters = new ILoadable[0]; ! ! private ILoadable[] classPersisters; ! private LockMode[] lockModeArray; private SqlString sqlString; *************** *** 380,386 **** } ! public override ILoadable[] Persisters { get { return classPersisters; } } --- 381,394 ---- } ! protected override ILoadable[] Persisters { get { return classPersisters; } + set { classPersisters = value; } + } + + protected LockMode[] LockModeArray + { + get { return lockModeArray; } + set { lockModeArray = value; } } *************** *** 445,449 **** //TODO: H2.0.3 - changes tableName to lower case - don't know why it is needed... ! return ( new Alias(10, n.ToString() + StringHelper.Underscore) ).ToAliasString( tableName, dialect ); } --- 453,457 ---- //TODO: H2.0.3 - changes tableName to lower case - don't know why it is needed... ! return ( new Alias(10, n.ToString() + StringHelper.Underscore) ).ToAliasString( tableName, Dialect ); } *************** *** 460,464 **** public JoinFragment OuterJoins(IList associations) { ! JoinFragment outerjoin = dialect.CreateOuterJoinFragment(); foreach(OuterJoinLoader.OuterJoinableAssociation oj in associations) { --- 468,472 ---- public JoinFragment OuterJoins(IList associations) { ! JoinFragment outerjoin = Dialect.CreateOuterJoinFragment(); foreach(OuterJoinLoader.OuterJoinableAssociation oj in associations) { Index: SimpleEntityLoader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader/SimpleEntityLoader.cs,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** SimpleEntityLoader.cs 21 Nov 2004 22:56:29 -0000 1.8 --- SimpleEntityLoader.cs 22 Nov 2004 03:53:07 -0000 1.9 *************** *** 40,51 **** } ! public override ILoadable[] Persisters { get { return persister; } } protected override CollectionPersister CollectionPersister { get { return null; } } protected override string[] Suffixes { --- 40,54 ---- } ! protected override ILoadable[] Persisters { get { return persister; } + set { persister = value; } } + protected override CollectionPersister CollectionPersister { get { return null; } } + protected override string[] Suffixes { Index: Loader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader/Loader.cs,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -d -r1.40 -r1.41 *** Loader.cs 21 Nov 2004 22:56:29 -0000 1.40 --- Loader.cs 22 Nov 2004 03:53:07 -0000 1.41 *************** *** 20,29 **** /// This class implements useful common funtionality that concrete loaders would delegate to. /// It is not intended that this functionality would be directly accessed by client code (Hence, ! /// all methods of this class will eventually be declared <c>protected</c> /// </remarks> public abstract class Loader { private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof(Loader)); ! public Dialect.Dialect dialect; protected Loader(Dialect.Dialect dialect) --- 20,29 ---- /// This class implements useful common funtionality that concrete loaders would delegate to. /// It is not intended that this functionality would be directly accessed by client code (Hence, ! /// all methods of this class are declared <c>protected</c>.) /// </remarks> public abstract class Loader { private static readonly log4net.ILog log = log4net.LogManager.GetLogger(typeof(Loader)); ! private Dialect.Dialect dialect; protected Loader(Dialect.Dialect dialect) *************** *** 33,39 **** /// <summary> /// The SqlString to be called; implemented by all subclasses /// </summary> ! /// <remarks>TODO: add something about internal</remarks> protected internal abstract SqlString SqlString {get; set;} --- 33,58 ---- /// <summary> + /// Gets a reference to the <see cref="Dialect.Dialect"/> to use + /// when building the <see cref="SqlString"/>. + /// </summary> + protected internal Dialect.Dialect Dialect + { + get { return dialect; } + } + + /// <summary> /// The SqlString to be called; implemented by all subclasses /// </summary> ! /// <remarks> ! /// <p> ! /// The <c>setter</c> was added so that class inheriting from Loader could write a ! /// value using the Property instead of directly to the field. ! /// </p> ! /// <p> ! /// The scope is <c>internal</c> because the <see cref="Hql.WhereParser"/> needs to ! /// be able to <c>get</c> the SqlString of the <see cref="Hql.QueryTranslator"/> when ! /// it is parsing a subquery. ! /// </p> ! /// </remarks> protected internal abstract SqlString SqlString {get; set;} *************** *** 42,46 **** /// implemented by all subclasses /// </summary> ! public abstract ILoadable[] Persisters { get; } /// <summary> --- 61,71 ---- /// implemented by all subclasses /// </summary> ! /// <remarks> ! /// <p> ! /// The <c>setter</c> was added so that classes inheriting from Loader could write a ! /// value using the Property instead of directly to the field. ! /// </p> ! /// </remarks> ! protected abstract ILoadable[] Persisters { get; set; } /// <summary> Index: EntityLoader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Loader/EntityLoader.cs,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** EntityLoader.cs 21 Nov 2004 22:56:29 -0000 1.6 --- EntityLoader.cs 22 Nov 2004 03:53:07 -0000 1.7 *************** *** 49,53 **** id + ", for class: " + ! persister.ClassName); } } --- 49,53 ---- id + ", for class: " + ! Persister.ClassName); } } |