feat: load delete_oauth_state_adapter, get_oauth_access_token & RefreshAccessTokenInputAdapter
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed

This commit is contained in:
Aravinth Manivannan 2024-05-12 21:25:15 +05:30
parent d441981ed1
commit 87f2655110
Signed by: realaravinth
GPG key ID: F8F50389936984FF

View file

@ -6,6 +6,7 @@ use sqlx::postgres::PgPool;
pub mod input;
pub mod out;
use crate::auth::application::port::input::forge::refresh_access_token::RefreshAccessTokenInputPort;
use crate::settings;
use out::db::postgres::DBOutPostgresAdapter;
use out::forge::{forge_repository::ForgeRepository, forgejo::Forgejo};
@ -22,17 +23,25 @@ pub fn load_adapters(
WebDeleteOauthState::new(Arc::new(db.clone()));
let save_oauth_access_token: WebSaveOAuthAccessToken =
WebSaveOAuthAccessToken::new(Arc::new(db.clone()));
let get_oauth_access_token: WebGetOAuthAccessToken =
WebGetOAuthAccessToken::new(Arc::new(db.clone()));
let delete_oauth_access_token: WebDeleteOAuthAccessToken =
WebDeleteOAuthAccessToken::new(Arc::new(db.clone()));
let oauth_state_exists_adapter: WebOauthStateExists =
WebOauthStateExists::new(Arc::new(db.clone()));
let refresh_access_token_input_adapter: Arc<dyn RefreshAccessTokenInputPort> =
Arc::new(RefreshAccessTokenInputAdapter::new(
Arc::new(db.clone()),
Arc::new(db.clone()),
Arc::new(db.clone()),
));
let forgejo = Forgejo::new(
settings.forges.forgejo.url.clone(),
settings.forges.forgejo.client_id.clone(),
settings.forges.forgejo.client_secret.clone(),
Arc::new(RefreshAccessTokenInputAdapter::new(
Arc::new(db.clone()),
Arc::new(db.clone()),
)),
refresh_access_token_input_adapter.clone(),
);
let forge_repository_interface =
@ -44,10 +53,14 @@ pub fn load_adapters(
cfg.app_data(save_oauth_state_adapter);
cfg.app_data(delete_oauth_state_adapter);
cfg.app_data(save_oauth_access_token);
cfg.app_data(get_oauth_access_token);
cfg.app_data(delete_oauth_access_token);
cfg.app_data(oauth_state_exists_adapter);
cfg.app_data(forge_repository_interface);
cfg.app_data(web::Data::new(refresh_access_token_input_adapter));
cfg.app_data(s);
cfg.configure(input::web::load_ctx());