aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar vnugent <public@vaughnnugent.com>2024-02-14 14:44:04 -0500
committerLibravatar vnugent <public@vaughnnugent.com>2024-02-14 14:44:04 -0500
commit0d3612601ee2ff42cc72c9a4e29de66ea9cdc3fd (patch)
treee3f69f017a2ec80088fc1966a5efa88a51a4466a
parentdf7dc615532d3441f527374d18664c1a5a336de6 (diff)
Squashed commit of the following:
commit 2735201257cd22981f96b54b4a6120f44cb93c4c Author: vnugent <public@vaughnnugent.com> Date: Mon Feb 12 20:26:57 2024 -0500 refactor: update latest sql extensions commit eb3fea8181344e3550869f92b9643439053f79fe Author: vnugent <public@vaughnnugent.com> Date: Sun Feb 4 01:30:25 2024 -0500 submit pending changes
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts.Admin/src/Model/UserContext.cs4
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/Endpoints/RegistrationEntpoint.cs4
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/RegistrationContext.cs4
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts.Registration/src/TokenRevocation/RevokedTokenStore.cs22
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts/src/AccountsEntryPoint.cs12
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/LoginEndpoint.cs6
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts/src/Endpoints/PkiLoginEndpoint.cs4
-rw-r--r--plugins/VNLib.Plugins.Essentials.Accounts/src/SecurityProvider/AccountSecProvider.cs4
-rw-r--r--plugins/VNLib.Plugins.Essentials.Auth.Social/src/SocialOauthBase.cs2
-rw-r--r--plugins/VNLib.Plugins.Essentials.Content.Routing/src/Model/RoutingContext.cs6
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; }