1use crate::config::QiniuConfig;
2use crate::upload::QiniuUpload;
3use spring::app::AppBuilder;
4use spring::async_trait;
5use spring::config::ConfigRegistry;
6use spring::plugin::Plugin;
7
8pub struct QiniuPlugin;
9
10#[async_trait]
11impl Plugin for QiniuPlugin {
12 async fn build(&self, app: &mut AppBuilder) {
13 let config = app.get_config::<QiniuConfig>()
14 .expect("qiniu plugin config load failed");
15 let qiniu = QiniuUpload::new(config);
16 app.add_component(qiniu);
17 }
18 fn name(&self) -> &str {
19 "qiniu"
20 }
21}