summaryrefslogtreecommitdiff
path: root/Plugins/MonoGame.Extended/source/MonoGame.Extended/Serialization/JsonContentLoader.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Plugins/MonoGame.Extended/source/MonoGame.Extended/Serialization/JsonContentLoader.cs')
-rw-r--r--Plugins/MonoGame.Extended/source/MonoGame.Extended/Serialization/JsonContentLoader.cs18
1 files changed, 18 insertions, 0 deletions
diff --git a/Plugins/MonoGame.Extended/source/MonoGame.Extended/Serialization/JsonContentLoader.cs b/Plugins/MonoGame.Extended/source/MonoGame.Extended/Serialization/JsonContentLoader.cs
new file mode 100644
index 0000000..69a1212
--- /dev/null
+++ b/Plugins/MonoGame.Extended/source/MonoGame.Extended/Serialization/JsonContentLoader.cs
@@ -0,0 +1,18 @@
+using System.Text.Json;
+using Microsoft.Xna.Framework.Content;
+using MonoGame.Extended.Content;
+
+
+namespace MonoGame.Extended.Serialization
+{
+ public class JsonContentLoader : IContentLoader
+ {
+ public T Load<T>(ContentManager contentManager, string path)
+ {
+
+ using var stream = contentManager.OpenStream(path);
+ var monoGameSerializerOptions = MonoGameJsonSerializerOptionsProvider.GetOptions(contentManager, path);
+ return JsonSerializer.Deserialize<T>(stream, monoGameSerializerOptions);
+ }
+ }
+}