Esempio n. 1
0
        public void TestSerializationOfLoginRemoved()
        {
            var evt = new LoginRemoved("LOGINPROVIDER", "PROVIDERKEY");

            var bytes    = LZ4MessagePackSerializer.Serialize <IEvent>(evt, AspnetIdentityResolver.Instance);
            var eventChk = LZ4MessagePackSerializer.Deserialize <IEvent>(bytes, AspnetIdentityResolver.Instance) as LoginRemoved;

            Assert.Equal(evt.LoginProvider, eventChk.LoginProvider);
            Assert.Equal(evt.ProviderKey, eventChk.ProviderKey);
        }
Esempio n. 2
0
        private void HandleEvent(IActorRef _, LoginRemoved evt)
        {
            var logins = user.Logins.Where(x => x.LoginProvider.Equals(evt.LoginProvider) && x.ProviderKey.Equals(evt.ProviderKey)).ToList();

            foreach (var login in logins)
            {
                user.Logins.Remove(login);
            }
            if (!inSync)
            {
                return;
            }

            coordinator.Tell(new ActorMessages.UserCoordinator.NotifyUserEvent(new ActorMessages.UserCoordinator.UserLoginRemoved <TKey>(userId, new ImmutableUserLoginInfo(evt.LoginProvider, evt.ProviderKey, string.Empty))));
        }
Esempio n. 3
0
        private bool TestCommand(RemoveLogin evt, out IEvent e)
        {
            e = null;
            if (user == null)
            {
                return(false);
            }

            if (user.Logins == null)
            {
                return(true);
            }

            var login = user.Logins.FirstOrDefault(x => x.LoginProvider.Equals(evt.LoginProvider) && x.ProviderKey.Equals(evt.ProviderKey));

            if (login != default(ImmutableUserLoginInfo))
            {
                e = new LoginRemoved(evt.LoginProvider, evt.ProviderKey);
            }

            return(true);
        }