private static void UpdateUserConfiguration(StoreRetentionPolicyTagHelper tagHelper)
		{
			byte[] xmlData = MrmFaiFormatter.Serialize(tagHelper.TagData, tagHelper.defaultArchiveTagData, tagHelper.deletedTags, tagHelper.retentionHoldData, tagHelper.fullCrawlRequired, tagHelper.exchangePrincipal);
			UpdateUserConfigurationType updateUserConfiguration = new UpdateUserConfigurationType
			{
				UserConfiguration = new UserConfigurationType
				{
					UserConfigurationName = new UserConfigurationNameType
					{
						Name = "MRM",
						Item = new DistinguishedFolderIdType
						{
							Id = DistinguishedFolderIdNameType.inbox
						}
					},
					XmlData = xmlData
				}
			};
			StoreRetentionPolicyTagHelper.CallEwsWithRetries(() => tagHelper.serviceBinding.UpdateUserConfiguration(updateUserConfiguration), delegate(ResponseMessageType responseMessage, int messageIndex)
			{
				if (responseMessage.ResponseClass == ResponseClassType.Success)
				{
					ExTraceGlobals.ELCTracer.TraceDebug(0L, "Successfully updated MRM user configuration");
					return true;
				}
				ExTraceGlobals.ELCTracer.TraceDebug(0L, "MRM user configuration was not updated");
				return false;
			}, tagHelper);
		}
예제 #2
0
        // Token: 0x06000579 RID: 1401 RVA: 0x00029B30 File Offset: 0x00027D30
        public void UpdateMrmConfiguration(BaseFolderIdType folderId, byte[] userConfiguration)
        {
            UpdateUserConfigurationType updateUserConfiguration = new UpdateUserConfigurationType
            {
                UserConfiguration = new UserConfigurationType
                {
                    UserConfigurationName = new UserConfigurationNameType
                    {
                        Name = "MRM",
                        Item = folderId
                    },
                    XmlData = userConfiguration
                }
            };

            this.CallService(() => this.ServiceBinding.UpdateUserConfiguration(updateUserConfiguration), delegate(ResponseMessageType responseMessage, int messageIndex)
            {
                if (responseMessage.ResponseClass == ResponseClassType.Error)
                {
                    throw new ElcEwsException(ElcEwsErrorType.FailedToUpdateUserConfiguration, responseMessage.ResponseCode.ToString() + " : " + responseMessage.MessageText);
                }
                return(false);
            }, (Exception exception) => ElcEwsClient.WrapElcEwsException(ElcEwsErrorType.FailedToUpdateUserConfiguration, exception));
        }