split federation request from sending service
Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
parent
3e0ff2dc84
commit
4a2d0d35bc
7 changed files with 146 additions and 87 deletions
33
src/service/federation/mod.rs
Normal file
33
src/service/federation/mod.rs
Normal file
|
@ -0,0 +1,33 @@
|
|||
mod execute;
|
||||
|
||||
use std::sync::Arc;
|
||||
|
||||
use conduwuit::{Result, Server};
|
||||
|
||||
use crate::{client, resolver, server_keys, Dep};
|
||||
|
||||
pub struct Service {
|
||||
services: Services,
|
||||
}
|
||||
|
||||
struct Services {
|
||||
server: Arc<Server>,
|
||||
client: Dep<client::Service>,
|
||||
resolver: Dep<resolver::Service>,
|
||||
server_keys: Dep<server_keys::Service>,
|
||||
}
|
||||
|
||||
impl crate::Service for Service {
|
||||
fn build(args: crate::Args<'_>) -> Result<Arc<Self>> {
|
||||
Ok(Arc::new(Self {
|
||||
services: Services {
|
||||
server: args.server.clone(),
|
||||
client: args.depend::<client::Service>("client"),
|
||||
resolver: args.depend::<resolver::Service>("resolver"),
|
||||
server_keys: args.depend::<server_keys::Service>("server_keys"),
|
||||
},
|
||||
}))
|
||||
}
|
||||
|
||||
fn name(&self) -> &str { crate::service::make_name(std::module_path!()) }
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue