opensearch_client/common/
update.rs1use crate::common;
12use crate::core;
13use serde::{Deserialize, Serialize};
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
19pub struct Update {
20 #[serde(rename = "upsert", default, skip_serializing_if = "Option::is_none")]
23 pub upsert: Option<serde_json::Value>,
24 #[serde(
26 rename = "doc_as_upsert",
27 default,
28 skip_serializing_if = "Option::is_none"
29 )]
30 pub doc_as_upsert: Option<bool>,
31 #[serde(rename = "script", default, skip_serializing_if = "Option::is_none")]
32 pub script: Option<common::Script>,
33 #[serde(rename = "doc", default, skip_serializing_if = "Option::is_none")]
35 pub doc: Option<serde_json::Value>,
36 #[serde(
39 rename = "detect_noop",
40 default,
41 skip_serializing_if = "Option::is_none"
42 )]
43 pub detect_noop: Option<bool>,
44 #[serde(
46 rename = "scripted_upsert",
47 default,
48 skip_serializing_if = "Option::is_none"
49 )]
50 pub scripted_upsert: Option<bool>,
51 #[serde(rename = "_source", default, skip_serializing_if = "Option::is_none")]
53 pub source: Option<core::search::SourceConfig>,
54}
55
56impl Update {
57 pub fn new() -> Update {
59 Update {
60 upsert: None,
61 doc_as_upsert: None,
62 script: None,
63 doc: None,
64 detect_noop: None,
65 scripted_upsert: None,
66 source: None,
67 }
68 }
69}