1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*
* opensearch-client
*
* Rust Client for OpenSearch
*
* The version of the OpenAPI document: 3.1.0
* Contact: alberto.paro@gmail.com
* Generated by Paro OpenAPI Generator
*/
use crate::common;
use crate::core;
use serde::{Deserialize, Serialize};
/// UpdateRequestBodyJson
/// The request definition requires either `script` or partial `doc`
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct UpdateRequestBodyJson { /// Set to `true` to use the contents of 'doc' as the value of 'upsert'
#[serde(rename = "doc_as_upsert", default, skip_serializing_if = "Option::is_none")]
pub doc_as_upsert: Option<bool>, /// Defines how to fetch a source. Fetching can be disabled entirely, or the source can be filtered.
#[serde(rename = "_source", default, skip_serializing_if = "Option::is_none")]
pub source: Option<core::search::SourceConfig>, /// Set to `true` to execute the script whether or not the document exists.
#[serde(rename = "scripted_upsert", default, skip_serializing_if = "Option::is_none")]
pub scripted_upsert: Option<bool>, /// Set to `false` to disable setting `result` in the response
/// to `noop` if no change to the document occurred.
#[serde(rename = "detect_noop", default, skip_serializing_if = "Option::is_none")]
pub detect_noop: Option<bool>, /// A partial update to an existing document.
#[serde(rename = "doc", default, skip_serializing_if = "Option::is_none")]
pub doc: Option<serde_json::Value>, /// If the document does not already exist, the contents of 'upsert' are inserted as a
/// new document. If the document exists, the 'script' is executed.
#[serde(rename = "upsert", default, skip_serializing_if = "Option::is_none")]
pub upsert: Option<serde_json::Value>,
#[serde(rename = "script", default, skip_serializing_if = "Option::is_none")]
pub script: Option<common::Script>,
}
impl UpdateRequestBodyJson {
/// The request definition requires either `script` or partial `doc`
pub fn new() -> UpdateRequestBodyJson {
UpdateRequestBodyJson {
doc_as_upsert: None,
source: None,
scripted_upsert: None,
detect_noop: None,
doc: None,
upsert: None,
script: None,
}
}
}