Exemple #1
0
        public MailGarbageEraser(ILogger log = null)
        {
            _log = log ?? new NullLogger();

            _log.Info("Service started");

            _mailBoxManager = new MailBoxManager();

            _garbageManager = new MailGarbageCleanDal(_mailBoxManager);
        }
Exemple #2
0
        public MailGarbageEraser(MailGarbageEraserConfig config, ILogger log = null)
        {
            Config = config;

            _log = log ?? new NullLogger();

            _mailBoxManager = new MailBoxManager();

            _garbageManager = new MailGarbageCleanDal();

            _tenantMemCache = new MemoryCache("GarbageEraserTenantCache");

            var lcts = new LimitedConcurrencyLevelTaskScheduler(Config.MaxTasksAtOnce);

            _taskFactory = new TaskFactory(lcts);
        }
        public MailGarbageEraser(int maxTasksAtOnce, int maxFilesToRemoveAtOnce, int tenantCacheDays, int tenantOverdueDays, int garbageOverdueDays,
                                 ILogger log = null)
        {
            _maxTasksAtOnce         = maxTasksAtOnce;
            _maxFilesToRemoveAtOnce = maxFilesToRemoveAtOnce;
            _tenantCacheDays        = tenantCacheDays;
            _tenantOverdueDays      = tenantOverdueDays;
            _garbageOverdueDays     = garbageOverdueDays;

            _log = log ?? new NullLogger();

            _mailBoxManager = new MailBoxManager();

            _garbageManager = new MailGarbageCleanDal();

            _tenantMemCache = new MemoryCache("GarbageEraserTenantCache");

            _lcts = new LimitedConcurrencyLevelTaskScheduler(_maxTasksAtOnce);

            _taskFactory = new TaskFactory(_lcts);
        }