From 71492fc111c15b2b6f1c6fc903a16a5932574dfe Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 15 May 2026 23:45:14 +0900 Subject: feat(port): port PrePoolCreateEvent.php --- crates/shirabe/src/plugin/pre_pool_create_event.rs | 87 ++++++++++++++++++++++ 1 file changed, 87 insertions(+) (limited to 'crates/shirabe/src') diff --git a/crates/shirabe/src/plugin/pre_pool_create_event.rs b/crates/shirabe/src/plugin/pre_pool_create_event.rs index 4605a32..3126119 100644 --- a/crates/shirabe/src/plugin/pre_pool_create_event.rs +++ b/crates/shirabe/src/plugin/pre_pool_create_event.rs @@ -1 +1,88 @@ //! ref: composer/src/Composer/Plugin/PrePoolCreateEvent.php + +use indexmap::IndexMap; + +use crate::dependency_resolver::request::Request; +use crate::event_dispatcher::event::Event; +use crate::package::base_package::BasePackage; +use crate::repository::repository_interface::RepositoryInterface; + +#[derive(Debug)] +pub struct PrePoolCreateEvent { + inner: Event, + repositories: Vec>, + request: Request, + acceptable_stabilities: IndexMap, + stability_flags: IndexMap, + root_aliases: IndexMap>>, + root_references: IndexMap, + packages: Vec, + unacceptable_fixed_packages: Vec, +} + +impl PrePoolCreateEvent { + #[allow(clippy::too_many_arguments)] + pub fn new( + name: String, + repositories: Vec>, + request: Request, + acceptable_stabilities: IndexMap, + stability_flags: IndexMap, + root_aliases: IndexMap>>, + root_references: IndexMap, + packages: Vec, + unacceptable_fixed_packages: Vec, + ) -> Self { + Self { + inner: Event::new(name, vec![], IndexMap::new()), + repositories, + request, + acceptable_stabilities, + stability_flags, + root_aliases, + root_references, + packages, + unacceptable_fixed_packages, + } + } + + pub fn get_repositories(&self) -> &Vec> { + &self.repositories + } + + pub fn get_request(&self) -> &Request { + &self.request + } + + pub fn get_acceptable_stabilities(&self) -> &IndexMap { + &self.acceptable_stabilities + } + + pub fn get_stability_flags(&self) -> &IndexMap { + &self.stability_flags + } + + pub fn get_root_aliases(&self) -> &IndexMap>> { + &self.root_aliases + } + + pub fn get_root_references(&self) -> &IndexMap { + &self.root_references + } + + pub fn get_packages(&self) -> &Vec { + &self.packages + } + + pub fn get_unacceptable_fixed_packages(&self) -> &Vec { + &self.unacceptable_fixed_packages + } + + pub fn set_packages(&mut self, packages: Vec) { + self.packages = packages; + } + + pub fn set_unacceptable_fixed_packages(&mut self, packages: Vec) { + self.unacceptable_fixed_packages = packages; + } +} -- cgit v1.3.1