diff options
author | vman <public@vaughnnugent.com> | 2022-10-30 02:28:12 -0400 |
---|---|---|
committer | vman <public@vaughnnugent.com> | 2022-10-30 02:28:12 -0400 |
commit | a8510fb835dcc5e1142d700164ce5a4bd44e1a25 (patch) | |
tree | 28caab320f777a384cb6883b68dd999cdc8c0a3f /Libs/VNLib.Plugins.Essentials.Sessions.Runtime/IRuntimeSessionProvider.cs |
Add project files.
Diffstat (limited to 'Libs/VNLib.Plugins.Essentials.Sessions.Runtime/IRuntimeSessionProvider.cs')
-rw-r--r-- | Libs/VNLib.Plugins.Essentials.Sessions.Runtime/IRuntimeSessionProvider.cs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Libs/VNLib.Plugins.Essentials.Sessions.Runtime/IRuntimeSessionProvider.cs b/Libs/VNLib.Plugins.Essentials.Sessions.Runtime/IRuntimeSessionProvider.cs new file mode 100644 index 0000000..9941e6a --- /dev/null +++ b/Libs/VNLib.Plugins.Essentials.Sessions.Runtime/IRuntimeSessionProvider.cs @@ -0,0 +1,26 @@ + +using VNLib.Net.Http; +using VNLib.Utils.Logging; + +namespace VNLib.Plugins.Essentials.Sessions +{ + /// <summary> + /// Represents a dynamically loadable type that an provide sessions to http connections + /// </summary> + public interface IRuntimeSessionProvider : ISessionProvider + { + /// <summary> + /// Called immediatly after the plugin is loaded into the appdomain + /// </summary> + /// <param name="plugin">The plugin instance that is loading the module</param> + /// <param name="localizedLog">The localized log provider for the provider</param> + void Load(PluginBase plugin, ILogProvider localizedLog); + + /// <summary> + /// Determines if the provider can return a session for the connection + /// </summary> + /// <param name="entity">The entity to process</param> + /// <returns>A value indicating if this provider should be called to load a session for</returns> + bool CanProcess(IHttpEvent entity); + } +} |