diff --git a/TeamOctolings.Octobot/Commands/SettingsCommandGroup.cs b/TeamOctolings.Octobot/Commands/SettingsCommandGroup.cs
index d18e92e..56584bf 100644
--- a/TeamOctolings.Octobot/Commands/SettingsCommandGroup.cs
+++ b/TeamOctolings.Octobot/Commands/SettingsCommandGroup.cs
@@ -29,13 +29,13 @@ namespace TeamOctolings.Octobot.Commands;
public class SettingsCommandGroup : CommandGroup
{
///
- /// Represents all options as an array of objects implementing .
+ /// Represents all options as an array of objects implementing .
///
///
/// WARNING: If you update this array in any way, you must also update and make sure
/// that the orders match.
///
- private static readonly IOption[] AllOptions =
+ private static readonly IGuildOption[] AllOptions =
[
GuildSettings.Language,
GuildSettings.WelcomeMessage,
@@ -199,7 +199,7 @@ public class SettingsCommandGroup : CommandGroup
}
private async Task EditSettingAsync(
- IOption option, string value, GuildData data, Snowflake channelId, IUser executor, IUser bot,
+ IGuildOption option, string value, GuildData data, Snowflake channelId, IUser executor, IUser bot,
CancellationToken ct = default)
{
var setResult = option.Set(data.Settings, value);
@@ -270,7 +270,7 @@ public class SettingsCommandGroup : CommandGroup
}
private async Task ResetSingleSettingAsync(JsonNode cfg, IUser bot,
- IOption option, CancellationToken ct = default)
+ IGuildOption option, CancellationToken ct = default)
{
var resetResult = option.Reset(cfg);
if (!resetResult.IsSuccess)
diff --git a/TeamOctolings.Octobot/Data/GuildSettings.cs b/TeamOctolings.Octobot/Data/GuildSettings.cs
index 9c9195b..dc59d6f 100644
--- a/TeamOctolings.Octobot/Data/GuildSettings.cs
+++ b/TeamOctolings.Octobot/Data/GuildSettings.cs
@@ -22,7 +22,7 @@ public static class GuildSettings
///
///
///
- public static readonly Option WelcomeMessage = new("WelcomeMessage", "default");
+ public static readonly GuildOption WelcomeMessage = new("WelcomeMessage", "default");
///
/// Controls what message should be sent in when a member leaves the guild.
@@ -34,7 +34,7 @@ public static class GuildSettings
///
///
///
- public static readonly Option LeaveMessage = new("LeaveMessage", "default");
+ public static readonly GuildOption LeaveMessage = new("LeaveMessage", "default");
///
/// Controls whether or not the message should be sent
diff --git a/TeamOctolings.Octobot/Data/Options/BoolOption.cs b/TeamOctolings.Octobot/Data/Options/BoolOption.cs
index 54caeba..6a3c899 100644
--- a/TeamOctolings.Octobot/Data/Options/BoolOption.cs
+++ b/TeamOctolings.Octobot/Data/Options/BoolOption.cs
@@ -3,7 +3,7 @@ using Remora.Results;
namespace TeamOctolings.Octobot.Data.Options;
-public sealed class BoolOption : Option
+public sealed class BoolOption : GuildOption
{
public BoolOption(string name, bool defaultValue) : base(name, defaultValue) { }
diff --git a/TeamOctolings.Octobot/Data/Options/Option.cs b/TeamOctolings.Octobot/Data/Options/GuildOption.cs
similarity index 92%
rename from TeamOctolings.Octobot/Data/Options/Option.cs
rename to TeamOctolings.Octobot/Data/Options/GuildOption.cs
index f9004bb..5d9f1a2 100644
--- a/TeamOctolings.Octobot/Data/Options/Option.cs
+++ b/TeamOctolings.Octobot/Data/Options/GuildOption.cs
@@ -5,15 +5,15 @@ using Remora.Results;
namespace TeamOctolings.Octobot.Data.Options;
///
-/// Represents an per-guild option.
+/// Represents a per-guild option.
///
/// The type of the option.
-public class Option : IOption
+public class GuildOption : IGuildOption
where T : notnull
{
protected readonly T DefaultValue;
- public Option(string name, T defaultValue)
+ public GuildOption(string name, T defaultValue)
{
Name = name;
DefaultValue = defaultValue;
diff --git a/TeamOctolings.Octobot/Data/Options/IOption.cs b/TeamOctolings.Octobot/Data/Options/IGuildOption.cs
similarity index 89%
rename from TeamOctolings.Octobot/Data/Options/IOption.cs
rename to TeamOctolings.Octobot/Data/Options/IGuildOption.cs
index 5fcb843..a8c3e6e 100644
--- a/TeamOctolings.Octobot/Data/Options/IOption.cs
+++ b/TeamOctolings.Octobot/Data/Options/IGuildOption.cs
@@ -3,7 +3,7 @@ using Remora.Results;
namespace TeamOctolings.Octobot.Data.Options;
-public interface IOption
+public interface IGuildOption
{
string Name { get; }
string Display(JsonNode settings);
diff --git a/TeamOctolings.Octobot/Data/Options/LanguageOption.cs b/TeamOctolings.Octobot/Data/Options/LanguageOption.cs
index dd73900..15ab6ff 100644
--- a/TeamOctolings.Octobot/Data/Options/LanguageOption.cs
+++ b/TeamOctolings.Octobot/Data/Options/LanguageOption.cs
@@ -6,7 +6,7 @@ using Remora.Results;
namespace TeamOctolings.Octobot.Data.Options;
///
-public sealed class LanguageOption : Option
+public sealed class LanguageOption : GuildOption
{
private static readonly Dictionary CultureInfoCache = new()
{
diff --git a/TeamOctolings.Octobot/Data/Options/SnowflakeOption.cs b/TeamOctolings.Octobot/Data/Options/SnowflakeOption.cs
index 97c312a..b7405f2 100644
--- a/TeamOctolings.Octobot/Data/Options/SnowflakeOption.cs
+++ b/TeamOctolings.Octobot/Data/Options/SnowflakeOption.cs
@@ -7,7 +7,7 @@ using TeamOctolings.Octobot.Extensions;
namespace TeamOctolings.Octobot.Data.Options;
-public sealed partial class SnowflakeOption : Option
+public sealed partial class SnowflakeOption : GuildOption
{
public SnowflakeOption(string name) : base(name, 0UL.ToSnowflake()) { }
diff --git a/TeamOctolings.Octobot/Data/Options/TimeSpanOption.cs b/TeamOctolings.Octobot/Data/Options/TimeSpanOption.cs
index 2a8939b..3501f09 100644
--- a/TeamOctolings.Octobot/Data/Options/TimeSpanOption.cs
+++ b/TeamOctolings.Octobot/Data/Options/TimeSpanOption.cs
@@ -4,7 +4,7 @@ using TeamOctolings.Octobot.Parsers;
namespace TeamOctolings.Octobot.Data.Options;
-public sealed class TimeSpanOption : Option
+public sealed class TimeSpanOption : GuildOption
{
public TimeSpanOption(string name, TimeSpan defaultValue) : base(name, defaultValue) { }