first commit

This commit is contained in:
2025-02-26 23:42:19 +01:00
commit 777ea98be1
283 changed files with 88266 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using Confluent.Kafka;
namespace Kafka.Lib.Auth;
public class LogOutMessageType : IMessageType
{
public List<string?>? Tokens { get; set; }
public string? UserName { get; set; }
public string? Id { get; set; }
public string EventType { get; init; } = "Logout";
[JsonIgnore]
public string Text
{
get => JsonSerializer.Serialize(this);
set
{
if (string.IsNullOrEmpty(value))
{
var obj = JsonSerializer.Deserialize<LogOutMessageType>(value);
if (obj != null)
{
Tokens = obj.Tokens;
UserName = obj.UserName;
Id = obj.Id;
}
}
}
}
}
+7
View File
@@ -0,0 +1,7 @@
namespace Kafka.Lib.Auth.Model;
public class ClaimChagesModel
{
public ClaimModel? Old { get; set; }
public ClaimModel? New { get; set; }
}
+8
View File
@@ -0,0 +1,8 @@
namespace Kafka.Lib.Auth.Model;
public class ClaimModel
{
public string? ClaimType { get; set; }
public string? ClaimValue { get; set; }
public string? ClaimIssuer { get; set; }
}
+30
View File
@@ -0,0 +1,30 @@
using Newtonsoft.Json;
using JsonSerializer = System.Text.Json.JsonSerializer;
namespace Kafka.Lib.Auth.Model
{
public class PrivilageModel
{
public string? Id { get; set; }
public string? PrivilageName { get; set; }
[JsonIgnore]
public string Text
{
get => JsonSerializer.Serialize(this);
set
{
if (!string.IsNullOrWhiteSpace(value))
{
var obj = JsonSerializer.Deserialize<PrivilageModel>(value);
if (obj != null)
{
Id = obj.Id;
PrivilageName = obj.PrivilageName;
}
}
}
}
}
}
@@ -0,0 +1,37 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using Kafka.Lib.Auth.Model;
namespace Kafka.Lib.Auth;
public class PermisionChangeMassageType : IMessageType
{
public PrivilageModel? PrivilageModel { get; set; }
public Dictionary<string, string> Changes { get; set; } = new();
public string? Id { get; set; }
public string? EventType { get; } = "PermisionChange";
[JsonIgnore]
public string Text
{
get
{
return JsonSerializer.Serialize(this);
}
set
{
if (!string.IsNullOrWhiteSpace(value))
{
var obj = JsonSerializer.Deserialize<PermisionChangeMassageType>(value);
if (obj != null)
{
PrivilageModel = obj.PrivilageModel;
Changes = obj.Changes;
}
}
}
}
}
@@ -0,0 +1,39 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using Kafka.Lib.Auth.Model;
namespace Kafka.Lib.Auth;
public class RegisterNewServiceMessageType : IMessageType
{
public string? ServiceName { get; set; }
public string? ServiceAccountUserName { get; set; }
public List<string>? ServicePrivilage { get; set; }
public string? Id { get; set; }
public string? EventType { get; } = "RegisterNewService";
[JsonIgnore]
public string Text
{
get
{
return JsonSerializer.Serialize(this);
}
set
{
if (!string.IsNullOrWhiteSpace(value))
{
var obj = JsonSerializer.Deserialize<RegisterNewServiceMessageType>(value);
if (obj != null)
{
ServiceName = obj.ServiceName;
ServiceAccountUserName = obj.ServiceAccountUserName;
ServicePrivilage = obj.ServicePrivilage;
}
}
}
}
}
@@ -0,0 +1,33 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace Kafka.Lib.Auth;
public class TokenValidationMessageType : IMessageType
{
public string? Token { get; set; }
public string? Mess { get; set; }
public string? Id { get; set; }
public string? EventType { get; } = "TokenNotValid";
[JsonIgnore]
public string Text
{
get => JsonSerializer.Serialize(this);
set
{
if (!string.IsNullOrWhiteSpace(value))
{
var obj = JsonSerializer.Deserialize<TokenValidationMessageType>(value);
if (obj != null)
{
Token = obj.Token;
Mess = obj.Mess;
}
}
}
}
}
@@ -0,0 +1,65 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using Kafka.Lib.Auth.Model;
namespace Kafka.Lib.Auth;
public class UserChangeClaimsMessageType : IMessageType
{
private string? _userId;
private List<ClaimChagesModel>? _claimChages;
private string? _id;
private bool _isSuccess = false;
private Dictionary<string,string> _errors = new ();
public string? UserId
{
get => _userId;
set => _userId = value;
}
public List<ClaimChagesModel>? ClaimChages
{
get => _claimChages;
set => _claimChages = value;
}
public string? Id
{
get => _id;
set => _id = value;
}
public string? EventType { get; } = "UserChangeClaims";
public bool IsSuccess
{
get => _isSuccess;
set => _isSuccess = value;
}
public Dictionary<string, string> Errors
{
get => _errors;
set => _errors = value;
}
[JsonIgnore]
public string Text
{
get => JsonSerializer.Serialize(this);
set
{
if (!string.IsNullOrEmpty(value))
{
var obj = JsonSerializer.Deserialize<UserChangeClaimsMessageType>(value);
if (obj != null)
{
UserId = obj.UserId;
ClaimChages = obj.ClaimChages;
}
}
}
}
}
+49
View File
@@ -0,0 +1,49 @@
using System.Net.Http.Headers;
using System.Text.Json;
using System.Text.Json.Serialization;
using Confluent.Kafka;
namespace Kafka.Lib.Auth;
public class UserChangeMessageType : IMessageType
{
private string? _userId;
private Dictionary<string, string> _changes = new Dictionary<string, string>();
private string? _id;
private readonly string _eventType = "NewUser";
public string? UserId
{
get => _userId;
set => _userId = value;
}
public Dictionary<string, string> Changes
{
get => _changes;
set => _changes = value;
}
public string? Id
{
get => _id;
set => _id = value;
}
public string EventType => _eventType;
[JsonIgnore]
public string Text
{
get => JsonSerializer.Serialize(this);
set
{
var val = JsonSerializer.Deserialize<UserChangeMessageType>(value);
if (val == null) throw new MessageNullException();
_changes = val.Changes;
_userId = val.UserId;
_id = val.Id;
}
}
}