/// <summary> /// Create a rate limited purger /// </summary> /// <param name="purger">The underlying purger to use</param> /// <param name="maxPurgeRate">The maximum rate at which the purger will run. (In this thread.)</param> public RateLimitedPurger(IActivityLogPurger purger, int maxPurgeRate = -1) { _purger = purger; MaxPurgeRate = maxPurgeRate > -1 ? maxPurgeRate : DefaultMaxPurgeRateMs; LastPurge = DateTime.MinValue; }
/// <summary> /// Create a new <see cref="ActivityLogWriter"/>. /// </summary> /// <param name="activityLogPurger"> /// The <see cref="IActivityLogPurger"/> used to purge excess events. /// </param> public ActivityLogWriter(IActivityLogPurger activityLogPurger) { if (activityLogPurger == null) { throw new ArgumentNullException("activityLogPurger"); } Purger = activityLogPurger; }