diff options
author | vnugent <public@vaughnnugent.com> | 2023-04-15 01:58:55 -0400 |
---|---|---|
committer | vnugent <public@vaughnnugent.com> | 2023-04-15 01:58:55 -0400 |
commit | 3ce61cf38727db2f37a0e478182d2a73222c8a7c (patch) | |
tree | a03bf1bdde44961183b7bb34dea9c3381050dc27 /lib/Plugins.PluginBase/src | |
parent | baf859f45cf1f00e79508954517ed4b6fb446103 (diff) |
Managed assembly loading overhaul
Diffstat (limited to 'lib/Plugins.PluginBase/src')
-rw-r--r-- | lib/Plugins.PluginBase/src/PluginBase.cs | 15 |
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> |