opensearch_client/tasks/
task_info_base.rs1use crate::tasks;
12use crate::common;
13use serde::{Deserialize, Serialize};
14
15
16
17
18#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
19pub struct TaskInfoBase {
20 #[serde(rename = "cancellation_time_millis", default, skip_serializing_if = "Option::is_none")]
21 pub cancellation_time_millis: Option<String>,
22 #[serde(rename = "action")]
23 pub action: String, #[serde(rename = "running_time", default, skip_serializing_if = "Option::is_none")]
26 pub running_time: Option<String>,
27 #[serde(rename = "cancelled", default, skip_serializing_if = "Option::is_none")]
28 pub cancelled: Option<bool>,
29 #[serde(rename = "cancellable")]
30 pub cancellable: bool,
31 #[serde(rename = "start_time_in_millis")]
32 pub start_time_in_millis: String,
33 #[serde(rename = "description", default, skip_serializing_if = "Option::is_none")]
34 pub description: Option<String>,
35 #[serde(rename = "parent_task_id", default, skip_serializing_if = "Option::is_none")]
36 pub parent_task_id: Option<String>, #[serde(rename = "status", default, skip_serializing_if = "Option::is_none")]
38 pub status: Option<tasks::Status>,
39 #[serde(rename = "node")]
40 pub node: String,
41 #[serde(rename = "type")]
42 pub r#type: String,
43 #[serde(rename = "id")]
44 pub id: u32,
45 #[serde(rename = "headers")]
46 pub headers: serde_json::Value,
47 #[serde(rename = "resource_stats", default, skip_serializing_if = "Option::is_none")]
48 pub resource_stats: Option<common::ResourceStats>,
49 #[serde(rename = "running_time_in_nanos")]
50 pub running_time_in_nanos: String,
51}
52
53impl TaskInfoBase {
54
55 pub fn new(action: String, cancellable: bool, start_time_in_millis: String, node: String, r#type: String, id: u32, headers: serde_json::Value, running_time_in_nanos: String) -> TaskInfoBase {
56 TaskInfoBase {
57 cancellation_time_millis: None,
58 action,
59 running_time: None,
60 cancelled: None,
61 cancellable,
62 start_time_in_millis,
63 description: None,
64 parent_task_id: None,
65 status: None,
66 node,
67 r#type,
68 id,
69 headers,
70 resource_stats: None,
71 running_time_in_nanos,
72 }
73 }
74}