diff options
Diffstat (limited to 'plugins')
10 files changed, 29 insertions, 39 deletions
diff --git a/plugins/VNLib.Plugins.Essentials.Accounts.Admin/src/Model/UserContext.cs b/plugins/VNLib.Plugins.Essentials.Accounts.Admin/src/Model/UserContext.cs index adc7ffc..88b5566 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts.Admin/src/Model/UserContext.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts.Admin/src/Model/UserContext.cs @@ -1,5 +1,5 @@ /* -* Copyright (c) 2022 Vaughn Nugent +* Copyright (c) 2024 Vaughn Nugent * * Library: VNLib * Package: VNLib.Plugins.Essentials.Accounts.Admin @@ -28,7 +28,7 @@ using VNLib.Plugins.Extensions.Data; namespace VNLib.Plugins.Essentials.Accounts.Admin.Model { - internal class UserContext : TransactionalDbContext + internal class UserContext : DBContextBase { public DbSet<User> Users { get; set; } #nullable disable diff --git a/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs b/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs index 16114fe..1030c9b 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs @@ -1,5 +1,5 @@ /* -* Copyright (c) 2023 Vaughn Nugent +* Copyright (c) 2024 Vaughn Nugent * * Library: VNLib * Package: VNLib.Plugins.Essentials.Accounts.Registration @@ -220,7 +220,7 @@ namespace VNLib.Plugins.Essentials.Accounts.Registration.Endpoints Task delay = Task.Delay(200); //See if a user account already exists - using (IUser? user = await Users.GetUserFromEmailAsync(request.UserName!, entity.EventCancellation)) + using (IUser? user = await Users.GetUserFromUsernameAsync(request.UserName!, entity.EventCancellation)) { if (user != null) { diff --git a/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationContext.cs b/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationContext.cs index 3b50303..c19d163 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationContext.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationContext.cs @@ -1,5 +1,5 @@ /* -* Copyright (c) 2023 Vaughn Nugent +* Copyright (c) 2024 Vaughn Nugent * * Library: VNLib * Package: VNLib.Plugins.Essentials.Accounts.Registration @@ -30,7 +30,7 @@ using VNLib.Plugins.Essentials.Accounts.Registration.TokenRevocation; namespace VNLib.Plugins.Essentials.Accounts.Registration { - internal class RegistrationContext : TransactionalDbContext, IDbTableDefinition + internal class RegistrationContext : DBContextBase, IDbTableDefinition { public DbSet<RevokedToken> RevokedRegistrationTokens { get; set; } diff --git a/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs b/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs index 3a32db0..1a3e676 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs @@ -1,5 +1,5 @@ /* -* Copyright (c) 2023 Vaughn Nugent +* Copyright (c) 2024 Vaughn Nugent * * Library: VNLib * Package: VNLib.Plugins.Essentials.Accounts.Registration @@ -41,32 +41,30 @@ namespace VNLib.Plugins.Essentials.Accounts.Registration.TokenRevocation public async Task<bool> IsRevokedAsync(string token, CancellationToken cancellation) { await using RegistrationContext context = new (Options.Value); - await context.OpenTransactionAsync(cancellation); //Select any that match tokens bool any = await (from t in context.RevokedRegistrationTokens where t.Token == token - select t).AnyAsync(cancellation); + select t) + .AnyAsync(cancellation); - await context.CommitTransactionAsync(cancellation); + await context.SaveAndCloseAsync(true, cancellation); return any; } public async Task RevokeAsync(string token, CancellationToken cancellation) { await using RegistrationContext context = new (Options.Value); - await context.OpenTransactionAsync(cancellation); //Add to table - context.RevokedRegistrationTokens.Add(new RevokedToken() + context.RevokedRegistrationTokens.Add(new RevokedToken { Created = DateTime.UtcNow, Token = token }); //Save changes and commit transaction - await context.SaveChangesAsync(cancellation); - await context.CommitTransactionAsync(cancellation); + await context.SaveAndCloseAsync(true, cancellation); } /// <summary> @@ -80,21 +78,15 @@ namespace VNLib.Plugins.Essentials.Accounts.Registration.TokenRevocation DateTime expiredBefore = DateTime.UtcNow.Subtract(validFor); await using RegistrationContext context = new (Options.Value); - await context.OpenTransactionAsync(cancellation); //Select any that match tokens RevokedToken[] expired = await context.RevokedRegistrationTokens.Where(t => t.Created < expiredBefore) .Select(static t => t) .ToArrayAsync(cancellation); - context.RevokedRegistrationTokens.RemoveRange(expired); - ERRNO count =await context.SaveChangesAsync(cancellation); - - await context.CommitTransactionAsync(cancellation); - - return count; + return await context.SaveAndCloseAsync(true, cancellation); } } }
\ No newline at end of file diff --git a/plugins/VNLib.Plugins.Essentials.Accounts/src/AccountsEntryPoint.cs b/plugins/VNLib.Plugins.Essentials.Accounts/src/AccountsEntryPoint.cs index 835718e..73ea51f 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts/src/AccountsEntryPoint.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts/src/AccountsEntryPoint.cs @@ -203,7 +203,7 @@ Commands: } //Get the user - using IUser? user = await Users.GetUserFromEmailAsync(username); + using IUser? user = await Users.GetUserFromUsernameAsync(username); if(user == null) { @@ -226,7 +226,7 @@ Commands: } //Get user - using IUser? user = await Users.GetUserFromEmailAsync(username); + using IUser? user = await Users.GetUserFromUsernameAsync(username); if (user == null) { @@ -251,7 +251,7 @@ Commands: } //Get user - using IUser? user = await Users.GetUserFromEmailAsync(username); + using IUser? user = await Users.GetUserFromUsernameAsync(username); if (user == null) { @@ -276,7 +276,7 @@ Commands: } //Get user - using IUser? user = await Users.GetUserFromEmailAsync(username); + using IUser? user = await Users.GetUserFromUsernameAsync(username); if (user == null) { @@ -322,7 +322,7 @@ Commands: } //Get user - using IUser? user = await Users.GetUserFromEmailAsync(username); + using IUser? user = await Users.GetUserFromUsernameAsync(username); if (user == null) { @@ -369,7 +369,7 @@ Commands: } //Get user - using IUser? user = await Users.GetUserFromEmailAsync(username); + using IUser? user = await Users.GetUserFromUsernameAsync(username); if (user == null) { Log.Warn("The specified user does not exist"); diff --git a/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/LoginEndpoint.cs b/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/LoginEndpoint.cs index ee16a93..57fd64c 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/LoginEndpoint.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/LoginEndpoint.cs @@ -1,5 +1,5 @@ /* -* Copyright (c) 2023 Vaughn Nugent +* Copyright (c) 2024 Vaughn Nugent * * Library: VNLib * Package: VNLib.Plugins.Essentials.Accounts @@ -136,7 +136,7 @@ namespace VNLib.Plugins.Essentials.Accounts.Endpoints return VirtualClose(entity, webm, HttpStatusCode.UnprocessableEntity); } - using IUser? user = await Users.GetUserFromEmailAsync(loginMessage.UserName); + using IUser? user = await Users.GetUserFromUsernameAsync(loginMessage.UserName); //Make sure account exists if (webm.Assert(user != null, INVALID_MESSAGE)) @@ -303,7 +303,7 @@ namespace VNLib.Plugins.Essentials.Accounts.Endpoints } //recover user account - using IUser? user = await Users.GetUserFromEmailAsync(upgrade.UserName!); + using IUser? user = await Users.GetUserFromUsernameAsync(upgrade.UserName!); if (webm.Assert(user != null, MFA_ERROR_MESSAGE)) { diff --git a/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/PkiLoginEndpoint.cs b/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/PkiLoginEndpoint.cs index 7441805..99f2318 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/PkiLoginEndpoint.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/PkiLoginEndpoint.cs @@ -1,5 +1,5 @@ /* -* Copyright (c) 2023 Vaughn Nugent +* Copyright (c) 2024 Vaughn Nugent * * Library: VNLib * Package: VNLib.Plugins.Essentials.Accounts @@ -162,7 +162,7 @@ namespace VNLib.Plugins.Essentials.Accounts.Endpoints } //Get the user from the email address - user = await _users.GetUserFromEmailAsync(authInfo.EmailAddress!, entity.EventCancellation); + user = await _users.GetUserFromUsernameAsync(authInfo.EmailAddress!, entity.EventCancellation); if (webm.Assert(user != null, INVALID_MESSAGE)) { diff --git a/plugins/VNLib.Plugins.Essentials.Accounts/src/SecurityProvider/AccountSecProvider.cs b/plugins/VNLib.Plugins.Essentials.Accounts/src/SecurityProvider/AccountSecProvider.cs index 9f1d6ee..dd8c8d5 100644 --- a/plugins/VNLib.Plugins.Essentials.Accounts/src/SecurityProvider/AccountSecProvider.cs +++ b/plugins/VNLib.Plugins.Essentials.Accounts/src/SecurityProvider/AccountSecProvider.cs @@ -173,7 +173,7 @@ namespace VNLib.Plugins.Essentials.Accounts.SecurityProvider * and need to be regnerated or invalidated. If they are expired * we need to cleanup any internal security flags/keys */ - private bool OnMwCheckSessionExpired(HttpEntity entity, in SessionInfo session) + private bool OnMwCheckSessionExpired(HttpEntity entity, ref readonly SessionInfo session) { if (session.Created.AddSeconds(_config.WebSessionValidForSeconds) < entity.RequestedTimeUtc) { @@ -881,7 +881,7 @@ namespace VNLib.Plugins.Essentials.Accounts.SecurityProvider } } - private sealed record class EncryptedTokenAuthorization(string ClientAuthToken) : IClientAuthorization + private sealed class EncryptedTokenAuthorization(string ClientAuthToken) : IClientAuthorization { ///<inheritdoc/> public object GetClientAuthData() => ClientAuthToken; diff --git a/plugins/VNLib.Plugins.Essentials.Auth.Social/src/SocialOauthBase.cs b/plugins/VNLib.Plugins.Essentials.Auth.Social/src/SocialOauthBase.cs index 5c2ffd6..131cb7b 100644 --- a/plugins/VNLib.Plugins.Essentials.Auth.Social/src/SocialOauthBase.cs +++ b/plugins/VNLib.Plugins.Essentials.Auth.Social/src/SocialOauthBase.cs @@ -450,7 +450,7 @@ namespace VNLib.Plugins.Essentials.Auth.Social } //See if user by email address exists - user = await Users.GetUserFromEmailAsync(userAccount.EmailAddress!, entity.EventCancellation); + user = await Users.GetUserFromUsernameAsync(userAccount.EmailAddress!, entity.EventCancellation); if (user == null) { diff --git a/plugins/VNLib.Plugins.Essentials.Content.Routing/src/Model/RoutingContext.cs b/plugins/VNLib.Plugins.Essentials.Content.Routing/src/Model/RoutingContext.cs index 1a8d82a..56fbc25 100644 --- a/plugins/VNLib.Plugins.Essentials.Content.Routing/src/Model/RoutingContext.cs +++ b/plugins/VNLib.Plugins.Essentials.Content.Routing/src/Model/RoutingContext.cs @@ -1,5 +1,5 @@ /* -* Copyright (c) 2023 Vaughn Nugent +* Copyright (c) 2024 Vaughn Nugent * * Library: VNLib * Package: VNLib.Plugins.Essentials.Content.Routing @@ -22,8 +22,6 @@ * along with this program. If not, see https://www.gnu.org/licenses/. */ -using System; - using Microsoft.EntityFrameworkCore; using VNLib.Plugins.Extensions.Data; @@ -31,7 +29,7 @@ using VNLib.Plugins.Extensions.Loading.Sql; namespace VNLib.Plugins.Essentials.Content.Routing.Model { - internal sealed class RoutingContext : TransactionalDbContext, IDbTableDefinition + internal sealed class RoutingContext : DBContextBase, IDbTableDefinition { public DbSet<Route> Routes { get; set; } |