pub trait DroneStore {
// Required methods
fn drone_list(&self) -> Result<Vec<DroneDefinition>, StoreError>;
fn drone_get(&self, id: &str) -> Result<Option<DroneDefinition>, StoreError>;
fn drone_upsert(&self, wf: &DroneDefinition) -> Result<(), StoreError>;
fn drone_delete(&self, id: &str) -> Result<bool, StoreError>;
fn drone_run_insert(&self, run: &DroneRun) -> Result<(), StoreError>;
fn drone_run_update(&self, run: &DroneRun) -> Result<usize, StoreError>;
fn drone_runs_for(
&self,
drone_id: &str,
limit: i64,
) -> Result<Vec<DroneRun>, StoreError>;
}Required Methods§
fn drone_list(&self) -> Result<Vec<DroneDefinition>, StoreError>
fn drone_get(&self, id: &str) -> Result<Option<DroneDefinition>, StoreError>
fn drone_upsert(&self, wf: &DroneDefinition) -> Result<(), StoreError>
fn drone_delete(&self, id: &str) -> Result<bool, StoreError>
fn drone_run_insert(&self, run: &DroneRun) -> Result<(), StoreError>
Sourcefn drone_run_update(&self, run: &DroneRun) -> Result<usize, StoreError>
fn drone_run_update(&self, run: &DroneRun) -> Result<usize, StoreError>
Update an existing run row in place. Returns rows affected
(0 if no row matched run.id). Used to flip a placeholder
running row into its terminal state once the drain task
completes, so the row exists from the moment the RPC returns.