opensearch_client/ingest/simulate/
document_simulation.rs1use crate::common;
12use crate::ingest;
13use serde::{Deserialize, Serialize};
14
15
16
17
18#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
19pub struct DocumentSimulation {
20 #[serde(rename = "_index")]
21 pub index: String, #[serde(rename = "_version", default, skip_serializing_if = "Option::is_none")]
27 pub version: Option<common::StringifiedVersionNumber>, #[serde(rename = "_routing", default, skip_serializing_if = "Option::is_none")]
29 pub routing: Option<String>,
30 #[serde(rename = "_version_type", default, skip_serializing_if = "Option::is_none")]
31 pub version_type: Option<String>,
32 #[serde(rename = "_ingest")]
33 pub ingest: ingest::simulate::Ingest,
34 #[serde(rename = "_id")]
35 pub id: String, #[serde(rename = "_source")]
37 pub source: serde_json::Value,
38}
39
40impl DocumentSimulation {
41
42 pub fn new(index: String, ingest: ingest::simulate::Ingest, id: String, source: serde_json::Value) -> DocumentSimulation {
43 DocumentSimulation {
44 index,
45 version: None,
46 routing: None,
47 version_type: None,
48 ingest,
49 id,
50 source,
51 }
52 }
53}