Exemplo n.º 1
0
        // Token: 0x06000442 RID: 1090 RVA: 0x0001DEA0 File Offset: 0x0001C0A0
        private void UpdateFolderProperties()
        {
            if (!(base.FolderProperties[0] is VersionedId))
            {
                PropertySynchronizerBase.Tracer.TraceError <FolderPropertySynchronizer>((long)this.GetHashCode(), "{0}: We could not get id of this folder.", this);
                throw new SkipException(Strings.descUnableToGetId("Folder:" + base.FolderDisplayName, base.ElcUserTagInformation.MailboxSession.MailboxOwner.ToString()));
            }
            Guid guid       = Guid.Empty;
            bool tagChanged = false;

            this.taggedByPersonalArchiveTag = false;
            this.taggedByPersonalExpiryTag  = false;
            this.taggedBySystemExpiryTag    = false;
            this.taggedByUncertainExpiryTag = false;
            DefaultFolderType?defaultFolderType = ElcMailboxHelper.GetDefaultFolderType(base.ElcUserTagInformation.MailboxSession, ((VersionedId)base.FolderProperties[0]).ObjectId);

            if (defaultFolderType != null)
            {
                guid = this.UpdateSystemFolder(defaultFolderType, out tagChanged);
            }
            else
            {
                guid = this.UpdatePersonalFolder(out tagChanged);
            }
            this.UpdateContentSettings(tagChanged, guid);
            this.UpdateArchiveSettings();
            this.UpdateRetentionFlags(guid);
            this.CommitChangesAlready();
        }