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::common;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct TemplateMapping {
    #[serde(rename = "version", default, skip_serializing_if = "Option::is_none")]
    pub version: Option<u32>,
    #[serde(rename = "index_patterns")]
    pub index_patterns: Vec<String>,
    #[serde(rename = "mappings")]
    pub mappings: common::mapping::TypeMapping,
    #[serde(rename = "aliases")]
    pub aliases: serde_json::Value,
    #[serde(rename = "settings")]
    pub settings: serde_json::Value,
    #[serde(rename = "order")]
    pub order: u32,
}

impl TemplateMapping {
    pub fn new(
        index_patterns: Vec<String>,
        mappings: common::mapping::TypeMapping,
        aliases: serde_json::Value,
        settings: serde_json::Value,
        order: u32,
    ) -> TemplateMapping {
        TemplateMapping {
            version: None,
            index_patterns,
            mappings,
            aliases,
            settings,
            order,
        }
    }
}