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

Commit 40e0714

Browse files
committed
Add GetSequenceName to INamingStrategy
1 parent d64713d commit 40e0714

File tree

4 files changed

+14
-2
lines changed

4 files changed

+14
-2
lines changed

src/ServiceStack.OrmLite.Oracle/OracleNamingStrategy.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,12 @@ public override string GetColumnName(string name)
2626
return ApplyNameRestrictions(name);
2727
}
2828

29+
public override string GetSequenceName(string modelName, string fieldName)
30+
{
31+
var seqName = ApplyNameRestrictions(modelName + "_" + fieldName + "_GEN");
32+
return seqName;
33+
}
34+
2935
public override string ApplyNameRestrictions(string name)
3036
{
3137
if (name.Length > MaxNameLength) name = Squash(name);

src/ServiceStack.OrmLite.Oracle/OracleOrmLiteDialectProvider.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -973,11 +973,11 @@ public override string SanitizeFieldNameForParamName(string fieldName)
973973
return name;
974974
}
975975

976-
private string Sequence(string modelName, string fieldName, string sequence)
976+
public virtual string Sequence(string modelName, string fieldName, string sequence)
977977
{
978978
//TODO used to return Quote(sequence)
979979
if (!sequence.IsNullOrEmpty()) return sequence;
980-
var seqName = NamingStrategy.ApplyNameRestrictions(modelName + "_" + fieldName + "_GEN");
980+
var seqName = NamingStrategy.GetSequenceName(modelName, fieldName);
981981
return seqName;
982982
}
983983

src/ServiceStack.OrmLite/INamingStrategy.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ public interface INamingStrategy
55
{
66
string GetTableName(string name);
77
string GetColumnName(string name);
8+
string GetSequenceName(string modelName, string fieldName);
89
string ApplyNameRestrictions(string name);
910
}
1011
}

src/ServiceStack.OrmLite/OrmLiteNamingStrategyBase.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,11 @@ public virtual string GetColumnName(string name)
2424
return name;
2525
}
2626

27+
public virtual string GetSequenceName(string modelName, string fieldName)
28+
{
29+
return "SEQ_" + modelName + "_" + fieldName;
30+
}
31+
2732
public virtual string ApplyNameRestrictions(string name)
2833
{
2934
return name;

0 commit comments

Comments
 (0)