summaryrefslogtreecommitdiffstats
path: root/src/state.rs
diff options
context:
space:
mode:
authorrtkay123 <dev@kanjala.com>2025-07-15 08:56:52 +0200
committerrtkay123 <dev@kanjala.com>2025-07-15 08:56:52 +0200
commit096630708d27bca324cc83f1a830d4b9bbbb7917 (patch)
tree3a2a2a6ea25502cf32b9179c2d1a4a12852de305 /src/state.rs
parenta69c24e561c8ae16dc730f7713f8d8da0bd25e0e (diff)
downloadsellershut-096630708d27bca324cc83f1a830d4b9bbbb7917.tar.bz2
sellershut-096630708d27bca324cc83f1a830d4b9bbbb7917.zip
feat: read identifiers from config
Diffstat (limited to 'src/state.rs')
-rw-r--r--src/state.rs17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/state.rs b/src/state.rs
index 5ced62e..1ae6caa 100644
--- a/src/state.rs
+++ b/src/state.rs
@@ -3,7 +3,7 @@ use std::{ops::Deref, sync::Arc};
use activitypub_federation::config::FederationConfig;
use stack_up::{Configuration, Environment, Services};
-use crate::{entity::user::User, error::AppError};
+use crate::{cnfg::LocalConfig, entity::user::User, error::AppError};
#[derive(Clone)]
pub struct AppHandle(Arc<AppState>);
@@ -21,15 +21,22 @@ pub struct AppState {
}
impl AppState {
- pub async fn new(
+ pub async fn create(
services: Services,
configuration: &Configuration,
) -> Result<FederationConfig<AppHandle>, AppError> {
- let user = User::new("sellershut", &services).await?;
- let domain = "localhost";
+ let warden_config: LocalConfig = serde_json::from_value(configuration.misc.clone())?;
+
+ let user = User::new(
+ &warden_config.instance_name,
+ &warden_config.hostname,
+ &services,
+ configuration.application.env,
+ )
+ .await?;
let config = FederationConfig::builder()
- .domain(domain)
+ .domain(&warden_config.hostname)
.signed_fetch_actor(&user)
.app_data(AppHandle(Arc::new(Self { services })))
// .url_verifier(Box::new(MyUrlVerifier()))