| 1 |
mod init; |
| 2 |
mod join; |
| 3 |
mod upload; |
| 4 |
mod download; |
| 5 |
mod list; |
| 6 |
mod status; |
| 7 |
mod encrypt; |
| 8 |
mod decrypt; |
| 9 |
|
| 10 |
pub use init::InitCommand; |
| 11 |
pub use join::JoinCommand; |
| 12 |
pub use upload::UploadCommand; |
| 13 |
pub use download::DownloadCommand; |
| 14 |
pub use list::ListCommand; |
| 15 |
pub use status::StatusCommand; |
| 16 |
pub use encrypt::EncryptCommand; |
| 17 |
pub use decrypt::DecryptCommand; |
| 18 |
|
| 19 |
use anyhow::Result; |
| 20 |
use crate::config::Config; |
| 21 |
|
| 22 |
#[async_trait::async_trait] |
| 23 |
pub trait Command { |
| 24 |
async fn execute(&self, config: &Config) -> Result<()>; |
| 25 |
} |