diff options
| -rw-r--r-- | crates/shirabe/src/plugin/post_file_download_event.rs | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/crates/shirabe/src/plugin/post_file_download_event.rs b/crates/shirabe/src/plugin/post_file_download_event.rs index 72c68c3..f0e2569 100644 --- a/crates/shirabe/src/plugin/post_file_download_event.rs +++ b/crates/shirabe/src/plugin/post_file_download_event.rs @@ -1 +1,57 @@ //! ref: composer/src/Composer/Plugin/PostFileDownloadEvent.php + +use shirabe_php_shim::PhpMixed; + +use crate::event_dispatcher::event::Event; + +#[derive(Debug)] +pub struct PostFileDownloadEvent { + inner: Event, + file_name: Option<String>, + checksum: Option<String>, + url: String, + context: PhpMixed, + r#type: String, +} + +impl PostFileDownloadEvent { + pub fn new( + name: String, + file_name: Option<String>, + checksum: Option<String>, + url: String, + r#type: String, + context: PhpMixed, + ) -> Self { + Self { + inner: Event::new(name, vec![], indexmap::IndexMap::new()), + file_name, + checksum, + url, + context, + r#type, + } + } + + pub fn get_file_name(&self) -> Option<&str> { + self.file_name.as_deref() + } + + pub fn get_checksum(&self) -> Option<&str> { + self.checksum.as_deref() + } + + pub fn get_url(&self) -> &str { + &self.url + } + + pub fn get_context(&self) -> &PhpMixed { + &self.context + } + + // TODO(plugin): getPackage is deprecated since Composer 2.1, use getContext instead + + pub fn get_type(&self) -> &str { + &self.r#type + } +} |
