using System.ComponentModel.DataAnnotations;
namespace StellaOps.Plugin.MyJob;
///
/// Configuration options for the MyJob scheduled plugin.
///
public sealed class MyJobOptions
{
///
/// The configuration section name.
///
public const string SectionName = "Plugins:MyJob";
///
/// Gets or sets the cron schedule expression.
/// Default: "0 0 * * *" (daily at midnight).
///
[Required]
public string CronSchedule { get; set; } = "0 0 * * *";
///
/// Gets or sets whether the job is enabled.
///
public bool Enabled { get; set; } = true;
///
/// Gets or sets the maximum execution time in minutes.
///
[Range(1, 1440)]
public int MaxExecutionMinutes { get; set; } = 60;
///
/// Gets or sets the batch size for processing items.
///
[Range(1, 10000)]
public int BatchSize { get; set; } = 100;
///
/// Gets or sets whether to continue processing on error.
///
public bool ContinueOnError { get; set; }
}