namespace XLAB2.Infrastructure;

internal sealed class DatabaseOptions
{
    public string ApplicationName { get; set; } = "XLAB2";

    public int CommandTimeoutSeconds { get; set; } = 60;

    public int ConnectRetryCount { get; set; } = 3;

    public int ConnectRetryIntervalSeconds { get; set; } = 10;

    public int ConnectTimeoutSeconds { get; set; } = 15;

    public string Database { get; set; } = "ASUMS";

    public bool Encrypt { get; set; } = false;

    public bool IntegratedSecurity { get; set; } = true;

    public bool MultipleActiveResultSets { get; set; } = true;

    public bool Pooling { get; set; } = true;

    public int MaxPoolSize { get; set; } = 100;

    public int MinPoolSize { get; set; } = 0;

    public string Server { get; set; } = @"SEVENHILL\SQLEXPRESS";

    public bool TrustServerCertificate { get; set; } = true;
}
