public bool TryCreate(IMailboxSession mailboxSession, MiniRecipient miniRecipient, out IConversationCreatorSidCalculator calculator) { calculator = null; if (!this.CanSetConversationCreatorProperty(mailboxSession)) { return(false); } if (miniRecipient != null && miniRecipient.GetContext(null) != null) { calculator = this.Create(mailboxSession, miniRecipient.GetContext(null)); } else { calculator = new LegacyConversationCreatorSidCalculator(mailboxSession); } return(true); }
public bool TryCreate(IMailboxSession mailboxSession, IExchangePrincipal exchangePrincipal, out IConversationCreatorSidCalculator calculator) { calculator = null; if (!this.CanSetConversationCreatorProperty(mailboxSession)) { return(false); } if (exchangePrincipal != null && exchangePrincipal.GetContext(null) != null) { calculator = this.Create(mailboxSession, exchangePrincipal.GetContext(null)); } else { calculator = new LegacyConversationCreatorSidCalculator(mailboxSession); } return(true); }