// Token: 0x060003F6 RID: 1014 RVA: 0x0001C798 File Offset: 0x0001A998
        private bool InvokeInternal(MailboxDataForTags mailboxDataForTags)
        {
            TagProvisioner.Tracer.TraceDebug <TagProvisioner, IExchangePrincipal>((long)this.GetHashCode(), "{0}: TagProvisioner invoked for for mailbox '{1}'.", this, mailboxDataForTags.MailboxSession.MailboxOwner);
            ElcUserTagInformation elcUserTagInformation = (ElcUserTagInformation)mailboxDataForTags.ElcUserInformation;
            bool      flag      = false;
            TagChange tagChange = new TagChange();

            if (mailboxDataForTags.MailboxSession.MailboxOwner.RecipientType != RecipientType.MailUser)
            {
                MailboxUpgrader  mailboxUpgrader  = new MailboxUpgrader(elcUserTagInformation);
                UpgradeStatus    upgradeStatus    = mailboxUpgrader.UpgradeIfNecessary();
                ADChangeDetector adchangeDetector = new ADChangeDetector(mailboxDataForTags);
                tagChange = adchangeDetector.Detect();
                if (tagChange.ChangeType != ChangeType.None || (upgradeStatus & UpgradeStatus.AppliedFolderTag) != UpgradeStatus.None)
                {
                    flag = true;
                    elcUserTagInformation.FullCrawlRequired = true;
                }
            }
            else if (elcUserTagInformation.FullCrawlRequired)
            {
                flag = true;
            }
            mailboxDataForTags.StatisticsLogEntry.IsFullCrawlNeeded = flag;
            Synchronizer synchronizer = new Synchronizer(mailboxDataForTags, this.elcAssistant, flag);

            synchronizer.Invoke();
            return(elcUserTagInformation.SaveConfigItem(mailboxDataForTags.ArchiveProcessor));
        }
Esempio n. 2
0
 // Token: 0x060003C5 RID: 965 RVA: 0x0001A984 File Offset: 0x00018B84
 private void MapPolicyForArchive(MailboxDataForTags mailboxDataForTags)
 {
     if (mailboxDataForTags.FolderArchiver != null && mailboxDataForTags.MailboxSession.MailboxOwner != null && !mailboxDataForTags.MailboxSession.MailboxOwner.MailboxInfo.IsArchive && mailboxDataForTags.MailboxSession.MailboxOwner.GetArchiveMailbox() != null)
     {
         try
         {
             mailboxDataForTags.FolderArchiver.SyncHierarchies();
         }
         catch (DataSourceOperationException arg)
         {
             ElcSubAssistant.Tracer.TraceError <IExchangePrincipal, MailboxSession, DataSourceOperationException>((long)mailboxDataForTags.MailboxSession.GetHashCode(), "{0}: Failed to connect to the the archive mailbox : {1}.\nError:\n{2}", mailboxDataForTags.MailboxSession.MailboxOwner, mailboxDataForTags.MailboxSession, arg);
         }
         catch (ObjectNotFoundException arg2)
         {
             ElcSubAssistant.Tracer.TraceDebug <IExchangePrincipal, ObjectNotFoundException>((long)mailboxDataForTags.MailboxSession.GetHashCode(), "{0}: Problems opening the archive.{1}", mailboxDataForTags.MailboxSession.MailboxOwner, arg2);
         }
         catch (StorageTransientException arg3)
         {
             ElcSubAssistant.Tracer.TraceWarning <IExchangePrincipal, MailboxSession, StorageTransientException>((long)mailboxDataForTags.MailboxSession.GetHashCode(), "{0}: Failed to connect to the the archive mailbox : {1}.\nError:\n{2}", mailboxDataForTags.MailboxSession.MailboxOwner, mailboxDataForTags.MailboxSession, arg3);
         }
         catch (StoragePermanentException arg4)
         {
             ElcSubAssistant.Tracer.TraceError <IExchangePrincipal, MailboxSession, StoragePermanentException>((long)mailboxDataForTags.MailboxSession.GetHashCode(), "{0}: Failed to connect to the the archive mailbox : {1}.\nError:\n{2}", mailboxDataForTags.MailboxSession.MailboxOwner, mailboxDataForTags.MailboxSession, arg4);
         }
     }
 }
Esempio n. 3
0
        // Token: 0x060003BC RID: 956 RVA: 0x0001A6EC File Offset: 0x000188EC
        private void InvokeInternal(MailboxSession mailboxSession, MailboxDataForTags mailboxDataForTags)
        {
            if (mailboxSession.MailboxOwner.RecipientType == RecipientType.MailUser && !this.FaiExists(mailboxSession))
            {
                ElcSubAssistant.Tracer.TraceDebug <ElcTagSubAssistant, string>((long)this.GetHashCode(), "{0}: FAI doesn't exist for archive mailbox: {1}. Skip it.", this, mailboxSession.MailboxOwner.MailboxInfo.DisplayName);
                return;
            }
            if (!this.CheckForPolicy(mailboxDataForTags))
            {
                if (mailboxDataForTags.LitigationHoldEnabled || mailboxDataForTags.SuspendExpiration)
                {
                    ElcUserTagInformation elcUserTagInformation = (ElcUserTagInformation)mailboxDataForTags.ElcUserInformation;
                    elcUserTagInformation.EnsureUserConfigurationIsValid();
                    elcUserTagInformation.SaveConfigItem(mailboxDataForTags.ArchiveProcessor);
                }
                return;
            }
            bool flag = this.tagProvisioner.Invoke(mailboxDataForTags);

            if (flag)
            {
                this.MapPolicyForArchive(mailboxDataForTags);
                this.tagEnforcerManager.Invoke(mailboxDataForTags);
            }
            this.TrainForAutoTagging(mailboxDataForTags);
        }
Esempio n. 4
0
 // Token: 0x060005C4 RID: 1476 RVA: 0x0002B94E File Offset: 0x00029B4E
 internal DiscoveryHoldEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
     this.AllInPlaceHoldConfiguration = base.MailboxDataForTags.ElcUserInformation.InPlaceHoldConfiguration;
     if (this.AllInPlaceHoldConfiguration == null)
     {
         this.AllInPlaceHoldConfiguration = new List <InPlaceHoldConfiguration>();
     }
 }
 // Token: 0x06000429 RID: 1065 RVA: 0x0001DAF7 File Offset: 0x0001BCF7
 internal PropertySynchronizerBase(MailboxDataForTags mailboxDataForTags, ElcTagSubAssistant elcAssistant)
 {
     this.MailboxDataForTags    = mailboxDataForTags;
     this.ElcAssistant          = elcAssistant;
     this.ElcUserTagInformation = (ElcUserTagInformation)mailboxDataForTags.ElcUserInformation;
     this.PropertiesToBeDeleted = new List <PropertyDefinition>();
     this.PropertiesToBeUpdated = new PropertiesToBeUpdated();
 }
Esempio n. 6
0
 // Token: 0x06000648 RID: 1608 RVA: 0x00030511 File Offset: 0x0002E711
 public AuditFolderStrategy(MailboxDataForTags mailboxDataForTags, Trace tracer)
 {
     if (mailboxDataForTags == null)
     {
         throw new ArgumentNullException("mailboxDataForTags");
     }
     this.MailboxDataForTags = mailboxDataForTags;
     this.Tracer             = tracer;
 }
Esempio n. 7
0
        // Token: 0x0600069F RID: 1695 RVA: 0x000328B8 File Offset: 0x00030AB8
        internal EHAHiddenFolderCleanupEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
        {
            object obj = Globals.ReadRegKey(ElcGlobals.ParameterRegistryKeyPath, ElcGlobals.EHAHiddenFolderCleanupBatchSizeForELC);

            if (obj is int)
            {
                this.maxItemsToDeleteInOneCycle = (int)obj;
            }
        }
        // Token: 0x060003C7 RID: 967 RVA: 0x0001AB90 File Offset: 0x00018D90
        internal ExpirationTagEnforcer(MailboxDataForTags mailboxDataForTags, ElcTagSubAssistant elcTagSubAssistant) : base(mailboxDataForTags, elcTagSubAssistant)
        {
            this.tagExpirationExecutor = new TagExpirationExecutor(mailboxDataForTags, elcTagSubAssistant);
            StoreObjectId defaultFolderId = mailboxDataForTags.MailboxSession.GetDefaultFolderId(DefaultFolderType.DeletedItems);

            if (defaultFolderId != null)
            {
                this.deletedItemsId = defaultFolderId.ProviderLevelItemId;
            }
            this.isEhaCustomer = mailboxDataForTags.ElcUserInformation.ProcessEhaMigratedMessages;
        }
Esempio n. 9
0
        // Token: 0x060003C3 RID: 963 RVA: 0x0001A88C File Offset: 0x00018A8C
        private bool CheckForPolicy(MailboxDataForTags mailboxDataForTags)
        {
            bool policyExists = mailboxDataForTags.ElcUserTagInformation.PolicyExists;

            if (!policyExists)
            {
                ElcSubAssistant.Tracer.TraceDebug <ElcTagSubAssistant, IExchangePrincipal>((long)this.GetHashCode(), "{0}: User '{1}' is not linked to any MRM policy.", this, mailboxDataForTags.MailboxSession.MailboxOwner);
                mailboxDataForTags.ElcUserTagInformation.DeleteConfigMessage(mailboxDataForTags.ArchiveProcessor);
            }
            ElcSubAssistant.Tracer.TraceDebug <ElcTagSubAssistant, IExchangePrincipal, bool>((long)this.GetHashCode(), "{0}: User: '******'. Policy exists: {2}.", this, mailboxDataForTags.MailboxSession.MailboxOwner, policyExists);
            return(policyExists);
        }
        // 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();
            }
        }
Esempio n. 11
0
        // Token: 0x060003BB RID: 955 RVA: 0x0001A6AC File Offset: 0x000188AC
        internal void Invoke(MailboxSession mailboxSession, MailboxDataForTags mailboxDataForTags)
        {
            Stopwatch stopwatch = Stopwatch.StartNew();

            try
            {
                this.InvokeInternal(mailboxSession, mailboxDataForTags);
            }
            finally
            {
                mailboxDataForTags.StatisticsLogEntry.TagSubAssistantProcessingTime = stopwatch.ElapsedMilliseconds;
            }
        }
        // Token: 0x060003F5 RID: 1013 RVA: 0x0001C758 File Offset: 0x0001A958
        internal bool Invoke(MailboxDataForTags mailboxDataForTags)
        {
            Stopwatch stopwatch = Stopwatch.StartNew();
            bool      result;

            try
            {
                result = this.InvokeInternal(mailboxDataForTags);
            }
            finally
            {
                mailboxDataForTags.StatisticsLogEntry.TagProvisionerProcessingTime = stopwatch.ElapsedMilliseconds;
            }
            return(result);
        }
Esempio n. 13
0
 // Token: 0x060003C4 RID: 964 RVA: 0x0001A900 File Offset: 0x00018B00
 private void TrainForAutoTagging(MailboxDataForTags mailboxDataForTags)
 {
     try
     {
         if (mailboxDataForTags.PersonalTagDeleted)
         {
             ElcSubAssistant.Tracer.TraceDebug <ElcTagSubAssistant, IExchangePrincipal>((long)this.GetHashCode(), "{0}: Will force a batch train for User '{1}' since a personal tag has been deleted.", this, mailboxDataForTags.MailboxSession.MailboxOwner);
         }
         else
         {
             ElcSubAssistant.Tracer.TraceDebug <ElcTagSubAssistant, IExchangePrincipal>((long)this.GetHashCode(), "{0}: Will batch train if necessary for User '{1}'.", this, mailboxDataForTags.MailboxSession.MailboxOwner);
         }
     }
     catch (IWShutdownException)
     {
         base.ThrowIfShuttingDown(mailboxDataForTags.MailboxSession.MailboxOwner);
     }
 }
Esempio n. 14
0
 // Token: 0x0600048A RID: 1162 RVA: 0x000203F8 File Offset: 0x0001E5F8
 internal ItemPropertySynchronizer(MailboxDataForTags mailboxDataForTags, ElcTagSubAssistant elcAssistant, Folder folder, Guid?inheritedArchiveGuid, object[] folderProperties) : base(mailboxDataForTags, elcAssistant)
 {
     base.Folder               = folder;
     base.FolderProperties     = folderProperties;
     this.inheritedArchiveGuid = inheritedArchiveGuid;
     if (folder.Id.ObjectId.Equals(base.ElcUserTagInformation.MailboxSession.GetDefaultFolderId(DefaultFolderType.DeletedItems)))
     {
         this.folderType = DefaultFolderType.DeletedItems;
         return;
     }
     if (ObjectClass.IsCalendarFolder(folder.ClassName))
     {
         this.folderType = DefaultFolderType.Calendar;
         return;
     }
     if (ObjectClass.IsTaskFolder(folder.ClassName))
     {
         this.folderType = DefaultFolderType.Tasks;
     }
 }
Esempio n. 15
0
 // Token: 0x0600043E RID: 1086 RVA: 0x0001DCBC File Offset: 0x0001BEBC
 internal FolderPropertySynchronizer(MailboxDataForTags mailboxDataForTags, ElcTagSubAssistant elcAssistant, Dictionary <StoreObjectId, Synchronizer.FolderPropertySet> parentFolderIdToPropertyMap, List <object[]> entireFolderList, int indexInTree) : base(mailboxDataForTags, elcAssistant)
 {
     this.entireFolderList            = entireFolderList;
     this.indexInTree                 = indexInTree;
     base.FolderProperties            = entireFolderList[indexInTree];
     this.parentFolderIdToPropertyMap = parentFolderIdToPropertyMap;
     this.originalTagGuid             = ElcMailboxHelper.GetGuidFromBytes(base.FolderProperties[2], new Guid?(Guid.Empty), true, base.FolderDisplayName).Value;
     this.originalRetentionFlags      = RetentionAndArchiveFlags.None;
     if (base.FolderProperties[3] is int)
     {
         this.originalRetentionFlags = (RetentionAndArchiveFlags)base.FolderProperties[3];
         this.explicitRetention      = FlagsMan.IsExplicitSet(this.originalRetentionFlags);
         this.explicitArchive        = FlagsMan.IsExplicitArchiveSet(this.originalRetentionFlags);
     }
     this.originalRetentionPeriod = -1;
     if (base.FolderProperties[4] is int)
     {
         this.originalRetentionPeriod = (int)base.FolderProperties[4];
     }
 }
Esempio n. 16
0
 // Token: 0x060003EF RID: 1007 RVA: 0x0001C5F4 File Offset: 0x0001A7F4
 private void InvokeInternal(MailboxDataForTags mailboxDataForTags)
 {
     TagEnforcerManager.Tracer.TraceDebug((long)this.GetHashCode(), "{0}: Invoke called.", new object[]
     {
         TraceContext.Get()
     });
     TagEnforcerManager.TracerPfd.TracePfd <int, object>((long)this.GetHashCode(), "PFD IWE {0} {1}: Invoke called.", 32023, TraceContext.Get());
     TagEnforcerBase[] array = new TagEnforcerBase[]
     {
         new AutocopyTagEnforcer(mailboxDataForTags, this.elcTagSubAssistant),
         new ExpirationTagEnforcer(mailboxDataForTags, this.elcTagSubAssistant)
     };
     foreach (TagEnforcerBase tagEnforcerBase in array)
     {
         if (tagEnforcerBase.IsEnabled())
         {
             tagEnforcerBase.Invoke();
         }
     }
 }
        // Token: 0x060005FD RID: 1533 RVA: 0x0002D9C4 File Offset: 0x0002BBC4
        internal HoldCleanupEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
        {
            object obj = Globals.ReadRegKey(ElcGlobals.ParameterRegistryKeyPath, ElcGlobals.HoldCleanupBatchSizeForELC);

            if (obj is int)
            {
                this.batchSizeForELC = (int)obj;
            }
            obj = Globals.ReadRegKey(ElcGlobals.ParameterRegistryKeyPath, ElcGlobals.HoldCleanupEnabledForELC);
            if (obj is string && !bool.TryParse((string)obj, out this.enabledForELC))
            {
                this.enabledForELC = true;
                HoldCleanupEnforcer.Tracer.TraceWarning <HoldCleanupEnforcer, string>((long)this.GetHashCode(), "{0}: {1} override provided but the value is in the wrong format.  Defaulting to true.", this, ElcGlobals.HoldCleanupEnabledForELC);
            }
            obj = Globals.ReadRegKey(ElcGlobals.ParameterRegistryKeyPath, ElcGlobals.HoldCleanupLogOnly);
            if (obj is string && !bool.TryParse((string)obj, out this.logOnly))
            {
                this.logOnly = false;
                HoldCleanupEnforcer.Tracer.TraceWarning <HoldCleanupEnforcer, string>((long)this.GetHashCode(), "{0}: {1} override provided but the value is in the wrong format.  Defaulting to false.", this, ElcGlobals.HoldCleanupLogOnly);
            }
        }
Esempio n. 18
0
 // Token: 0x060003AB RID: 939 RVA: 0x0001A5A6 File Offset: 0x000187A6
 internal TagEnforcerBase(MailboxDataForTags mailboxDataForTags, ElcTagSubAssistant elcTagSubAssistant)
 {
     this.MailboxDataForTags = mailboxDataForTags;
     this.ElcTagSubAssistant = elcTagSubAssistant;
 }
 // Token: 0x060006AC RID: 1708 RVA: 0x000330AB File Offset: 0x000312AB
 internal MigrateToArchiveEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
 }
 // Token: 0x06000688 RID: 1672 RVA: 0x00031F0A File Offset: 0x0003010A
 internal EHAMigratedMessageMoveEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
 }
Esempio n. 21
0
 // 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: 0x060005D7 RID: 1495 RVA: 0x0002C594 File Offset: 0x0002A794
 internal DumpsterExpirationEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
 }
Esempio n. 23
0
 // Token: 0x06000652 RID: 1618 RVA: 0x00030568 File Offset: 0x0002E768
 public MailboxAuditFolderStrategy(MailboxDataForTags mailboxDataForTags, Trace tracer) : base(mailboxDataForTags, tracer)
 {
 }
 // Token: 0x060003B3 RID: 947 RVA: 0x0001A5E6 File Offset: 0x000187E6
 internal AutocopyTagEnforcer(MailboxDataForTags mailboxDataForTags, ElcTagSubAssistant elcTagSubAssistant) : base(mailboxDataForTags, elcTagSubAssistant)
 {
 }
Esempio n. 25
0
 // Token: 0x0600067B RID: 1659 RVA: 0x00031700 File Offset: 0x0002F900
 internal EHAQuotaWarningEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
 }
Esempio n. 26
0
 // Token: 0x0600065B RID: 1627 RVA: 0x00030730 File Offset: 0x0002E930
 internal AuditQuotaEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
 }
Esempio n. 27
0
 // Token: 0x0600039F RID: 927 RVA: 0x000197AC File Offset: 0x000179AC
 public ADChangeDetector(MailboxDataForTags mailboxDataForTags)
 {
     this.mailboxDataForTags = mailboxDataForTags;
     this.elcUserInfo        = (ElcUserTagInformation)this.mailboxDataForTags.ElcUserInformation;
 }
 // Token: 0x06000671 RID: 1649 RVA: 0x000312D8 File Offset: 0x0002F4D8
 internal CalendarLogExpirationEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
 }
 // Token: 0x060005B2 RID: 1458 RVA: 0x0002B794 File Offset: 0x00029994
 internal SysCleanupEnforcerBase(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant)
 {
     this.MailboxDataForTags     = mailboxDataForTags;
     this.SysCleanupSubAssistant = sysCleanupSubAssistant;
     this.TagExpirationExecutor  = new TagExpirationExecutor(mailboxDataForTags, sysCleanupSubAssistant);
 }
 // Token: 0x0600061A RID: 1562 RVA: 0x0002ED84 File Offset: 0x0002CF84
 internal SupplementExpirationEnforcer(MailboxDataForTags mailboxDataForTags, SysCleanupSubAssistant sysCleanupSubAssistant) : base(mailboxDataForTags, sysCleanupSubAssistant)
 {
 }