public async Task SetPhoneNumberConfirmedAsync(TUser user, bool confirmed) { if (user == null) { throw new ArgumentNullException("user"); } if (user.PhoneNumber == null) { throw new InvalidOperationException("Cannot set the confirmation status of the phone number because user doesn't have a phone number."); } RavenUserPhoneNumber userPhoneNumber = await GetUserPhoneNumberAsync(user.Email).ConfigureAwait(false); if (userPhoneNumber == null) { throw new InvalidOperationException("Cannot set the confirmation status of the phone number because user doesn't have a phone number as RavenUserPhoneNumber document."); } if (confirmed) { userPhoneNumber.SetConfirmed(); } else { userPhoneNumber.SetUnconfirmed(); } }
private async Task <ConfirmationRecord> GetUserPhoneNumberConfirmationAsync(string phoneNumber) { RavenUserPhoneNumber userPhoneNumber = await GetUserPhoneNumberAsync(phoneNumber).ConfigureAwait(false); return((userPhoneNumber != null) ? userPhoneNumber.ConfirmationRecord : null); }
public Task SetPhoneNumberAsync(TUser user, string phoneNumber) { if (user == null) { throw new ArgumentNullException("user"); } if (phoneNumber == null) { throw new ArgumentNullException("phoneNumber"); } user.SetPhoneNumber(phoneNumber); RavenUserPhoneNumber ravenUserPhoneNumber = new RavenUserPhoneNumber(phoneNumber, user.Id); return(_documentSession.StoreAsync(ravenUserPhoneNumber)); }
private Task <RavenUserPhoneNumber> GetUserPhoneNumberAsync(string phoneNumber) { string keyToLookFor = RavenUserPhoneNumber.GenerateKey(phoneNumber); return(_documentSession.LoadAsync <RavenUserPhoneNumber>(keyToLookFor)); }