18 lines
424 B
Rust
18 lines
424 B
Rust
// 资产生命周期管理
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
|
|
pub enum AssetState {
|
|
Created,
|
|
Active,
|
|
Frozen,
|
|
Terminated,
|
|
}
|
|
|
|
pub trait AssetLifecycle {
|
|
fn get_state(&self) -> AssetState;
|
|
fn activate(&mut self) -> Result<(), String>;
|
|
fn freeze(&mut self) -> Result<(), String>;
|
|
fn terminate(&mut self) -> Result<(), String>;
|
|
}
|