opensearch-client 0.3.1

Strongly typed OpenSearch Client
Documentation
/*
 * 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::core;
use crate::common;
use serde::{Deserialize, Serialize};




#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Operation {  /// 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>,
    #[serde(rename = "_index", default, skip_serializing_if = "Option::is_none")]
    pub index: Option<String>,
    #[serde(rename = "routing", default, skip_serializing_if = "Option::is_none")]
    pub routing: Option<String>,
    #[serde(rename = "_id")]
    pub id: String,
    #[serde(rename = "stored_fields", default, skip_serializing_if = "Option::is_none")]
    pub stored_fields: Option<common::Fields>,
    #[serde(rename = "version", default, skip_serializing_if = "Option::is_none")]
    pub version: Option<u32>,
    #[serde(rename = "version_type", default, skip_serializing_if = "Option::is_none")]
    pub version_type: Option<String>,
}

impl Operation {
    
    pub fn new(id: String) -> Operation {
        Operation {
            source: None,
            index: None,
            routing: None,
            id,
            stored_fields: None,
            version: None,
            version_type: None,
        }
    }
}