33 lines
1.2 KiB
C#
33 lines
1.2 KiB
C#
namespace Extrudex.Infrastructure.Configuration;
|
|
|
|
/// <summary>
|
|
/// Configuration options for the FilamentUsageSync background job.
|
|
/// Bound from appsettings.json under the "FilamentUsageSync" section.
|
|
/// Controls polling interval and per-printer timeout settings.
|
|
/// </summary>
|
|
public class FilamentUsageSyncOptions
|
|
{
|
|
/// <summary>
|
|
/// The section name in appsettings.json where these options are bound.
|
|
/// </summary>
|
|
public const string SectionName = "FilamentUsageSync";
|
|
|
|
/// <summary>
|
|
/// How often the background job polls printers for usage data.
|
|
/// Default: 5 minutes. Minimum recommended: 1 minute.
|
|
/// </summary>
|
|
public TimeSpan PollingInterval { get; set; } = TimeSpan.FromMinutes(5);
|
|
|
|
/// <summary>
|
|
/// Timeout for individual HTTP requests to a Moonraker printer.
|
|
/// Default: 30 seconds.
|
|
/// </summary>
|
|
public TimeSpan RequestTimeout { get; set; } = TimeSpan.FromSeconds(30);
|
|
|
|
/// <summary>
|
|
/// Whether the sync job is enabled. Set to false to disable
|
|
/// the background job without removing its registration.
|
|
/// Default: true.
|
|
/// </summary>
|
|
public bool Enabled { get; set; } = true;
|
|
} |