private void ValidateRecipientsForRemove() { base.WriteVerbose(Strings.VerboseValidatingRemoveExchangeBinding); ExchangeValidator exchangeValidator = this.CreateExchangeValidator(false, "Validating RemoveExchangeBinding", 0); this.InternalRemoveExchangeBindings = exchangeValidator.ValidateRecipients(this.RemoveExchangeBinding); }
private MultiValuedProperty <BindingMetadata> ValidateExchangeBindings(IEnumerable <string> bindings, int maxCount) { base.WriteVerbose(Strings.VerboseValidatingExchangeBinding); MultiValuedProperty <BindingMetadata> multiValuedProperty = new MultiValuedProperty <BindingMetadata>(); if (bindings.Any <string>()) { List <string> list = (from binding in bindings where SourceValidator.IsWideScope(binding) select binding).ToList <string>(); if (list.Any <string>()) { throw new ExCannotContainWideScopeBindingsException(string.Join(", ", list)); } this.ExchangeBinding = NewCompliancePolicyBase.ValidateWideScopeBinding(this.ExchangeBinding, "All", "All", new BindingCannotCombineAllWithIndividualBindingsException("Exchange")); ExchangeValidator exchangeValidator = this.CreateExchangeValidator(true, "Validating ExchangeBinding"); multiValuedProperty = exchangeValidator.ValidateRecipients(this.ExchangeBinding); if (this.ExchangeBinding.Count <string>() > 1000) { throw new BindingCountExceedsLimitException("Exchange", 1000); } } NewCompliancePolicyBase.SetBindingsSubWorkload(multiValuedProperty, Workload.Exchange); return(multiValuedProperty); }
private void ExpandGroupsAndValidateRecipientsForAdd() { base.WriteVerbose(Strings.VerboseValidatingAddExchangeBinding); int existingRecipientsCount = SetCompliancePolicyBase.CalculateBindingCountAfterRemove(this.PsPolicyPresentationObject.ExchangeBinding, this.InternalRemoveExchangeBindings); ExchangeValidator exchangeValidator = this.CreateExchangeValidator(true, "Validating AddExchangeBinding", existingRecipientsCount); this.InternalAddExchangeBindings = exchangeValidator.ValidateRecipients(this.AddExchangeBinding); }