User synchronization revamped.

This commit is contained in:
2025-07-04 23:33:33 +02:00
parent 4393977389
commit c775e3a25e
14 changed files with 348 additions and 139 deletions

View File

@ -0,0 +1,15 @@
namespace MessengerApi.Models
{
public class UserIngestionItem
{
public string UserName { get; set; }
public Guid Id { get; set; }
public Guid ApiKey { get; set; }
public bool IsEnabled { get; set; }
public UserIngestionItem[] CanSendTo { get; set; }
}
}

View File

@ -0,0 +1,21 @@
using MessengerApi.Db;
namespace MessengerApi.Models
{
public class UserIngestionOperation
{
public UserIngestionOperationTypes Type { get; set; }
public UserIngestionOperationSubtypes Subtype { get; set; }
public string Username { get; set; }
public Action<MessengerDbContext> Operation { get; set; }
public override string ToString()
{
var value = $"Operation: {this.Type}/{this.Subtype} for {this.Username}.";
return value;
}
}
}

View File

@ -0,0 +1,14 @@
namespace MessengerApi.Models
{
public enum UserIngestionOperationSubtypes
{
Unknown,
ChangeUserName,
ChangeUserApiKey,
ChangeUserIsEnabled,
AddUser,
AddUserRoute,
RemoveUser,
RemoveUserRoute
}
}

View File

@ -0,0 +1,10 @@
namespace MessengerApi.Models
{
public enum UserIngestionOperationTypes
{
Unknown,
Create,
Update,
Delete
}
}

View File

@ -1,11 +0,0 @@
namespace MessengerApi.Models
{
public class UserSetupItem
{
public string UserName { get; set; }
public string ApiKey { get; set; }
public string[] CanSendToUserNames { get; set; }
}
}