コード例 #1
0
        internal static QueryFilter GetFindFilterForCannedAddressLists(string name, QueryFilter recipientFilter)
        {
            string propertyValue = LdapFilterBuilder.LdapFilterFromQueryFilter(recipientFilter);

            return(new OrFilter(new QueryFilter[]
            {
                new ComparisonFilter(ComparisonOperator.Equal, AddressBookBaseSchema.LdapRecipientFilter, propertyValue),
                CannedAddressListsFilterHelper.GetFindFilterForOlderAddressList(name)
            }));
        }
コード例 #2
0
        internal static Dictionary <QueryFilter, QueryFilter> GetFindFiltersForCannedAddressLists()
        {
            Dictionary <QueryFilter, QueryFilter> dictionary = new Dictionary <QueryFilter, QueryFilter>();

            foreach (KeyValuePair <string, QueryFilter> keyValuePair in CannedAddressListsFilterHelper.RecipientFiltersOfAddressList)
            {
                string      key   = keyValuePair.Key;
                QueryFilter value = keyValuePair.Value;
                dictionary.Add(CannedAddressListsFilterHelper.GetFindFilterForCannedAddressLists(key, value), value);
            }
            return(dictionary);
        }
コード例 #3
0
        private AddressBookBase[] FindAddressList(string name, QueryFilter recipientFilter)
        {
            ADObjectId            id = this.DataObject.Id;
            QueryFilter           findFilterForCannedAddressLists = CannedAddressListsFilterHelper.GetFindFilterForCannedAddressLists(name, recipientFilter);
            IConfigurationSession configurationSession            = (IConfigurationSession)base.DataSession;

            base.WriteVerbose(TaskVerboseStringHelper.GetFindDataObjectsVerboseString(configurationSession, typeof(AddressBookBase), findFilterForCannedAddressLists, id, false));
            AddressBookBase[] result;
            try
            {
                AddressBookBase[] array = configurationSession.Find <AddressBookBase>(id, QueryScope.SubTree, findFilterForCannedAddressLists, null, 1);
                result = array;
            }
            finally
            {
                base.WriteVerbose(TaskVerboseStringHelper.GetSourceVerboseString(configurationSession));
            }
            return(result);
        }
コード例 #4
0
 protected override bool IsKnownException(Exception exception)
 {
     return(base.IsKnownException(exception) || CannedAddressListsFilterHelper.IsKnownException(exception));
 }
コード例 #5
0
 static CannedAddressListsFilterHelper()
 {
     CannedAddressListsFilterHelper.DefaultAllModernGroupsFilter = CannedAddressListsFilterHelper.CompleteRecipientFilter(new ComparisonFilter(ComparisonOperator.Equal, ADRecipientSchema.RecipientTypeDetailsValue, RecipientTypeDetails.GroupMailbox));
     CannedAddressListsFilterHelper.InitializeOlderLdapFilter();
     CannedAddressListsFilterHelper.InitializeRecipientFilter();
 }