octopush/crates/gitea_client/src/client.rs
Kasper Juul Hermansen 991861db99
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Rewrite rust (#38)
Co-authored-by: kjuulh <contact@kjuulh.io>
Reviewed-on: #38
2022-11-27 11:21:35 +00:00

30 lines
643 B
Rust

use std::sync::Arc;
use gitea_raw_client::apis::configuration::Configuration;
use crate::apis::{defaults::repository::DefaultRepository, repository::DynRepository};
pub struct GiteaClient {
repository: DynRepository,
}
impl GiteaClient {
pub fn new(config: Configuration) -> Self {
let conf = Arc::new(config);
Self {
repository: Arc::new(DefaultRepository::new(conf.clone())),
}
}
pub fn repository(&self) -> DynRepository {
self.repository.clone()
}
}
impl From<Configuration> for GiteaClient {
fn from(conf: Configuration) -> Self {
Self::new(conf)
}
}