public MailGarbageEngine(MailGarbageEraserConfig config, ILog log = null) { Config = config; Log = log ?? LogManager.GetLogger("ASC.Mail.GarbageEngine"); TenantMemCache = new MemoryCache("GarbageEraserTenantCache"); var scheduler = new LimitedConcurrencyLevelTaskScheduler(Config.MaxTasksAtOnce); TaskFactory = new TaskFactory(scheduler); Locker = new object(); }
public StorageCleanerService() { CanStop = true; AutoLog = true; XmlConfigurator.Configure(); _log = LoggerFactory.GetLogger(LoggerFactory.LoggerType.Log4Net, "MailCleaner"); _resetEvent = new ManualResetEvent(false); _tsInterval = TimeSpan.FromMinutes(Convert.ToInt32(ConfigurationManager.AppSettings["cleaner.timer-wait-minutes"])); var config = MailGarbageEraserConfig.FromConfig(); _log.Info("Service will clear mail storage every {0} minutes\r\n", _tsInterval.TotalMinutes); _eraser = new MailGarbageEraser(config, _log); }
public MailGarbageEngine(ILog log = null) : this(MailGarbageEraserConfig.FromConfig(), log) { }