Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit e1f62a1

Browse files
committed
Force SqlExpression to be bound to DialectProvider at creation, change Clone() to call dialect factory, remove redundant overloads
1 parent f2e537b commit e1f62a1

File tree

19 files changed

+98
-95
lines changed

19 files changed

+98
-95
lines changed

src/FirebirdTests/TestLiteFirebird04/Main.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ public static void Main (string[] args)
1616

1717
OrmLiteConfig.DialectProvider = new FirebirdOrmLiteDialectProvider();
1818

19-
ServiceStack.OrmLite.SqlExpression<Company> sql=
20-
new FirebirdSqlExpression<Company>();
19+
ServiceStack.OrmLite.SqlExpression<Company> sql =
20+
OrmLiteConfig.DialectProvider.SqlExpression<Company>();
2121

2222
List<Object> names = new List<Object>();
2323
names.Add("SOME COMPANY");

src/OracleTests/TestLiteOracle04/Main.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ public static void Main (string[] args)
1717

1818
OrmLiteConfig.DialectProvider = new OracleOrmLiteDialectProvider();
1919

20-
ServiceStack.OrmLite.SqlExpression<Company> sql=
21-
new OracleSqlExpression<Company>();
20+
ServiceStack.OrmLite.SqlExpression<Company> sql =
21+
OrmLiteConfig.DialectProvider.SqlExpression<Company>();
2222

2323
List<Object> names = new List<Object>();
2424
names.Add("SOME COMPANY");

src/ServiceStack.OrmLite.Firebird/FirebirdOrmLiteDialectProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -728,7 +728,7 @@ private string Sequence(string modelName, string fieldName, string sequence)
728728

729729
public override SqlExpression<T> SqlExpression<T>()
730730
{
731-
return new FirebirdSqlExpression<T>();
731+
return new FirebirdSqlExpression<T>(this);
732732
}
733733

734734
public override bool DoesTableExist(IDbCommand dbCmd, string tableName)

src/ServiceStack.OrmLite.Firebird/FirebirdSqlExpression.cs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,13 @@ public class FirebirdSqlExpression<T> : SqlExpression<T>
99
private readonly string _trueExpression;
1010
private readonly string _falseExpression;
1111

12-
public FirebirdSqlExpression()
12+
public FirebirdSqlExpression(IOrmLiteDialectProvider dialectProvider)
13+
: base(dialectProvider)
1314
{
1415
_trueExpression = string.Format("({0}={1})", GetQuotedTrueValue(), GetQuotedTrueValue());
1516
_falseExpression = string.Format("({0}={1})", GetQuotedTrueValue(), GetQuotedFalseValue());
1617
}
1718

18-
public override SqlExpression<T> Clone()
19-
{
20-
return CopyTo(new FirebirdSqlExpression<T>());
21-
}
22-
2319
protected override object VisitBinary(BinaryExpression b)
2420
{
2521
object left, right;

src/ServiceStack.OrmLite.MySql/MySqlDialectProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ public override string GetQuotedName(string name)
141141

142142
public override SqlExpression<T> SqlExpression<T>()
143143
{
144-
return new MySqlExpression<T>();
144+
return new MySqlExpression<T>(this);
145145
}
146146

147147
public override bool DoesTableExist(IDbCommand dbCmd, string tableName)

src/ServiceStack.OrmLite.MySql/MySqlExpression.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@
55
/// </summary>
66
public class MySqlExpression<T> : SqlExpression<T>
77
{
8-
public override SqlExpression<T> Clone()
9-
{
10-
return CopyTo(new MySqlExpression<T>());
11-
}
8+
public MySqlExpression(IOrmLiteDialectProvider dialectProvider)
9+
: base(dialectProvider) {}
1210
}
1311
}

src/ServiceStack.OrmLite.Oracle/OracleOrmLiteDialectProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1050,7 +1050,7 @@ private string Sequence(string modelName, string fieldName, string sequence)
10501050

10511051
public override SqlExpression<T> SqlExpression<T>()
10521052
{
1053-
return new OracleSqlExpression<T>();
1053+
return new OracleSqlExpression<T>(this);
10541054
}
10551055

10561056
public override bool DoesTableExist(IDbCommand dbCmd, string tableName)

src/ServiceStack.OrmLite.Oracle/OracleSqlExpression.cs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ namespace ServiceStack.OrmLite.Oracle
66
{
77
public class OracleSqlExpression<T> : SqlExpression<T>
88
{
9+
public OracleSqlExpression(IOrmLiteDialectProvider dialectProvider)
10+
: base(dialectProvider) {}
11+
912
protected override object VisitColumnAccessMethod(MethodCallExpression m)
1013
{
1114
if (m.Method.Name == "Substring")
@@ -28,11 +31,6 @@ protected override object VisitColumnAccessMethod(MethodCallExpression m)
2831
}
2932
return base.VisitColumnAccessMethod(m);
3033
}
31-
32-
public override SqlExpression<T> Clone()
33-
{
34-
return CopyTo(new OracleSqlExpression<T>());
35-
}
3634
}
3735
}
3836

src/ServiceStack.OrmLite.PostgreSQL/PostgreSQLDialectProvider.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ public override object ConvertDbValue(object value, Type type)
200200

201201
public override SqlExpression<T> SqlExpression<T>()
202202
{
203-
return new PostgreSqlExpression<T>();
203+
return new PostgreSqlExpression<T>(this);
204204
}
205205

206206
public override bool DoesTableExist(IDbCommand dbCmd, string tableName)

src/ServiceStack.OrmLite.PostgreSQL/PostgreSqlExpression.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@ namespace ServiceStack.OrmLite.PostgreSQL
22
{
33
public class PostgreSqlExpression<T> : SqlExpression<T>
44
{
5-
public override SqlExpression<T> Clone()
6-
{
7-
return CopyTo(new PostgreSqlExpression<T>());
8-
}
5+
public PostgreSqlExpression(IOrmLiteDialectProvider dialectProvider)
6+
: base(dialectProvider) {}
97
}
108
}

0 commit comments

Comments
 (0)