use tor_rtcompat::Runtime;
use crate::config::TorRelayConfig;
use crate::err::Error;
use crate::relay::TorRelay;
#[derive(Clone)]
#[must_use]
#[allow(unused)] pub(crate) struct TorRelayBuilder<R: Runtime> {
runtime: R,
config: TorRelayConfig,
}
#[allow(unused)] impl<R: Runtime> TorRelayBuilder<R> {
pub(crate) fn new(runtime: R) -> Self {
Self {
runtime,
config: TorRelayConfig::default(),
}
}
pub(crate) fn create(&self) -> Result<TorRelay<R>, Error> {
TorRelay::create_inner(self.runtime.clone(), &self.config).map_err(Into::into)
}
}