diff --git a/Aaru.CommonTypes b/Aaru.CommonTypes index 647d3fac2..4c11c8218 160000 --- a/Aaru.CommonTypes +++ b/Aaru.CommonTypes @@ -1 +1 @@ -Subproject commit 647d3fac26b2dca37adf53280ce02a4b929800a2 +Subproject commit 4c11c82189994b84a5fd7e17a3dd557c419250b0 diff --git a/Aaru.Core/Devices/Dumping/ATA.cs b/Aaru.Core/Devices/Dumping/ATA.cs index 73035ec7b..e6da47290 100644 --- a/Aaru.Core/Devices/Dumping/ATA.cs +++ b/Aaru.Core/Devices/Dumping/ATA.cs @@ -35,7 +35,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; using Aaru.CommonTypes.Enums; @@ -915,11 +914,7 @@ public partial class Dump JsonSerializer.Serialize(jsonFs, new MetadataJson { AaruMetadata = sidecar - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); } diff --git a/Aaru.Core/Devices/Dumping/Metadata.cs b/Aaru.Core/Devices/Dumping/Metadata.cs index 1bc8d4d55..88ae898c1 100644 --- a/Aaru.Core/Devices/Dumping/Metadata.cs +++ b/Aaru.Core/Devices/Dumping/Metadata.cs @@ -35,7 +35,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; using Aaru.CommonTypes.Enums; @@ -150,11 +149,7 @@ partial class Dump JsonSerializer.Serialize(jsonFs, new MetadataJson { AaruMetadata = sidecar - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); } diff --git a/Aaru.Core/Devices/Dumping/MiniDisc.cs b/Aaru.Core/Devices/Dumping/MiniDisc.cs index 4c6ab150a..9ff7c3f4c 100644 --- a/Aaru.Core/Devices/Dumping/MiniDisc.cs +++ b/Aaru.Core/Devices/Dumping/MiniDisc.cs @@ -37,7 +37,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; using Aaru.CommonTypes.Enums; @@ -879,11 +878,7 @@ partial class Dump JsonSerializer.Serialize(jsonFs, new MetadataJson { AaruMetadata = sidecar - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); } diff --git a/Aaru.Core/Devices/Dumping/PlayStationPortable/MemoryStick.cs b/Aaru.Core/Devices/Dumping/PlayStationPortable/MemoryStick.cs index ec8b320b7..fc82d74b0 100644 --- a/Aaru.Core/Devices/Dumping/PlayStationPortable/MemoryStick.cs +++ b/Aaru.Core/Devices/Dumping/PlayStationPortable/MemoryStick.cs @@ -37,7 +37,6 @@ using System.Diagnostics.CodeAnalysis; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; using Aaru.CommonTypes.Enums; @@ -721,11 +720,7 @@ public partial class Dump JsonSerializer.Serialize(jsonFs, new MetadataJson { AaruMetadata = sidecar - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); } diff --git a/Aaru.Core/Devices/Dumping/SSC.cs b/Aaru.Core/Devices/Dumping/SSC.cs index f2218d5c5..bd3918c03 100644 --- a/Aaru.Core/Devices/Dumping/SSC.cs +++ b/Aaru.Core/Devices/Dumping/SSC.cs @@ -37,7 +37,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using System.Threading; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; @@ -1453,11 +1452,7 @@ partial class Dump JsonSerializer.Serialize(jsonFs, new MetadataJson { AaruMetadata = sidecar - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); } diff --git a/Aaru.Core/Devices/Dumping/Sbc/Dump.cs b/Aaru.Core/Devices/Dumping/Sbc/Dump.cs index 773f562e7..836559ac8 100644 --- a/Aaru.Core/Devices/Dumping/Sbc/Dump.cs +++ b/Aaru.Core/Devices/Dumping/Sbc/Dump.cs @@ -36,7 +36,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; using Aaru.CommonTypes.Enums; @@ -1308,11 +1307,7 @@ partial class Dump JsonSerializer.Serialize(jsonFs, new MetadataJson { AaruMetadata = sidecar - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); } diff --git a/Aaru.Core/Devices/Dumping/SecureDigital.cs b/Aaru.Core/Devices/Dumping/SecureDigital.cs index 7e64eeb56..fc598cff6 100644 --- a/Aaru.Core/Devices/Dumping/SecureDigital.cs +++ b/Aaru.Core/Devices/Dumping/SecureDigital.cs @@ -37,7 +37,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; using Aaru.CommonTypes.Enums; @@ -985,11 +984,7 @@ public partial class Dump JsonSerializer.Serialize(jsonFs, new MetadataJson { AaruMetadata = sidecar - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); } diff --git a/Aaru.Database/Aaru.Database.csproj b/Aaru.Database/Aaru.Database.csproj index 07ca651cd..150979944 100644 --- a/Aaru.Database/Aaru.Database.csproj +++ b/Aaru.Database/Aaru.Database.csproj @@ -54,6 +54,7 @@ + diff --git a/Aaru.Gui/ViewModels/Windows/ImageConvertViewModel.cs b/Aaru.Gui/ViewModels/Windows/ImageConvertViewModel.cs index 2ed8ca84b..3d442e763 100644 --- a/Aaru.Gui/ViewModels/Windows/ImageConvertViewModel.cs +++ b/Aaru.Gui/ViewModels/Windows/ImageConvertViewModel.cs @@ -39,7 +39,6 @@ using System.Linq; using System.Reactive; using System.Text; using System.Text.Json; -using System.Text.Json.Serialization; using System.Threading; using System.Threading.Tasks; using System.Xml.Serialization; @@ -2035,11 +2034,9 @@ public sealed class ImageConvertViewModel : ViewModelBase { var fs = new FileStream(result[0], FileMode.Open); - _aaruMetadata = JsonSerializer.Deserialize(fs, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - PropertyNameCaseInsensitive = true - })?.AaruMetadata; + _aaruMetadata = + (await JsonSerializer.DeserializeAsync(fs, typeof(MetadataJson), MetadataJsonContext.Default) as + MetadataJson)?.AaruMetadata; fs.Close(); MetadataJsonText = result[0]; diff --git a/Aaru.Gui/ViewModels/Windows/ImageSidecarViewModel.cs b/Aaru.Gui/ViewModels/Windows/ImageSidecarViewModel.cs index 7f1987519..1934c8b11 100644 --- a/Aaru.Gui/ViewModels/Windows/ImageSidecarViewModel.cs +++ b/Aaru.Gui/ViewModels/Windows/ImageSidecarViewModel.cs @@ -37,7 +37,6 @@ using System.IO; using System.Reactive; using System.Text; using System.Text.Json; -using System.Text.Json.Serialization; using System.Threading; using System.Threading.Tasks; using Aaru.CommonTypes.AaruMetadata; @@ -257,11 +256,10 @@ public sealed class ImageSidecarViewModel : ViewModelBase var jsonFs = new FileStream(DestinationText, FileMode.Create); - await JsonSerializer.SerializeAsync(jsonFs, sidecar, new JsonSerializerOptions + await JsonSerializer.SerializeAsync(jsonFs, new MetadataJson { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + AaruMetadata = sidecar + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); diff --git a/Aaru.Gui/ViewModels/Windows/MediaDumpViewModel.cs b/Aaru.Gui/ViewModels/Windows/MediaDumpViewModel.cs index 5f2109c3d..af58434b3 100644 --- a/Aaru.Gui/ViewModels/Windows/MediaDumpViewModel.cs +++ b/Aaru.Gui/ViewModels/Windows/MediaDumpViewModel.cs @@ -531,11 +531,9 @@ public sealed class MediaDumpViewModel : ViewModelBase { var fs = new FileStream(result[0], FileMode.Open); - _sidecar = JsonSerializer.Deserialize(fs, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - PropertyNameCaseInsensitive = true - })?.AaruMetadata; + _sidecar = + (JsonSerializer.Deserialize(fs, typeof(MetadataJson), MetadataJsonContext.Default) as MetadataJson)? + .AaruMetadata; fs.Close(); } diff --git a/Aaru.Images/Aaru.Images.csproj b/Aaru.Images/Aaru.Images.csproj index 451ad6db3..ccc713954 100644 --- a/Aaru.Images/Aaru.Images.csproj +++ b/Aaru.Images/Aaru.Images.csproj @@ -49,6 +49,7 @@ + diff --git a/Aaru.Images/AaruFormat/Read.cs b/Aaru.Images/AaruFormat/Read.cs index 1e97637aa..c2fb17742 100644 --- a/Aaru.Images/AaruFormat/Read.cs +++ b/Aaru.Images/AaruFormat/Read.cs @@ -38,7 +38,6 @@ using System.Linq; using System.Runtime.InteropServices; using System.Text; using System.Text.Json; -using System.Text.Json.Serialization; using System.Xml; using System.Xml.Serialization; using Aaru.Checksums; @@ -936,11 +935,9 @@ public sealed partial class AaruFormat try { - AaruMetadata = JsonSerializer.Deserialize(jsonBytes, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - PropertyNameCaseInsensitive = true - })?.AaruMetadata; + AaruMetadata = + (JsonSerializer.Deserialize(jsonBytes, typeof(MetadataJson), MetadataJsonContext.Default) as + MetadataJson)?.AaruMetadata; } catch(JsonException ex) { diff --git a/Aaru.Images/AaruFormat/Write.cs b/Aaru.Images/AaruFormat/Write.cs index 16441fc62..06e093b55 100644 --- a/Aaru.Images/AaruFormat/Write.cs +++ b/Aaru.Images/AaruFormat/Write.cs @@ -39,7 +39,6 @@ using System.Runtime.InteropServices; using System.Security.Cryptography; using System.Text; using System.Text.Json; -using System.Text.Json.Serialization; using System.Xml; using System.Xml.Serialization; using Aaru.Checksums; @@ -1119,11 +1118,9 @@ public sealed partial class AaruFormat try { - AaruMetadata = JsonSerializer.Deserialize(jsonBytes, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - PropertyNameCaseInsensitive = true - })?.AaruMetadata; + AaruMetadata = + (JsonSerializer.Deserialize(jsonBytes, typeof(MetadataJson), + MetadataJsonContext.Default) as MetadataJson)?.AaruMetadata; } catch(JsonException ex) { @@ -2901,11 +2898,7 @@ public sealed partial class AaruFormat JsonSerializer.Serialize(jsonMs, new MetadataJson { AaruMetadata = AaruMetadata - }, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + }, typeof(MetadataJson), MetadataJsonContext.Default); idxEntry = new IndexEntry { diff --git a/Aaru.Images/ZZZRawImage/Read.cs b/Aaru.Images/ZZZRawImage/Read.cs index 79588d5ba..1e92aa8db 100644 --- a/Aaru.Images/ZZZRawImage/Read.cs +++ b/Aaru.Images/ZZZRawImage/Read.cs @@ -35,7 +35,6 @@ using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.Json; -using System.Text.Json.Serialization; using System.Xml.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; @@ -1135,11 +1134,9 @@ public sealed partial class ZZZRawImage { var fs = new FileStream(basename + ".metadata.json", FileMode.Open); - AaruMetadata = JsonSerializer.Deserialize(fs, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - PropertyNameCaseInsensitive = true - })?.AaruMetadata; + AaruMetadata = + (JsonSerializer.Deserialize(fs, typeof(MetadataJson), MetadataJsonContext.Default) as MetadataJson)? + .AaruMetadata; fs.Close(); } diff --git a/Aaru/Aaru.csproj b/Aaru/Aaru.csproj index 58258af34..1baa6b920 100644 --- a/Aaru/Aaru.csproj +++ b/Aaru/Aaru.csproj @@ -100,6 +100,7 @@ + all diff --git a/Aaru/Commands/Image/Convert.cs b/Aaru/Commands/Image/Convert.cs index a7c78ecae..6bf8f772b 100644 --- a/Aaru/Commands/Image/Convert.cs +++ b/Aaru/Commands/Image/Convert.cs @@ -309,11 +309,9 @@ sealed class ConvertImageCommand : Command { var fs = new FileStream(aaruMetadata, FileMode.Open); - sidecar = JsonSerializer.Deserialize(fs, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - PropertyNameCaseInsensitive = true - })?.AaruMetadata; + sidecar = + (JsonSerializer.Deserialize(fs, typeof(MetadataJson), MetadataJsonContext.Default) as + MetadataJson)?.AaruMetadata; fs.Close(); } diff --git a/Aaru/Commands/Image/CreateSidecar.cs b/Aaru/Commands/Image/CreateSidecar.cs index 4aaccf567..729020e03 100644 --- a/Aaru/Commands/Image/CreateSidecar.cs +++ b/Aaru/Commands/Image/CreateSidecar.cs @@ -38,7 +38,6 @@ using System.IO; using System.Linq; using System.Text; using System.Text.Json; -using System.Text.Json.Serialization; using Aaru.CommonTypes; using Aaru.CommonTypes.AaruMetadata; using Aaru.CommonTypes.Enums; @@ -287,11 +286,10 @@ sealed class CreateSidecarCommand : Command FileStream(Path.Combine(Path.GetDirectoryName(imagePath) ?? throw new InvalidOperationException(), Path.GetFileNameWithoutExtension(imagePath) + ".metadata.json"), FileMode.Create); - JsonSerializer.Serialize(jsonFs, sidecar, new JsonSerializerOptions + JsonSerializer.Serialize(jsonFs, new MetadataJson { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + AaruMetadata = sidecar + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); }); @@ -386,11 +384,10 @@ sealed class CreateSidecarCommand : Command FileStream(Path.Combine(Path.GetDirectoryName(imagePath) ?? throw new InvalidOperationException(), Path.GetFileNameWithoutExtension(imagePath) + ".metadata.json"), FileMode.Create); - JsonSerializer.Serialize(jsonFs, sidecar, new JsonSerializerOptions + JsonSerializer.Serialize(jsonFs, new MetadataJson { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - WriteIndented = true - }); + AaruMetadata = sidecar + }, typeof(MetadataJson), MetadataJsonContext.Default); jsonFs.Close(); }); diff --git a/Aaru/Commands/Media/Dump.cs b/Aaru/Commands/Media/Dump.cs index d0b466584..41a5f5eb2 100644 --- a/Aaru/Commands/Media/Dump.cs +++ b/Aaru/Commands/Media/Dump.cs @@ -536,11 +536,9 @@ sealed class DumpMediaCommand : Command { var fs = new FileStream(aaruMetadata, FileMode.Open); - sidecar = JsonSerializer.Deserialize(fs, new JsonSerializerOptions - { - DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull, - PropertyNameCaseInsensitive = true - })?.AaruMetadata; + sidecar = + (JsonSerializer.Deserialize(fs, typeof(MetadataJson), MetadataJsonContext.Default) as + MetadataJson)?.AaruMetadata; fs.Close(); }