private bool MatchIMAddresses(IContactLinkingMatchProperties contact1, IContactLinkingMatchProperties contact2) { string text = this.RemoveSipPrefix(contact1.IMAddress); if (text != null && SmtpAddress.IsValidSmtpAddress(text)) { string s = this.RemoveSipPrefix(contact2.IMAddress); return(base.EqualsIgnoreCaseAndWhiteSpace(text, s)); } return(false); }
internal override ContactLinkingOperation Match(IContactLinkingMatchProperties contact1, IContactLinkingMatchProperties contact2) { if (base.MatchEmails(contact1, contact2)) { return(ContactLinkingOperation.AutoLinkViaEmailAddress); } if (this.MatchIMAddresses(contact1, contact2)) { return(ContactLinkingOperation.AutoLinkViaIMAddress); } return(ContactLinkingOperation.None); }
internal abstract ContactLinkingOperation Match(IContactLinkingMatchProperties contact1, IContactLinkingMatchProperties contact2);
protected bool MatchEmails(IContactLinkingMatchProperties contact1, IContactLinkingMatchProperties contact2) { return(contact1.EmailAddresses.Overlaps(contact2.EmailAddresses)); }