Files
CGW-Printing/PrintService/Models/AppSettings.cs

58 lines
1.6 KiB
C#

namespace PrintService.Models;
/// <summary>
/// Application settings loaded from appsettings.json
/// </summary>
public class AppSettings
{
/// <summary>
/// Path to monitor for incoming capture files
/// </summary>
public string CapturesPath { get; set; } = "Captures";
/// <summary>
/// Path for queued files (after moving from Captures)
/// </summary>
public string QueuePath { get; set; } = "Queue";
/// <summary>
/// Path for failed jobs
/// </summary>
public string ErrorPath { get; set; } = "Errors";
/// <summary>
/// Default archive path
/// </summary>
public string ArchivePath { get; set; } = "Archive";
/// <summary>
/// Maximum retry attempts before moving to error folder
/// </summary>
public int MaxRetryAttempts { get; set; } = 3;
/// <summary>
/// Debounce delay in milliseconds for file system watcher
/// </summary>
public int DebounceDelayMs { get; set; } = 200;
/// <summary>
/// Named pipe name for IPC communication
/// </summary>
public string PipeName { get; set; } = "PrintServicePipe";
/// <summary>
/// Document type configurations
/// </summary>
public List<DocumentConfig> DocumentTypes { get; set; } = new();
/// <summary>
/// Queue state file path
/// </summary>
public string QueueStateFile { get; set; } = "queue_state.json";
/// <summary>
/// Enable detailed logging
/// </summary>
public bool VerboseLogging { get; set; } = false;
}