aboutsummaryrefslogtreecommitdiff
path: root/lib/Plugins.PluginBase/src
diff options
context:
space:
mode:
authorLibravatar vnugent <public@vaughnnugent.com>2023-04-15 01:58:55 -0400
committerLibravatar vnugent <public@vaughnnugent.com>2023-04-15 01:58:55 -0400
commit3ce61cf38727db2f37a0e478182d2a73222c8a7c (patch)
treea03bf1bdde44961183b7bb34dea9c3381050dc27 /lib/Plugins.PluginBase/src
parentbaf859f45cf1f00e79508954517ed4b6fb446103 (diff)
Managed assembly loading overhaul
Diffstat (limited to 'lib/Plugins.PluginBase/src')
-rw-r--r--lib/Plugins.PluginBase/src/PluginBase.cs15
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/Plugins.PluginBase/src/PluginBase.cs b/lib/Plugins.PluginBase/src/PluginBase.cs
index 80860e7..37dafc6 100644
--- a/lib/Plugins.PluginBase/src/PluginBase.cs
+++ b/lib/Plugins.PluginBase/src/PluginBase.cs
@@ -105,11 +105,18 @@ namespace VNLib.Plugins
/// a configuration object to the instance. This method populates the configuration objects if applicable.
/// </summary>
[ConfigurationInitalizer]
- public virtual void InitConfig(JsonDocument config)
+ public virtual void InitConfig(ReadOnlySpan<byte> config)
{
- _ = config ?? throw new ArgumentNullException(nameof(config));
- //Store config ref to dispose properly
- Configuration = config;
+ if (config.IsEmpty)
+ {
+ throw new ArgumentNullException(nameof(config));
+ }
+
+ //reader for the config value
+ Utf8JsonReader reader = new(config);
+
+ //Parse the config
+ Configuration = JsonDocument.ParseValue(ref reader);
}
/// <summary>