using System; using System.Collections.Generic; namespace ZB.MOM.WW.CBDDC.Core; /// /// Configures synchronization behavior for a single dataset pipeline. /// public sealed class DatasetSyncOptions { /// /// Gets or sets the dataset identifier. /// public string DatasetId { get; set; } = global::ZB.MOM.WW.CBDDC.Core.DatasetId.Primary; /// /// Gets or sets a value indicating whether this dataset pipeline is enabled. /// public bool Enabled { get; set; } = true; /// /// Gets or sets the delay between sync loop cycles. /// public TimeSpan SyncLoopDelay { get; set; } = TimeSpan.FromSeconds(2); /// /// Gets or sets the maximum number of peers selected per cycle. /// public int MaxPeersPerCycle { get; set; } = 3; /// /// Gets or sets the maximum number of oplog entries pushed or pulled in one cycle. /// public int? MaxEntriesPerCycle { get; set; } /// /// Gets or sets an optional maintenance interval override for this dataset. /// public TimeSpan? MaintenanceIntervalOverride { get; set; } /// /// Gets or sets collection interests for this dataset pipeline. /// public List InterestingCollections { get; set; } = []; }