From: <fab...@us...> - 2008-09-29 20:11:18
|
Revision: 3800 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=3800&view=rev Author: fabiomaulo Date: 2008-09-29 20:10:50 +0000 (Mon, 29 Sep 2008) Log Message: ----------- Fix NH-1468 Modified Paths: -------------- trunk/nhibernate/src/NHibernate/SqlCommand/InFragment.cs trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj Removed Paths: ------------- trunk/nhibernate/src/NHibernate.Test/SqlCommandTest/InFragmentFixture.cs Modified: trunk/nhibernate/src/NHibernate/SqlCommand/InFragment.cs =================================================================== --- trunk/nhibernate/src/NHibernate/SqlCommand/InFragment.cs 2008-09-29 19:43:50 UTC (rev 3799) +++ trunk/nhibernate/src/NHibernate/SqlCommand/InFragment.cs 2008-09-29 20:10:50 UTC (rev 3800) @@ -1,4 +1,3 @@ - using System; using System.Collections; using NHibernate.Util; @@ -10,11 +9,11 @@ /// </summary> public class InFragment { - public static readonly string Null = "null"; public static readonly string NotNull = "not null"; + public static readonly string Null = "null"; + private readonly ArrayList values = new ArrayList(); private string columnName; - private ArrayList values = new ArrayList(); /// <summary> /// Add a value to the value list. Value may be a string, @@ -27,39 +26,27 @@ return this; } - /// <summary> - /// - /// </summary> - /// <param name="columnName"></param> - /// <returns></returns> - public InFragment SetColumn(string columnName) + public InFragment SetColumn(string colName) { - this.columnName = columnName; + columnName = colName; return this; } - /// <summary> - /// - /// </summary> - /// <param name="alias"></param> - /// <param name="columnName"></param> - /// <returns></returns> - public InFragment SetColumn(string alias, string columnName) + public InFragment SetColumn(string alias, string colName) { - this.columnName = alias + StringHelper.Dot + columnName; - return SetColumn(this.columnName); + columnName = alias + StringHelper.Dot + colName; + return SetColumn(columnName); } public InFragment SetFormula(string alias, string formulaTemplate) { - this.columnName = StringHelper.Replace(formulaTemplate, Template.Placeholder, alias); - return SetColumn(this.columnName); + columnName = StringHelper.Replace(formulaTemplate, Template.Placeholder, alias); + return SetColumn(columnName); } - /// <summary></summary> public SqlString ToFragmentString() { - SqlStringBuilder buf = new SqlStringBuilder(values.Count * 5); + var buf = new SqlStringBuilder(values.Count * 5); buf.Add(columnName); if (values.Count > 1) @@ -82,7 +69,7 @@ } else if (NotNull.Equals(value)) { - throw new ArgumentOutOfRangeException("not null makes no sense for in expression"); + throw new NotSupportedException(string.Format("not null makes no sense for in expression (column:{0})",columnName)); } else { @@ -112,16 +99,15 @@ // SqlString "is null or [column] (" + [rest of sqlstring here] + ")" if (allowNull) { - buf.Insert(0, " is null or ") - .Insert(0, columnName) - .Insert(0, StringHelper.OpenParen) - .Add(StringHelper.ClosedParen); + buf.Insert(0, " is null or ").Insert(0, columnName).Insert(0, StringHelper.OpenParen).Add(StringHelper.ClosedParen); } } else { - if(values.Count == 0) - throw new ArgumentOutOfRangeException("Attempting to parse a null value into an sql string."); + if (values.Count == 0) + { + throw new NotSupportedException(string.Format("Attempting to parse a null value into an sql string (column:{0}).", columnName)); + } object value = values[0]; if (Null.Equals(value)) { @@ -139,4 +125,4 @@ return buf.ToSqlString(); } } -} +} \ No newline at end of file Modified: trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj =================================================================== --- trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2008-09-29 19:43:50 UTC (rev 3799) +++ trunk/nhibernate/src/NHibernate.Test/NHibernate.Test.csproj 2008-09-29 20:10:50 UTC (rev 3800) @@ -783,7 +783,6 @@ <Compile Include="Assertions\HaveSerializableAttributeAsserter.cs" /> <Compile Include="SessionCacheTest.cs" /> <Compile Include="SqlLogSpy.cs" /> - <Compile Include="SqlCommandTest\InFragmentFixture.cs" /> <Compile Include="SqlCommandTest\SqlDeleteBuilderFixture.cs" /> <Compile Include="SqlCommandTest\SqlInsertBuilderFixture.cs" /> <Compile Include="SqlCommandTest\SqlSelectBuilderFixture.cs" /> Deleted: trunk/nhibernate/src/NHibernate.Test/SqlCommandTest/InFragmentFixture.cs =================================================================== --- trunk/nhibernate/src/NHibernate.Test/SqlCommandTest/InFragmentFixture.cs 2008-09-29 19:43:50 UTC (rev 3799) +++ trunk/nhibernate/src/NHibernate.Test/SqlCommandTest/InFragmentFixture.cs 2008-09-29 20:10:50 UTC (rev 3800) @@ -1,17 +0,0 @@ -using System; - -namespace NHibernate.Test.SqlCommandTest -{ - /// <summary> - /// Summary description for InFragmentFixture. - /// </summary> - public class InFragmentFixture - { - public InFragmentFixture() - { - // - // TODO: Add constructor logic here - // - } - } -} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |