Ejemplo n.º 1
0
 public static void ResolveOneRecipient(string name, UserContext userContext, List <RecipientAddress> addresses, AnrManager.Options options)
 {
     if (name == null)
     {
         throw new ArgumentNullException("name");
     }
     if (userContext == null)
     {
         throw new ArgumentNullException("userContext");
     }
     if (addresses == null)
     {
         throw new ArgumentNullException("addresses");
     }
     AnrManager.NameParsingResult parsingResult = AnrManager.ParseNameBeforeAnr(name, options);
     if (!options.ResolveOnlyFromAddressBook && userContext.IsFeatureEnabled(Feature.Contacts))
     {
         AnrManager.GetNamesByAnrFromContacts(userContext, parsingResult, options, addresses);
     }
     AnrManager.GetNamesByAnrFromAD(userContext, parsingResult, options, addresses);
     if (AnrManager.IsMobileNumberInput(parsingResult, options) && addresses.Count > 0)
     {
         bool flag = false;
         foreach (RecipientAddress address in addresses)
         {
             if (AnrManager.IsMobileAddressExactMatch(parsingResult, address))
             {
                 flag = true;
                 break;
             }
         }
         if (!flag)
         {
             RecipientAddress recipientAddress = AnrManager.ResolveAnrStringToOneOffEmail(name, options);
             if (recipientAddress != null)
             {
                 addresses.Add(recipientAddress);
             }
         }
     }
     addresses.Sort();
 }
Ejemplo n.º 2
0
 public static RecipientAddress ResolveAnrStringToOneOffEmail(string name)
 {
     return(AnrManager.ResolveAnrStringToOneOffEmail(name, new AnrManager.Options()));
 }
Ejemplo n.º 3
0
 public static RecipientAddress ResolveAnrString(string name, AnrManager.Options options, UserContext userContext)
 {
     if (string.IsNullOrEmpty(name))
     {
         throw new ArgumentNullException("name");
     }
     if (userContext == null)
     {
         throw new ArgumentNullException("userContext");
     }
     if (Globals.ArePerfCountersEnabled)
     {
         OwaSingleCounters.NamesChecked.Increment();
     }
     AnrManager.NameParsingResult parsingResult = AnrManager.ParseNameBeforeAnr(name, options);
     if (options.ResolveContactsFirst)
     {
         return(AnrManager.ResolveAnrStringFromContacts(userContext, parsingResult, options, () => AnrManager.ResolveAnrStringFromAD(userContext, parsingResult, options, () => AnrManager.ResolveAnrStringToOneOffEmail(name, options))));
     }
     return(AnrManager.ResolveAnrStringFromAD(userContext, parsingResult, options, () => AnrManager.ResolveAnrStringFromContacts(userContext, parsingResult, options, () => AnrManager.ResolveAnrStringToOneOffEmail(name, options))));
 }