aboutsummaryrefslogtreecommitdiffhomepage
path: root/crates/shirabe/src/repository/repository_manager.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/shirabe/src/repository/repository_manager.rs')
-rw-r--r--crates/shirabe/src/repository/repository_manager.rs25
1 files changed, 25 insertions, 0 deletions
diff --git a/crates/shirabe/src/repository/repository_manager.rs b/crates/shirabe/src/repository/repository_manager.rs
index eb755dc..ee5d2d8 100644
--- a/crates/shirabe/src/repository/repository_manager.rs
+++ b/crates/shirabe/src/repository/repository_manager.rs
@@ -165,6 +165,31 @@ impl RepositoryManager {
"Composer\\Repository\\PackageRepository" => Ok(RepositoryInterfaceHandle::new(
crate::repository::PackageRepository::new(config),
)),
+ "Composer\\Repository\\VcsRepository" => Ok(RepositoryInterfaceHandle::new(
+ crate::repository::VcsRepository::new(
+ config,
+ self.io.clone(),
+ self.config.clone(),
+ self.http_downloader.clone(),
+ self.event_dispatcher.clone(),
+ Some(self.process.clone()),
+ None,
+ None,
+ )?,
+ )),
+ "Composer\\Repository\\ArtifactRepository" => Ok(RepositoryInterfaceHandle::new(
+ crate::repository::ArtifactRepository::new(config, self.io.clone())?,
+ )),
+ "Composer\\Repository\\PathRepository" => Ok(RepositoryInterfaceHandle::new(
+ crate::repository::PathRepository::new(
+ config,
+ self.io.clone(),
+ self.config.clone(),
+ Some(self.http_downloader.clone()),
+ self.event_dispatcher.clone(),
+ Some(self.process.clone()),
+ )?,
+ )),
other => todo!(
"Phase B: dynamic class instantiation by class name: {}",
other