Browse Source

Stream name fixes.

pull/249/head
Sebastian Stehle 9 years ago
parent
commit
a18d744ad5
  1. 11
      src/Squidex.Infrastructure/States/DefaultStreamNameResolver.cs

11
src/Squidex.Infrastructure/States/DefaultStreamNameResolver.cs

@ -11,15 +11,20 @@ namespace Squidex.Infrastructure.States
{ {
public sealed class DefaultStreamNameResolver : IStreamNameResolver public sealed class DefaultStreamNameResolver : IStreamNameResolver
{ {
private const string Suffix = "DomainObject"; private static readonly string[] Suffixes = new string[] { "DomainObject", "Grain" };
public string GetStreamName(Type aggregateType, string id) public string GetStreamName(Type aggregateType, string id)
{ {
var typeName = char.ToLower(aggregateType.Name[0]) + aggregateType.Name.Substring(1); var typeName = char.ToLower(aggregateType.Name[0]) + aggregateType.Name.Substring(1);
if (typeName.EndsWith(Suffix, StringComparison.Ordinal)) foreach (var suffix in Suffixes)
{ {
typeName = typeName.Substring(0, typeName.Length - Suffix.Length); if (typeName.EndsWith(suffix, StringComparison.Ordinal))
{
typeName = typeName.Substring(0, typeName.Length - suffix.Length);
break;
}
} }
return $"{typeName}-{id}"; return $"{typeName}-{id}";

Loading…
Cancel
Save