diff options
Diffstat (limited to 'Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration')
2 files changed, 58 insertions, 0 deletions
diff --git a/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/DatabaseConfigurationOptions.cs b/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/DatabaseConfigurationOptions.cs new file mode 100644 index 000000000..d49d8536a --- /dev/null +++ b/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/DatabaseConfigurationOptions.cs @@ -0,0 +1,19 @@ +using System; + +namespace Jellyfin.Server.Implementations.DatabaseConfiguration; + +/// <summary> +/// Options to configure jellyfins managed database. +/// </summary> +public class DatabaseConfigurationOptions +{ + /// <summary> + /// Gets or Sets the type of database jellyfin should use. + /// </summary> + public required string DatabaseType { get; set; } + + /// <summary> + /// Gets or Sets the settings to run jellyfin with Postgres. + /// </summary> + public PostgreSqlOptions? PostgreSql { get; set; } +} diff --git a/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/PostgreSqlOptions.cs b/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/PostgreSqlOptions.cs new file mode 100644 index 000000000..1f7c30b09 --- /dev/null +++ b/Jellyfin.Database/Jellyfin.Database.Implementations/DbConfiguration/PostgreSqlOptions.cs @@ -0,0 +1,39 @@ +using System; + +namespace Jellyfin.Server.Implementations.DatabaseConfiguration; + +/// <summary> +/// Options specific to run jellyfin on a postgreSql database. +/// </summary> +public class PostgreSqlOptions +{ + /// <summary> + /// Gets or Sets the Port. Defaults to 5432. + /// </summary> + public required int Port { get; set; } = 5432; + + /// <summary> + /// Gets or Sets the Server name. + /// </summary> + public required string ServerName { get; set; } + + /// <summary> + /// Gets or Sets the username. + /// </summary> + public required string Username { get; set; } + + /// <summary> + /// Gets or Sets the password. + /// </summary> + public required string Password { get; set; } + + /// <summary> + /// Gets or Sets the database name. Defaults to "Jellyfin". + /// </summary> + public string DatabaseName { get; set; } = "Jellyfin"; + + /// <summary> + /// Gets or Sets the timeout in secounds before a running command is terminated. Defaults to 30. + /// </summary> + public int Timeout { get; set; } = 30; +} |
