diff options
Diffstat (limited to 'crates/shirabe/src/repository/vcs/forgejo_driver.rs')
| -rw-r--r-- | crates/shirabe/src/repository/vcs/forgejo_driver.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/crates/shirabe/src/repository/vcs/forgejo_driver.rs b/crates/shirabe/src/repository/vcs/forgejo_driver.rs index c93ee70..3c1366d 100644 --- a/crates/shirabe/src/repository/vcs/forgejo_driver.rs +++ b/crates/shirabe/src/repository/vcs/forgejo_driver.rs @@ -34,6 +34,23 @@ pub struct ForgejoDriver { } impl ForgejoDriver { + pub fn new( + repo_config: IndexMap<String, shirabe_php_shim::PhpMixed>, + io: std::rc::Rc<std::cell::RefCell<dyn IOInterface>>, + config: std::rc::Rc<std::cell::RefCell<Config>>, + http_downloader: std::rc::Rc<std::cell::RefCell<crate::util::HttpDownloader>>, + process: std::rc::Rc<std::cell::RefCell<crate::util::ProcessExecutor>>, + ) -> Self { + Self { + inner: VcsDriverBase::new(repo_config, io, config, http_downloader, process), + forgejo_url: None, + repository_data: None, + git_driver: None, + tags: None, + branches: None, + } + } + pub fn initialize(&mut self) -> Result<()> { let forgejo_url = ForgejoUrl::create(&self.inner.url)?; self.inner.origin_url = forgejo_url.origin_url.clone(); |
