fix: remove unnecessary async methods, fix PluralkitApiService

This commit is contained in:
sam 2024-09-02 15:59:16 +02:00
parent 086eb95452
commit db01f879bd
Signed by: sam
GPG key ID: 5F3C3C1B3166639D
10 changed files with 96 additions and 73 deletions

View file

@ -69,7 +69,7 @@ public class ChannelCreateResponder(
}
var guildConfig = await db.GetGuildAsync(ch.GuildID.Value, ct);
await webhookExecutor.QueueLogAsync(guildConfig, LogChannelType.ChannelCreate, builder.Build().GetOrThrow());
webhookExecutor.QueueLog(guildConfig, LogChannelType.ChannelCreate, builder.Build().GetOrThrow());
return Result.Success;
}
}

View file

@ -49,7 +49,7 @@ public class ChannelDeleteResponder(
if (channel.Topic.IsDefined(out var topic))
embed.AddField("Description", topic);
await webhookExecutor.QueueLogAsync(guildConfig, LogChannelType.ChannelDelete, embed.Build().GetOrThrow());
webhookExecutor.QueueLog(guildConfig, LogChannelType.ChannelDelete, embed.Build().GetOrThrow());
return Result.Success;
}
}

View file

@ -141,8 +141,7 @@ public class ChannelUpdateResponder(
// Sometimes we get channel update events for channels that didn't actually have anything loggable change.
// If that happens, there will be no embed fields, so just check for that
if (builder.Fields.Count == 0) return Result.Success;
await webhookExecutor.QueueLogAsync(guildConfig, LogChannelType.ChannelUpdate,
builder.Build().GetOrThrow());
webhookExecutor.QueueLog(guildConfig, LogChannelType.ChannelUpdate, builder.Build().GetOrThrow());
return Result.Success;
}

View file

@ -61,7 +61,7 @@ public class GuildCreateResponder(
_logger.Information("Joined new guild {GuildName} / {GuildId}", guildName, guildId);
if (config.Discord.GuildLogId != null && evt.Guild.IsT0)
await webhookExecutor.QueueLogAsync(config.Discord.GuildLogId.Value, new EmbedBuilder()
webhookExecutor.QueueLog(config.Discord.GuildLogId.Value, new EmbedBuilder()
.WithTitle("Joined new guild")
.WithDescription($"Joined new guild **{guild.Name}**")
.WithFooter($"ID: {guild.ID}")
@ -75,24 +75,24 @@ public class GuildCreateResponder(
return Result.Success;
}
public async Task<Result> RespondAsync(IGuildDelete evt, CancellationToken ct = default)
public Task<Result> RespondAsync(IGuildDelete evt, CancellationToken ct = default)
{
if (evt.IsUnavailable.OrDefault(false))
{
_logger.Debug("Guild {GuildId} became unavailable", evt.ID);
return Result.Success;
return Task.FromResult(Result.Success);
}
if (!guildCache.TryGet(evt.ID, out var guild))
{
_logger.Information("Left uncached guild {GuildId}", evt.ID);
return Result.Success;
return Task.FromResult(Result.Success);
}
_logger.Information("Left guild {GuildName} / {GuildId}", guild.Name, guild.ID);
if (config.Discord.GuildLogId != null)
await webhookExecutor.QueueLogAsync(config.Discord.GuildLogId.Value, new EmbedBuilder()
webhookExecutor.QueueLog(config.Discord.GuildLogId.Value, new EmbedBuilder()
.WithTitle("Left guild")
.WithDescription($"Left guild **{guild.Name}**")
.WithFooter($"ID: {guild.ID}")
@ -103,6 +103,6 @@ public class GuildCreateResponder(
.Build()
.GetOrThrow());
return Result.Success;
return Task.FromResult(Result.Success);
}
}

View file

@ -7,6 +7,7 @@ using Catalogger.Backend.Services;
using Humanizer;
using Remora.Discord.API;
using Remora.Discord.API.Abstractions.Gateway.Events;
using Remora.Discord.API.Abstractions.Objects;
using Remora.Discord.API.Abstractions.Rest;
using Remora.Discord.API.Objects;
using Remora.Discord.Extensions.Embeds;
@ -110,8 +111,9 @@ public class GuildMemberAddResponder(
}
if (embeds.Count > 1)
await webhookExecutor.SendLogWithAttachmentsAsync(guildConfig.Channels.GuildMemberAdd, embeds, []);
else await webhookExecutor.QueueLogAsync(guildConfig.Channels.GuildMemberAdd, embeds[0]);
await webhookExecutor.SendLogAsync(guildConfig.Channels.GuildMemberAdd,
embeds.Cast<IEmbed>().ToList(), []);
else webhookExecutor.QueueLog(guildConfig.Channels.GuildMemberAdd, embeds[0]);
return Result.Success;
}

View file

@ -53,7 +53,7 @@ public class MessageDeleteResponder(
if (msg == null)
{
if (logChannel == null) return Result.Success;
await webhookExecutor.QueueLogAsync(logChannel.Value, new Embed(
webhookExecutor.QueueLog(logChannel.Value, new Embed(
Title: "Message deleted",
Description: $"A message not found in the database was deleted in <#{ev.ChannelID}> ({ev.ChannelID}).",
Footer: new EmbedFooter(Text: $"ID: {ev.ID}"),
@ -121,7 +121,7 @@ public class MessageDeleteResponder(
if (!string.IsNullOrWhiteSpace(attachmentInfo)) builder.AddField("Attachments", attachmentInfo, false);
}
await webhookExecutor.QueueLogAsync(logChannel.Value, builder.Build().GetOrThrow());
webhookExecutor.QueueLog(logChannel.Value, builder.Build().GetOrThrow());
return Result.Success;
}
}

View file

@ -105,7 +105,7 @@ public class MessageUpdateResponder(
embedBuilder.AddField("Link", $"https://discord.com/channels/{msg.GuildID}/{msg.ChannelID}/{msg.ID}");
await webhookExecutor.QueueLogAsync(logChannel.Value, embedBuilder.Build().GetOrThrow());
webhookExecutor.QueueLog(logChannel.Value, embedBuilder.Build().GetOrThrow());
return Result.Success;
}
finally