1
0
mirror of https://github.com/matrix-org/matrix-authentication-service.git synced 2025-11-21 23:00:50 +03:00

storage: wrap the postgres repository in a struct

This commit is contained in:
Quentin Gliech
2023-01-13 18:03:37 +01:00
parent 488a666a8d
commit 195203823a
44 changed files with 505 additions and 548 deletions

View File

@@ -24,7 +24,7 @@ use mas_oidc_client::requests::authorization_code::AuthorizationRequestData;
use mas_router::UrlBuilder;
use mas_storage::{
upstream_oauth2::{UpstreamOAuthProviderRepository, UpstreamOAuthSessionRepository},
Repository,
PgRepository, Repository,
};
use sqlx::PgPool;
use thiserror::Error;
@@ -67,9 +67,9 @@ pub(crate) async fn get(
) -> Result<impl IntoResponse, RouteError> {
let (clock, mut rng) = crate::clock_and_rng();
let mut txn = pool.begin().await?;
let mut repo = PgRepository::from_pool(&pool).await?;
let provider = txn
let provider = repo
.upstream_oauth_provider()
.lookup(provider_id)
.await?
@@ -100,7 +100,7 @@ pub(crate) async fn get(
&mut rng,
)?;
let session = txn
let session = repo
.upstream_oauth_session()
.add(
&mut rng,
@@ -116,7 +116,7 @@ pub(crate) async fn get(
.add(session.id, provider.id, data.state, query.post_auth_action)
.save(cookie_jar, clock.now());
txn.commit().await?;
repo.save().await?;
Ok((cookie_jar, Redirect::temporary(url.as_str())))
}