Skip to content

Commit 1775cc2

Browse files
committed
NH-3644: Remove older overloads of GetColumnAliases() which are now unused from IProjection. These older versions had some issues with projections that resulted in several columns (components and composite keys).
1 parent e6f3fd0 commit 1775cc2

12 files changed

+8
-80
lines changed

releasenotes.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Build 4.0.0.XXXX
44
** Known BREAKING CHANGES from NH4.0.0.Alpha2 to 4.0.0.Alpha1
55

66
The interface IEnhancedProjection was removed and its methods moved to IProjection.
7+
Two other overloads of the GetColumnAliases() methods was removed from IProjection.
78

89
Build 4.0.0.Alpha2
910
=============================

src/NHibernate.Test/Criteria/AddNumberProjection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ public override SqlString ToSqlString(ICriteria criteria, int position, ICriteri
3636
.Add(" + ")
3737
.Add(criteriaQuery.NewQueryParameter(typedValue).Single())
3838
.Add(") as ")
39-
.Add(GetColumnAliases(0)[0])
39+
.Add(GetColumnAliases(0, criteria, criteriaQuery)[0])
4040
.ToSqlString();
4141
}
4242

src/NHibernate/Criterion/AliasedProjection.cs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,18 +41,6 @@ public virtual IType[] GetTypes(String alias, ICriteria criteria, ICriteriaQuery
4141
: null;
4242
}
4343

44-
public virtual string[] GetColumnAliases(int loc)
45-
{
46-
return projection.GetColumnAliases(loc);
47-
}
48-
49-
public virtual string[] GetColumnAliases(string alias, int loc)
50-
{
51-
return this.alias.Equals(alias)
52-
? GetColumnAliases(loc)
53-
: null;
54-
}
55-
5644
public string[] GetColumnAliases(int position, ICriteria criteria, ICriteriaQuery criteriaQuery)
5745
{
5846
return projection.GetColumnAliases(position, criteria, criteriaQuery);

src/NHibernate/Criterion/AvgProjection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ public override SqlString ToSqlString(ICriteria criteria, int loc, ICriteriaQuer
3131
parameter = criteriaQuery.GetColumn(criteria, propertyName);
3232
}
3333
string expression = string.Format("{0}(cast({1} as {2})) as {3}", aggregate, parameter, sqlType,
34-
GetColumnAliases(loc)[0]);
34+
GetColumnAliases(loc, criteria, criteriaQuery)[0]);
3535
return new SqlString(expression);
3636
}
3737

src/NHibernate/Criterion/CastProjection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ public override SqlString ToSqlString(ICriteria criteria, int position, ICriteri
4242
SqlString val = projection.ToSqlString(criteria, loc, criteriaQuery,enabledFilters);
4343
val = SqlStringHelper.RemoveAsAliasesFromSql(val);
4444

45-
return new SqlString("cast( ", val, " as ", sqlType, ") as ", GetColumnAliases(position)[0]);
45+
return new SqlString("cast( ", val, " as ", sqlType, ") as ", GetColumnAliases(position, criteria, criteriaQuery)[0]);
4646
}
4747

4848
public override IType[] GetTypes(ICriteria criteria, ICriteriaQuery criteriaQuery)

src/NHibernate/Criterion/ConditionalProjection.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ public override SqlString ToSqlString(ICriteria criteria, int position, ICriteri
4949
ifTrue = SqlStringHelper.RemoveAsAliasesFromSql(ifTrue);
5050
SqlString ifFalse = whenFalse.ToSqlString(criteria, position + GetHashCode() + 2, criteriaQuery, enabledFilters);
5151
ifFalse = SqlStringHelper.RemoveAsAliasesFromSql(ifFalse);
52-
return new SqlString("(case when ", condition, " then ", ifTrue, " else ", ifFalse, " end) as ", GetColumnAliases(position)[0]);
52+
return new SqlString("(case when ", condition, " then ", ifTrue, " else ", ifFalse, " end) as ",
53+
GetColumnAliases(position, criteria, criteriaQuery)[0]);
5354
}
5455

5556
public override IType[] GetTypes(ICriteria criteria, ICriteriaQuery criteriaQuery)

src/NHibernate/Criterion/ConstantProjection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public override SqlString ToSqlString(ICriteria criteria, int position, ICriteri
4646
return new SqlString(
4747
criteriaQuery.NewQueryParameter(typedValue).Single(),
4848
" as ",
49-
GetColumnAliases(position)[0]);
49+
GetColumnAliases(position, criteria, criteriaQuery)[0]);
5050
}
5151

5252
public override IType[] GetTypes(ICriteria criteria, ICriteriaQuery criteriaQuery)

src/NHibernate/Criterion/Distinct.cs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,21 +37,11 @@ public virtual IType[] GetTypes(String alias, ICriteria criteria, ICriteriaQuery
3737
return projection.GetTypes(alias, criteria, criteriaQuery);
3838
}
3939

40-
public virtual string[] GetColumnAliases(int loc)
41-
{
42-
return projection.GetColumnAliases(loc);
43-
}
44-
4540
public virtual string[] GetColumnAliases(int position, ICriteria criteria, ICriteriaQuery criteriaQuery)
4641
{
4742
return projection.GetColumnAliases(position, criteria, criteriaQuery);
4843
}
4944

50-
public virtual string[] GetColumnAliases(string alias, int loc)
51-
{
52-
return projection.GetColumnAliases(alias, loc);
53-
}
54-
5545
public virtual string[] GetColumnAliases(string alias, int position, ICriteria criteria, ICriteriaQuery criteriaQuery)
5646
{
5747
return projection.GetColumnAliases(alias, position, criteria, criteriaQuery);

src/NHibernate/Criterion/GroupedProjection.cs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,6 @@ public virtual IType[] GetTypes(String alias, ICriteria criteria, ICriteriaQuery
3838
return this.projection.GetTypes(alias,criteria,criteriaQuery);
3939
}
4040

41-
public virtual string[] GetColumnAliases(int loc)
42-
{
43-
return projection.GetColumnAliases(loc);
44-
}
45-
46-
public virtual string[] GetColumnAliases(string alias, int loc)
47-
{
48-
return null;
49-
}
50-
5141
public string[] GetColumnAliases(int position, ICriteria criteria, ICriteriaQuery criteriaQuery)
5242
{
5343
return projection.GetColumnAliases(position, criteria, criteriaQuery);

src/NHibernate/Criterion/IProjection.cs

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -49,21 +49,6 @@ SqlString ToGroupSqlString(ICriteria criteria,
4949
/// <returns></returns>
5050
IType[] GetTypes(string alias, ICriteria criteria, ICriteriaQuery criteriaQuery);
5151

52-
/// <summary>
53-
/// Get the SQL select clause column aliases for a particular user-visible alias
54-
/// </summary>
55-
/// <param name="loc"></param>
56-
/// <returns></returns>
57-
string[] GetColumnAliases(int loc);
58-
59-
/// <summary>
60-
/// Get the SQL select clause column aliases for a particular user-visible alias
61-
/// </summary>
62-
/// <param name="alias"></param>
63-
/// <param name="loc"></param>
64-
/// <returns></returns>
65-
string[] GetColumnAliases(string alias, int loc);
66-
6752
/// <summary>
6853
/// Get the user-visible aliases for this projection (ie. the ones that will be passed to the ResultTransformer)
6954
/// </summary>

src/NHibernate/Criterion/ProjectionList.cs

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -89,33 +89,6 @@ public SqlString ToGroupSqlString(ICriteria criteria, ICriteriaQuery criteriaQue
8989
return buf.ToSqlString();
9090
}
9191

92-
public string[] GetColumnAliases(int loc)
93-
{
94-
IList<string> aliases = new List<string>(Length);
95-
96-
for (int i = 0; i < Length; i++)
97-
{
98-
String[] colAliases = this[i].GetColumnAliases(loc);
99-
foreach (string alias in colAliases)
100-
aliases.Add(alias);
101-
loc += colAliases.Length;
102-
}
103-
string[] result = new string[aliases.Count];
104-
aliases.CopyTo(result, 0);
105-
return result;
106-
}
107-
108-
public string[] GetColumnAliases(string alias, int loc)
109-
{
110-
for (int i = 0; i < Length; i++)
111-
{
112-
String[] result = this[i].GetColumnAliases(alias, loc);
113-
if (result != null) return result;
114-
loc += this[i].GetColumnAliases(loc).Length;
115-
}
116-
return null;
117-
}
118-
11992
public string[] GetColumnAliases(int position, ICriteria criteria, ICriteriaQuery criteriaQuery)
12093
{
12194
var result = new List<string>(Length);

src/NHibernate/Criterion/SqlFunctionProjection.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ public override SqlString ToSqlString(ICriteria criteria, int position, ICriteri
8484
return new SqlString(
8585
sqlFunction.Render(arguments, criteriaQuery.Factory),
8686
" as ",
87-
GetColumnAliases(position)[0]);
87+
GetColumnAliases(position, criteria, criteriaQuery)[0]);
8888
}
8989

9090
private ISQLFunction GetFunction(ICriteriaQuery criteriaQuery)

0 commit comments

Comments
 (0)