From 62864d58e145a7ad80e7527df99eab87e4a6e7dc Mon Sep 17 00:00:00 2001 From: CyberL1 Date: Thu, 23 May 2024 12:58:02 +0200 Subject: [PATCH] feat: enums --- Minecraft-Realms-Emulator/Compatibility.cs | 9 -------- .../Controllers/McoController.cs | 5 +++-- .../Controllers/TrialController.cs | 3 ++- .../Controllers/WorldsController.cs | 21 ++++++++++--------- .../Enums/CompatibilityEnum.cs | 11 ++++++++++ .../Enums/SettingsEnum.cs | 9 ++++++++ Minecraft-Realms-Emulator/Enums/StateEnum.cs | 9 ++++++++ .../Enums/SubscriptionTypeEnum.cs | 8 +++++++ .../Enums/VersionCompatibilityEnum.cs | 9 ++++++++ .../Enums/WorldTemplateTypeEnum.cs | 11 ++++++++++ .../Enums/WorldTypeEnum.cs | 11 ++++++++++ Minecraft-Realms-Emulator/Helpers/Database.cs | 13 ++++++------ 12 files changed, 91 insertions(+), 28 deletions(-) delete mode 100644 Minecraft-Realms-Emulator/Compatibility.cs create mode 100644 Minecraft-Realms-Emulator/Enums/CompatibilityEnum.cs create mode 100644 Minecraft-Realms-Emulator/Enums/SettingsEnum.cs create mode 100644 Minecraft-Realms-Emulator/Enums/StateEnum.cs create mode 100644 Minecraft-Realms-Emulator/Enums/SubscriptionTypeEnum.cs create mode 100644 Minecraft-Realms-Emulator/Enums/VersionCompatibilityEnum.cs create mode 100644 Minecraft-Realms-Emulator/Enums/WorldTemplateTypeEnum.cs create mode 100644 Minecraft-Realms-Emulator/Enums/WorldTypeEnum.cs diff --git a/Minecraft-Realms-Emulator/Compatibility.cs b/Minecraft-Realms-Emulator/Compatibility.cs deleted file mode 100644 index 9377d81..0000000 --- a/Minecraft-Realms-Emulator/Compatibility.cs +++ /dev/null @@ -1,9 +0,0 @@ -namespace Minecraft_Realms_Emulator -{ - public enum Compatility - { - COMPATIBLE, - OTHER, - OUTDATED - } -} diff --git a/Minecraft-Realms-Emulator/Controllers/McoController.cs b/Minecraft-Realms-Emulator/Controllers/McoController.cs index b3f5834..f3bc5e2 100644 --- a/Minecraft-Realms-Emulator/Controllers/McoController.cs +++ b/Minecraft-Realms-Emulator/Controllers/McoController.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Mvc; using Minecraft_Realms_Emulator.Attributes; using Minecraft_Realms_Emulator.Data; +using Minecraft_Realms_Emulator.Enums; using Minecraft_Realms_Emulator.Helpers; using Minecraft_Realms_Emulator.Responses; @@ -27,14 +28,14 @@ namespace Minecraft_Realms_Emulator.Controllers [HttpGet("client/compatible")] public ActionResult GetCompatible() { - return Ok("COMPATIBLE"); + return Ok(nameof(VersionCompatibilityEnum.COMPATIBLE)); } [HttpGet("v1/news")] public ActionResult GetNews() { var config = new ConfigHelper(_context); - var newsLink = config.GetSetting("newsLink"); + var newsLink = config.GetSetting(nameof(SettingsEnum.newsLink)); var news = new NewsResponse { diff --git a/Minecraft-Realms-Emulator/Controllers/TrialController.cs b/Minecraft-Realms-Emulator/Controllers/TrialController.cs index 5d53c58..7ebabb2 100644 --- a/Minecraft-Realms-Emulator/Controllers/TrialController.cs +++ b/Minecraft-Realms-Emulator/Controllers/TrialController.cs @@ -1,6 +1,7 @@ using Microsoft.AspNetCore.Mvc; using Minecraft_Realms_Emulator.Attributes; using Minecraft_Realms_Emulator.Data; +using Minecraft_Realms_Emulator.Enums; using Minecraft_Realms_Emulator.Helpers; namespace Minecraft_Realms_Emulator.Controllers @@ -21,7 +22,7 @@ namespace Minecraft_Realms_Emulator.Controllers public ActionResult GetTrial() { var config = new ConfigHelper(_context); - var trialMode = config.GetSetting("trialMode"); + var trialMode = config.GetSetting(nameof(SettingsEnum.trialMode)); return Ok(trialMode.Value); } diff --git a/Minecraft-Realms-Emulator/Controllers/WorldsController.cs b/Minecraft-Realms-Emulator/Controllers/WorldsController.cs index 7ffdad8..c5a0957 100644 --- a/Minecraft-Realms-Emulator/Controllers/WorldsController.cs +++ b/Minecraft-Realms-Emulator/Controllers/WorldsController.cs @@ -3,6 +3,7 @@ using Microsoft.EntityFrameworkCore; using Minecraft_Realms_Emulator.Attributes; using Minecraft_Realms_Emulator.Data; using Minecraft_Realms_Emulator.Entities; +using Minecraft_Realms_Emulator.Enums; using Minecraft_Realms_Emulator.Helpers; using Minecraft_Realms_Emulator.Requests; using Minecraft_Realms_Emulator.Responses; @@ -45,8 +46,8 @@ namespace Minecraft_Realms_Emulator.Controllers OwnerUUID = playerUUID, Name = null, Motd = null, - State = "UNINITIALIZED", - WorldType = "NORMAL", + State = nameof(StateEnum.UNINITIALIZED), + WorldType = nameof(WorldTypeEnum.NORMAL), MaxPlayers = 10, MinigameId = null, MinigameName = null, @@ -66,7 +67,7 @@ namespace Minecraft_Realms_Emulator.Controllers Slot activeSlot = world.Slots.Find(s => s.SlotId == world.ActiveSlot); int versionsCompared = SemVersion.Parse(gameVersion, SemVersionStyles.Strict).ComparePrecedenceTo(SemVersion.Parse(activeSlot?.Version ?? gameVersion, SemVersionStyles.Strict)); - string isCompatible = versionsCompared == 0 ? "COMPATIBLE" : versionsCompared < 0 ? "NEEDS_DOWNGRADE" : "NEEDS_UPGRADE"; + string isCompatible = versionsCompared == 0 ? nameof(CompatibilityEnum.COMPATIBLE) : versionsCompared < 0 ? nameof(CompatibilityEnum.NEEDS_DOWNGRADE) : nameof(CompatibilityEnum.NEEDS_UPGRADE); WorldResponse response = new() { @@ -103,7 +104,7 @@ namespace Minecraft_Realms_Emulator.Controllers Slot activeSlot = world.Slots.Find(s => s.SlotId == world.ActiveSlot); int versionsCompared = SemVersion.Parse(gameVersion, SemVersionStyles.OptionalPatch).ComparePrecedenceTo(SemVersion.Parse(activeSlot.Version, SemVersionStyles.OptionalPatch)); - string isCompatible = versionsCompared == 0 ? "COMPATIBLE" : versionsCompared < 0 ? "NEEDS_DOWNGRADE" : "NEEDS_UPGRADE"; + string isCompatible = versionsCompared == 0 ? nameof(CompatibilityEnum.COMPATIBLE) : versionsCompared < 0 ? nameof(CompatibilityEnum.NEEDS_DOWNGRADE) : nameof(CompatibilityEnum.NEEDS_UPGRADE); WorldResponse response = new() { @@ -157,7 +158,7 @@ namespace Minecraft_Realms_Emulator.Controllers foreach (var slot in world.Slots) { int versionsCompared = SemVersion.Parse(gameVersion, SemVersionStyles.OptionalPatch).ComparePrecedenceTo(SemVersion.Parse(slot.Version, SemVersionStyles.OptionalPatch)); - string compatibility = versionsCompared == 0 ? "COMPATIBLE" : versionsCompared < 0 ? "NEEDS_DOWNGRADE" : "NEEDS_UPGRADE"; + string compatibility = versionsCompared == 0 ? nameof(CompatibilityEnum.COMPATIBLE) : versionsCompared < 0 ? nameof(CompatibilityEnum.NEEDS_DOWNGRADE) : nameof(CompatibilityEnum.NEEDS_UPGRADE); slots.Add(new SlotResponse() { @@ -221,17 +222,17 @@ namespace Minecraft_Realms_Emulator.Controllers var world = worlds.Find(w => w.Id == wId); if (world == null) return NotFound("World not found"); - if (world.State != "UNINITIALIZED") return NotFound("World already initialized"); + if (world.State != nameof(StateEnum.UNINITIALIZED)) return NotFound("World already initialized"); var subscription = new Subscription { StartDate = DateTime.UtcNow, - SubscriptionType = "NORMAL" + SubscriptionType = nameof(SubscriptionTypeEnum.NORMAL) }; world.Name = body.Name; world.Motd = body.Description; - world.State = "OPEN"; + world.State = nameof(StateEnum.OPEN); world.Subscription = subscription; var config = new ConfigHelper(_context); @@ -289,7 +290,7 @@ namespace Minecraft_Realms_Emulator.Controllers if (world == null) return NotFound("World not found"); - world.State = "OPEN"; + world.State = nameof(StateEnum.OPEN); _context.SaveChanges(); @@ -306,7 +307,7 @@ namespace Minecraft_Realms_Emulator.Controllers if (world == null) return NotFound("World not found"); - world.State = "CLOSED"; + world.State = nameof(StateEnum.CLOSED); _context.SaveChanges(); diff --git a/Minecraft-Realms-Emulator/Enums/CompatibilityEnum.cs b/Minecraft-Realms-Emulator/Enums/CompatibilityEnum.cs new file mode 100644 index 0000000..4b4f6d0 --- /dev/null +++ b/Minecraft-Realms-Emulator/Enums/CompatibilityEnum.cs @@ -0,0 +1,11 @@ +namespace Minecraft_Realms_Emulator.Enums +{ + public enum CompatibilityEnum + { + UNVERIFIABLE, + INCOMPATIBLE, + NEEDS_DOWNGRADE, + NEEDS_UPGRADE, + COMPATIBLE + } +} diff --git a/Minecraft-Realms-Emulator/Enums/SettingsEnum.cs b/Minecraft-Realms-Emulator/Enums/SettingsEnum.cs new file mode 100644 index 0000000..7113caf --- /dev/null +++ b/Minecraft-Realms-Emulator/Enums/SettingsEnum.cs @@ -0,0 +1,9 @@ +namespace Minecraft_Realms_Emulator.Enums +{ + public enum SettingsEnum + { + newsLink, + defaultServerAddress, + trialMode + } +} diff --git a/Minecraft-Realms-Emulator/Enums/StateEnum.cs b/Minecraft-Realms-Emulator/Enums/StateEnum.cs new file mode 100644 index 0000000..ddfe23d --- /dev/null +++ b/Minecraft-Realms-Emulator/Enums/StateEnum.cs @@ -0,0 +1,9 @@ +namespace Minecraft_Realms_Emulator.Enums +{ + public enum StateEnum + { + CLOSED, + OPEN, + UNINITIALIZED + } +} diff --git a/Minecraft-Realms-Emulator/Enums/SubscriptionTypeEnum.cs b/Minecraft-Realms-Emulator/Enums/SubscriptionTypeEnum.cs new file mode 100644 index 0000000..ac176e5 --- /dev/null +++ b/Minecraft-Realms-Emulator/Enums/SubscriptionTypeEnum.cs @@ -0,0 +1,8 @@ +namespace Minecraft_Realms_Emulator.Enums +{ + public enum SubscriptionTypeEnum + { + NORMAL, + RECURRING + } +} diff --git a/Minecraft-Realms-Emulator/Enums/VersionCompatibilityEnum.cs b/Minecraft-Realms-Emulator/Enums/VersionCompatibilityEnum.cs new file mode 100644 index 0000000..29dcb9f --- /dev/null +++ b/Minecraft-Realms-Emulator/Enums/VersionCompatibilityEnum.cs @@ -0,0 +1,9 @@ +namespace Minecraft_Realms_Emulator.Enums +{ + public enum VersionCompatibilityEnum + { + COMPATIBLE, + OUTDATED, + OTHER + } +} diff --git a/Minecraft-Realms-Emulator/Enums/WorldTemplateTypeEnum.cs b/Minecraft-Realms-Emulator/Enums/WorldTemplateTypeEnum.cs new file mode 100644 index 0000000..e33bc22 --- /dev/null +++ b/Minecraft-Realms-Emulator/Enums/WorldTemplateTypeEnum.cs @@ -0,0 +1,11 @@ +namespace Minecraft_Realms_Emulator.Enums +{ + public enum WorldTemplateTypeEnum + { + WORLD_TEMPLATE, + MINIGAME, + ADVENTUREMAP, + EXPERIENCE, + INSPIRATION + } +} diff --git a/Minecraft-Realms-Emulator/Enums/WorldTypeEnum.cs b/Minecraft-Realms-Emulator/Enums/WorldTypeEnum.cs new file mode 100644 index 0000000..aeee8d4 --- /dev/null +++ b/Minecraft-Realms-Emulator/Enums/WorldTypeEnum.cs @@ -0,0 +1,11 @@ +namespace Minecraft_Realms_Emulator.Enums +{ + public enum WorldTypeEnum + { + NORMAL, + MINIGAME, + ADVENTUREMAP, + EXPERIENCE, + INSPIRATION + } +} diff --git a/Minecraft-Realms-Emulator/Helpers/Database.cs b/Minecraft-Realms-Emulator/Helpers/Database.cs index 1106c79..644f1e2 100644 --- a/Minecraft-Realms-Emulator/Helpers/Database.cs +++ b/Minecraft-Realms-Emulator/Helpers/Database.cs @@ -1,6 +1,7 @@ using Microsoft.EntityFrameworkCore; using Minecraft_Realms_Emulator.Data; using Minecraft_Realms_Emulator.Entities; +using Minecraft_Realms_Emulator.Enums; using Minecraft_Realms_Emulator.Helpers.Config; using Newtonsoft.Json; @@ -18,29 +19,29 @@ namespace Minecraft_Realms_Emulator.Helpers var config = new ConfigHelper(db); var settings = new Settings(); - if (config.GetSetting("newsLink") == null) + if (config.GetSetting(nameof(SettingsEnum.newsLink)) == null) { db.Configuration.Add(new Configuration { - Key = "newsLink", + Key = nameof(SettingsEnum.newsLink), Value = JsonConvert.SerializeObject(settings.NewsLink) }); } - if (config.GetSetting("defaultServerAddress") == null) + if (config.GetSetting(nameof(SettingsEnum.defaultServerAddress)) == null) { db.Configuration.Add(new Configuration { - Key = "defaultServerAddress", + Key = nameof(SettingsEnum.defaultServerAddress), Value = JsonConvert.SerializeObject(settings.DefaultServerAddress) }); } - if (config.GetSetting("trialMode") == null) + if (config.GetSetting(nameof(SettingsEnum.trialMode)) == null) { db.Configuration.Add(new Configuration { - Key = "trialMode", + Key = nameof(SettingsEnum.trialMode), Value = JsonConvert.SerializeObject(settings.TrialMode) }); }