From 916e897ed25f74b0112e51758e673f18ad13af1d Mon Sep 17 00:00:00 2001 From: JPVenson Date: Wed, 4 Jun 2025 01:53:37 +0300 Subject: Allow custom plugin provided database providers to be loaded (#14171) --- .../DbConfiguration/CustomDatabaseOptions.cs | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/CustomDatabaseOptions.cs (limited to 'src/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/CustomDatabaseOptions.cs') diff --git a/src/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/CustomDatabaseOptions.cs b/src/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/CustomDatabaseOptions.cs new file mode 100644 index 000000000..e2088704d --- /dev/null +++ b/src/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/CustomDatabaseOptions.cs @@ -0,0 +1,32 @@ +using System.Collections.Generic; +using System.Collections.ObjectModel; + +namespace Jellyfin.Database.Implementations.DbConfiguration; + +/// +/// Defines the options for a custom database connector. +/// +public class CustomDatabaseOptions +{ + /// + /// Gets or sets the Plugin name to search for database providers. + /// + public required string PluginName { get; set; } + + /// + /// Gets or sets the plugin assembly to search for providers. + /// + public required string PluginAssembly { get; set; } + + /// + /// Gets or sets the connection string for the custom database provider. + /// + public required string ConnectionString { get; set; } + + /// + /// Gets or sets the list of extra options for the custom provider. + /// +#pragma warning disable CA2227 // Collection properties should be read only + public Collection Options { get; set; } = []; +#pragma warning restore CA2227 // Collection properties should be read only +} -- cgit v1.2.3