From fe6487eeb49a6913f6b93bb9b153674476035d08 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Mon, 1 Nov 2021 12:02:07 -0700 Subject: [PATCH] Fix enum converters (fixes #306) --- MPF.Library/InfoTool.cs | 4 ++-- RedumpLib/Converters/DiscCategoryConverter.cs | 16 +++++----------- RedumpLib/Converters/DiscTypeConverter.cs | 16 +++++----------- RedumpLib/Converters/YesNoConverter.cs | 16 +++++----------- 4 files changed, 17 insertions(+), 35 deletions(-) diff --git a/MPF.Library/InfoTool.cs b/MPF.Library/InfoTool.cs index 017edfa7..c47c04d4 100644 --- a/MPF.Library/InfoTool.cs +++ b/MPF.Library/InfoTool.cs @@ -889,7 +889,7 @@ namespace MPF.Library sw.WriteLine(line); } } - catch + catch (Exception ex) { // We don't care what the error is right now return false; @@ -921,7 +921,7 @@ namespace MPF.Library gs.Write(jsonBytes, 0, jsonBytes.Length); } } - catch + catch (Exception ex) { // We don't care what the error is right now return false; diff --git a/RedumpLib/Converters/DiscCategoryConverter.cs b/RedumpLib/Converters/DiscCategoryConverter.cs index fe738241..5c20d9b4 100644 --- a/RedumpLib/Converters/DiscCategoryConverter.cs +++ b/RedumpLib/Converters/DiscCategoryConverter.cs @@ -8,25 +8,19 @@ namespace RedumpLib.Converters /// /// Serialize DiscCategory enum values /// - public class DiscCategoryConverter : JsonConverter + public class DiscCategoryConverter : JsonConverter { public override bool CanRead { get { return false; } } - public override DiscCategory?[] ReadJson(JsonReader reader, Type objectType, DiscCategory?[] existingValue, bool hasExistingValue, JsonSerializer serializer) + public override DiscCategory? ReadJson(JsonReader reader, Type objectType, DiscCategory? existingValue, bool hasExistingValue, JsonSerializer serializer) { throw new NotImplementedException(); } - public override void WriteJson(JsonWriter writer, DiscCategory?[] value, JsonSerializer serializer) + public override void WriteJson(JsonWriter writer, DiscCategory? value, JsonSerializer serializer) { - JArray array = new JArray(); - foreach (var val in value) - { - JToken t = JToken.FromObject(val.LongName() ?? string.Empty); - array.Add(t); - } - - array.WriteTo(writer); + JToken t = JToken.FromObject(value.LongName() ?? string.Empty); + t.WriteTo(writer); } } } \ No newline at end of file diff --git a/RedumpLib/Converters/DiscTypeConverter.cs b/RedumpLib/Converters/DiscTypeConverter.cs index 214fd8d8..b70424b5 100644 --- a/RedumpLib/Converters/DiscTypeConverter.cs +++ b/RedumpLib/Converters/DiscTypeConverter.cs @@ -8,25 +8,19 @@ namespace RedumpLib.Converters /// /// Serialize DiscType enum values /// - public class DiscTypeConverter : JsonConverter + public class DiscTypeConverter : JsonConverter { public override bool CanRead { get { return false; } } - public override DiscType?[] ReadJson(JsonReader reader, Type objectType, DiscType?[] existingValue, bool hasExistingValue, JsonSerializer serializer) + public override DiscType? ReadJson(JsonReader reader, Type objectType, DiscType? existingValue, bool hasExistingValue, JsonSerializer serializer) { throw new NotImplementedException(); } - public override void WriteJson(JsonWriter writer, DiscType?[] value, JsonSerializer serializer) + public override void WriteJson(JsonWriter writer, DiscType? value, JsonSerializer serializer) { - JArray array = new JArray(); - foreach (var val in value) - { - JToken t = JToken.FromObject(val.LongName() ?? string.Empty); - array.Add(t); - } - - array.WriteTo(writer); + JToken t = JToken.FromObject(value.LongName() ?? string.Empty); + t.WriteTo(writer); } } } \ No newline at end of file diff --git a/RedumpLib/Converters/YesNoConverter.cs b/RedumpLib/Converters/YesNoConverter.cs index c657bd80..001eb29c 100644 --- a/RedumpLib/Converters/YesNoConverter.cs +++ b/RedumpLib/Converters/YesNoConverter.cs @@ -8,25 +8,19 @@ namespace RedumpLib.Converters /// /// Serialize YesNo enum values /// - public class YesNoConverter : JsonConverter + public class YesNoConverter : JsonConverter { public override bool CanRead { get { return false; } } - public override YesNo[] ReadJson(JsonReader reader, Type objectType, YesNo[] existingValue, bool hasExistingValue, JsonSerializer serializer) + public override YesNo ReadJson(JsonReader reader, Type objectType, YesNo existingValue, bool hasExistingValue, JsonSerializer serializer) { throw new NotImplementedException(); } - public override void WriteJson(JsonWriter writer, YesNo[] value, JsonSerializer serializer) + public override void WriteJson(JsonWriter writer, YesNo value, JsonSerializer serializer) { - JArray array = new JArray(); - foreach (var val in value) - { - JToken t = JToken.FromObject(val.LongName() ?? string.Empty); - array.Add(t); - } - - array.WriteTo(writer); + JToken t = JToken.FromObject(value.LongName() ?? string.Empty); + t.WriteTo(writer); } } } \ No newline at end of file