opensearch_client/ml/
task.rs1use crate::common;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct Task {
16 #[serde(rename = "task_type", default, skip_serializing_if = "Option::is_none")]
18 pub task_type: Option<String>,
19 #[serde(rename = "model_id", default, skip_serializing_if = "Option::is_none")]
20 pub model_id: Option<String>,
21 #[serde(rename = "error", default, skip_serializing_if = "Option::is_none")]
22 pub error: Option<String>,
23 #[serde(rename = "state")]
24 pub state: String,
25 #[serde(
26 rename = "last_update_time",
27 default,
28 skip_serializing_if = "Option::is_none"
29 )]
30 pub last_update_time: Option<u32>,
31 #[serde(
33 rename = "function_name",
34 default,
35 skip_serializing_if = "Option::is_none"
36 )]
37 pub function_name: Option<String>,
38 #[serde(rename = "is_async", default, skip_serializing_if = "Option::is_none")]
39 pub is_async: Option<bool>,
40 #[serde(
41 rename = "worker_node",
42 default,
43 skip_serializing_if = "Option::is_none"
44 )]
45 pub worker_node: Option<Vec<common::NodeIds>>,
46 #[serde(rename = "task_id", default, skip_serializing_if = "Option::is_none")]
47 pub task_id: Option<String>,
48 #[serde(
49 rename = "create_time",
50 default,
51 skip_serializing_if = "Option::is_none"
52 )]
53 pub create_time: Option<u32>,
54}
55
56impl Task {
57 pub fn new(state: String) -> Task {
58 Task {
59 task_type: None,
60 model_id: None,
61 error: None,
62 state,
63 last_update_time: None,
64 function_name: None,
65 is_async: None,
66 worker_node: None,
67 task_id: None,
68 create_time: None,
69 }
70 }
71}