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();
}