Exemplo n.º 1
0
        public async Task <UserDefinition> FindByLoginAsync(string loginProvider, string providerKey, CancellationToken cancellationToken)
        {
            using (UserLoginInfoDataProvider logInfoDP = new DataProvider.UserLoginInfoDataProvider(CurrentSiteIdentity)) {
                UserDefinition user = await logInfoDP.GetItemAsync(loginProvider, providerKey);

                return(user);
            }
        }
Exemplo n.º 2
0
        // IUserLoginStore
        // IUserLoginStore
        // IUserLoginStore
        public async Task AddLoginAsync(UserDefinition user, UserLoginInfo login, CancellationToken cancellationToken)
        {
            using (UserLoginInfoDataProvider logInfoDP = new DataProvider.UserLoginInfoDataProvider(CurrentSiteIdentity)) {
                await logInfoDP.AddItemAsync(user.UserId, login.LoginProvider, login.ProviderKey);
            }

            using (UserDefinitionDataProvider dataProvider = new UserDefinitionDataProvider(this.CurrentSiteIdentity)) {
                UpdateStatusEnum status = await dataProvider.UpdateItemAsync(user);

                switch (status)
                {
                case UpdateStatusEnum.RecordDeleted:
                    throw new Error(this.__ResStr("delUser", "Can't update user {0}, because the user has been deleted.", user.UserName));

                default:
                case UpdateStatusEnum.NewKeyExists:
                    throw new InternalError("Unexpected update status");

                case UpdateStatusEnum.OK:
                    break;
                }
            }
        }
Exemplo n.º 3
0
 public async Task RemoveLoginAsync(UserDefinition user, string loginProvider, string providerKey, CancellationToken cancellationToken)
 {
     using (UserLoginInfoDataProvider logInfoDP = new DataProvider.UserLoginInfoDataProvider(CurrentSiteIdentity)) {
         await logInfoDP.RemoveItemAsync(loginProvider, providerKey);
     }
 }