fix(notification-service): resolve NotificationService-014..018 — classify OAuth2 failures, fail on bad auth config, wire NotificationOptions fallback, disposable concurrency limiter
This commit is contained in:
@@ -1,15 +1,26 @@
|
||||
namespace ScadaLink.NotificationService;
|
||||
|
||||
/// <summary>
|
||||
/// Configuration options for the Notification Service.
|
||||
/// Most SMTP configuration is stored in the database (SmtpConfiguration entity).
|
||||
/// This provides fallback defaults and operational limits.
|
||||
/// Configuration options for the Notification Service, bound from the
|
||||
/// <c>ScadaLink:Notification</c> configuration section.
|
||||
///
|
||||
/// SMTP settings are primarily carried by the deployed <c>SmtpConfiguration</c>
|
||||
/// entity. NS-017: these values are the fallback used by
|
||||
/// <see cref="NotificationDeliveryService"/> when the corresponding
|
||||
/// <c>SmtpConfiguration</c> field is left unset (non-positive) on a partially
|
||||
/// deployed row — a value present on the row always takes precedence.
|
||||
/// </summary>
|
||||
public class NotificationOptions
|
||||
{
|
||||
/// <summary>Default connection timeout for SMTP connections.</summary>
|
||||
/// <summary>
|
||||
/// Connection timeout (seconds) used when <c>SmtpConfiguration.ConnectionTimeoutSeconds</c>
|
||||
/// is unset. Default 30s.
|
||||
/// </summary>
|
||||
public int ConnectionTimeoutSeconds { get; set; } = 30;
|
||||
|
||||
/// <summary>Maximum concurrent SMTP connections.</summary>
|
||||
/// <summary>
|
||||
/// Maximum concurrent SMTP connections used when
|
||||
/// <c>SmtpConfiguration.MaxConcurrentConnections</c> is unset. Default 5.
|
||||
/// </summary>
|
||||
public int MaxConcurrentConnections { get; set; } = 5;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user