private void HandleEvent(UserLoginAdded <TKey> evt) { var(normalizedEmail, normalizedUser, logins, claims) = reverseLookup[evt.UserId]; var login = new ExternalLogin(evt.UserLoginInfo.LoginProvider, evt.UserLoginInfo.ProviderKey); logins.Add(login); existingLogins[login] = evt.UserId; }
public int Serialize(ref byte[] bytes, int offset, UserLoginAdded <TKey> value, IFormatterResolver formatterResolver) { var keyFormatter = formatterResolver.GetFormatter <TKey>(); var startOffset = offset; offset += keyFormatter.Serialize(ref bytes, offset, value.UserId, formatterResolver); offset += MessagePackBinary.WriteString(ref bytes, offset, value.UserLoginInfo.LoginProvider); offset += MessagePackBinary.WriteString(ref bytes, offset, value.UserLoginInfo.ProviderKey); offset += MessagePackBinary.WriteString(ref bytes, offset, value.UserLoginInfo.DisplayName); return(offset - startOffset); }
public void TestSerializationOfUserLoginAdded() { var userId = Guid.NewGuid(); var evt = new UserLoginAdded <Guid>(userId, new ImmutableUserLoginInfo("LOGINPROVIDER", "PROVIDERKEY", "DISPLAYNAME")); var bytes = LZ4MessagePackSerializer.Serialize <IEvent>(evt, AspnetIdentityResolver.Instance); var eventChk = LZ4MessagePackSerializer.Deserialize <IEvent>(bytes, AspnetIdentityResolver.Instance) as UserLoginAdded <Guid>; Assert.NotNull(eventChk); Assert.Equal(evt.UserId, eventChk.UserId); Assert.Equal(evt.UserLoginInfo.LoginProvider, eventChk.UserLoginInfo.LoginProvider); Assert.Equal(evt.UserLoginInfo.ProviderKey, eventChk.UserLoginInfo.ProviderKey); Assert.Equal(evt.UserLoginInfo.DisplayName, eventChk.UserLoginInfo.DisplayName); }
void When(UserLoginAdded evnt) { _users[evnt.UserId.ToString()].Apply(evnt); }
internal void Apply(UserLoginAdded evnt) { _logins.Add(evnt.LoginInfo); }