[CompositeRoles] Directly deserialiaze to ulong

This commit is contained in:
2023-03-25 10:57:57 +01:00
parent 14f90a2d18
commit cb0b993ceb
4 changed files with 6 additions and 7 deletions

View File

@@ -8,14 +8,13 @@ namespace Cocotte.Modules.Activities;
public class CompositeRolesListener
{
private readonly ILogger<CompositeRolesListener> _logger;
private readonly IDictionary<ulong, GuildCompositeRoles[]> _compositeRoles;
private readonly IReadOnlyDictionary<ulong, GuildCompositeRoles[]> _compositeRoles;
public CompositeRolesListener(ILogger<CompositeRolesListener> logger,
IOptions<CompositeRolesOptions> compositeRolesOptions)
{
_logger = logger;
// Initialize dictionary: transform string guildIds to ulong
_compositeRoles = compositeRolesOptions.Value.CompositeRoles.ToDictionary(kp => ulong.Parse(kp.Key), kp => kp.Value);
_compositeRoles = compositeRolesOptions.Value.CompositeRoles;
}
public async Task UserUpdated(Cacheable<SocketGuildUser, ulong> cacheable, SocketGuildUser guildUser)

View File

@@ -4,7 +4,7 @@ public class CompositeRolesOptions
{
public const string SectionName = "CompositeRolesOptions";
public required IReadOnlyDictionary<string, GuildCompositeRoles[]> CompositeRoles { get; init; }
public required IReadOnlyDictionary<ulong, GuildCompositeRoles[]> CompositeRoles { get; init; }
}
public class GuildCompositeRoles

View File

@@ -10,7 +10,7 @@ public class CdnUtils
/// <summary>
/// Needs to be updated each time a media is updated on the CDN
/// </summary>
private const string RandomSuffix = "a57z45a";
private const string RandomSuffix = "assets1";
public static string GetAsset(string assetName)
{

View File

@@ -1,7 +1,7 @@
{
"CompositeRolesOptions": {
"CompositeRoles": {
"someGuildId (ulong)": [
"someGuildId": [
{
"TargetRoleId": 1,
"CompositeRolesIds": [
@@ -11,7 +11,7 @@
]
}
],
"anotherGuildId (ulong)": [
"anotherGuildId": [
{
"TargetRoleId": 45,
"CompositeRolesIds": [