tcrm_task/tasks/
event.rs

1use crate::tasks::{config::StreamSource, error::TaskError, state::TaskTerminateReason};
2
3#[derive(Debug, Clone)]
4pub enum TaskEvent {
5    Started {
6        task_name: String,
7    },
8    Output {
9        task_name: String,
10        line: String,
11        src: StreamSource,
12    },
13    Ready {
14        task_name: String,
15    },
16    Stopped {
17        task_name: String,
18        exit_code: Option<i32>,
19        reason: TaskEventStopReason,
20    },
21    Error {
22        task_name: String,
23        error: TaskError,
24    },
25}
26#[derive(Debug, Clone, PartialEq)]
27pub enum TaskEventStopReason {
28    Finished,
29    Terminated(TaskTerminateReason),
30    Error(String),
31}