// Token: 0x06000627 RID: 1575 RVA: 0x0002F4D8 File Offset: 0x0002D6D8 internal void Invoke(MailboxDataForTags mailboxDataForTags, ElcParameters parameters) { SysCleanupEnforcerManager.Tracer.TraceDebug((long)this.GetHashCode(), "{0}: Invoke called.", new object[] { TraceContext.Get() }); ICollection <SysCleanupEnforcerBase> collection; if (parameters != ElcParameters.None) { collection = new List <SysCleanupEnforcerBase>(); if ((parameters & ElcParameters.HoldCleanup) == ElcParameters.HoldCleanup) { collection.Add(new HoldCleanupEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant)); } if ((parameters & ElcParameters.EHAHiddenFolderCleanup) == ElcParameters.EHAHiddenFolderCleanup) { collection.Add(new EHAHiddenFolderCleanupEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant)); } } else { collection = new List <SysCleanupEnforcerBase>(new SysCleanupEnforcerBase[] { new MigrateToArchiveEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new DumpsterExpirationEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new CalendarLogExpirationEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new AuditExpirationEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new DumpsterQuotaEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new AuditQuotaEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new SupplementExpirationEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new EHAQuotaWarningEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new EHAMigratedMessageMoveEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new EHAMigratedMessageDeletionEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant), new DiscoveryHoldEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant) }); if (mailboxDataForTags.HoldCleanupFolderType != DefaultFolderType.None) { collection.Add(new HoldCleanupEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant)); } if (mailboxDataForTags.IsEHAHiddenFolderWatermarkSet()) { collection.Add(new EHAHiddenFolderCleanupEnforcer(mailboxDataForTags, this.sysCleanupSubAssistant)); } } foreach (SysCleanupEnforcerBase sysCleanupEnforcerBase in collection) { this.sysCleanupSubAssistant.ThrowIfShuttingDown(mailboxDataForTags.MailboxSession.MailboxOwner); SysCleanupEnforcerManager.Tracer.TraceDebug <object, SysCleanupEnforcerBase>((long)this.GetHashCode(), "{0}: Calling enabled enforcer '{1}'.", TraceContext.Get(), sysCleanupEnforcerBase); mailboxDataForTags.StatisticsLogEntry.LastProcessedEnforcer = sysCleanupEnforcerBase.GetType().Name; sysCleanupEnforcerBase.Invoke(); } }
private ElcParameters GetElcParameters() { ElcParameters elcParameters = ElcParameters.None; if (this.HoldCleanup) { elcParameters |= ElcParameters.HoldCleanup; } if (this.EHAHiddenFolderCleanup) { elcParameters |= ElcParameters.EHAHiddenFolderCleanup; } return(elcParameters); }
// Token: 0x0600062E RID: 1582 RVA: 0x0002FA18 File Offset: 0x0002DC18 private void InvokeInternal(MailboxSession mailboxSession, MailboxDataForTags mailboxDataForTags, ElcParameters parameters) { this.sysCleanupEnforcerManager.Invoke(mailboxDataForTags, parameters); this.CheckArchiveWarningQuota(mailboxSession, mailboxDataForTags); }
// Token: 0x0600062D RID: 1581 RVA: 0x0002F9D8 File Offset: 0x0002DBD8 internal void Invoke(MailboxSession mailboxSession, MailboxDataForTags mailboxDataForTags, ElcParameters parameters) { Stopwatch stopwatch = Stopwatch.StartNew(); try { this.InvokeInternal(mailboxSession, mailboxDataForTags, parameters); } finally { mailboxDataForTags.StatisticsLogEntry.CleanupSubAssistantProcessingTime = stopwatch.ElapsedMilliseconds; } }