// Token: 0x06000DDF RID: 3551 RVA: 0x00040AB3 File Offset: 0x0003ECB3
 private void ConvertAnrFilter(AmbiguousNameResolutionFilter anrFilter)
 {
     this.IncrementFilterSize();
     this.ldapFilter.Append("(anr=");
     ADValueConvertor.EscapeAndAppendString(anrFilter.ValueToMatch, this.ldapFilter);
     this.ldapFilter.Append(")");
 }
        private IEnumerable <UnifiedGroupParticipant> GetMembersInternal(bool sortByDisplayName, int sizeLimit, string anrToMatch = null)
        {
            QueryFilter anrFilter = null;

            if (!string.IsNullOrEmpty(anrToMatch))
            {
                anrToMatch = anrToMatch.Trim();
                if (anrToMatch.Length == 1)
                {
                    anrFilter = QueryFilter.OrTogether(new QueryFilter[]
                    {
                        new TextFilter(ADUserSchema.FirstName, anrToMatch, MatchOptions.Prefix, MatchFlags.IgnoreCase),
                        new TextFilter(ADUserSchema.LastName, anrToMatch, MatchOptions.Prefix, MatchFlags.IgnoreCase)
                    });
                }
                else
                {
                    anrFilter = new AmbiguousNameResolutionFilter(anrToMatch);
                }
            }
            ADPagedReader <ADRawEntry> pagedReader = UnifiedGroupADAccessLayer.GetAllGroupMembers(this.ReadOnlyAdSession, this.groupMailbox.Id, UnifiedGroupParticipant.DefaultMemberProperties, sortByDisplayName ? new SortBy(ADRecipientSchema.DisplayName, SortOrder.Ascending) : null, anrFilter, 0);
            HashSet <Guid>             ownerSet    = new HashSet <Guid>();

            foreach (ADObjectId adobjectId in this.groupMailbox.Owners)
            {
                ownerSet.Add(adobjectId.ObjectGuid);
            }
            int counter = 0;

            foreach (ADRawEntry item in pagedReader)
            {
                if (sizeLimit > 0)
                {
                    counter++;
                    if (counter > sizeLimit)
                    {
                        break;
                    }
                }
                yield return(this.SetOwnership(UnifiedGroupParticipant.CreateFromADRawEntry(item), ownerSet));
            }
            yield break;
        }
        // Token: 0x06000DD5 RID: 3541 RVA: 0x0003FC84 File Offset: 0x0003DE84
        private void BuildLdapFilterInternal(QueryFilter queryFilter, QueryFilter parentQueryFilter)
        {
            SinglePropertyFilter singlePropertyFilter = queryFilter as SinglePropertyFilter;

            if (singlePropertyFilter != null)
            {
                this.ConvertSinglePropertyFilter(singlePropertyFilter, parentQueryFilter);
                return;
            }
            NotFilter notFilter = queryFilter as NotFilter;

            if (notFilter != null)
            {
                this.ConvertNotFilter(notFilter);
                return;
            }
            AmbiguousNameResolutionFilter ambiguousNameResolutionFilter = queryFilter as AmbiguousNameResolutionFilter;

            if (ambiguousNameResolutionFilter != null)
            {
                this.ConvertAnrFilter(ambiguousNameResolutionFilter);
                return;
            }
            CompositeFilter compositeFilter = queryFilter as CompositeFilter;

            if (compositeFilter != null)
            {
                this.ConvertCompositeFilter(compositeFilter, parentQueryFilter);
                return;
            }
            CustomLdapFilter customLdapFilter = queryFilter as CustomLdapFilter;

            if (customLdapFilter != null)
            {
                this.ldapFilter.Append("(");
                this.ldapFilter.Append(customLdapFilter.LdapFilter);
                this.ldapFilter.Append(")");
                return;
            }
            throw new ADFilterException(DirectoryStrings.ExceptionUnsupportedFilter(queryFilter.GetType().ToString()));
        }