use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ClusterMetricsCreateServerRequest {
#[serde(rename = "api-path-prefix", skip_serializing_if = "Option::is_none")]
pub api_path_prefix: Option<String>,
#[serde(rename = "bucket", skip_serializing_if = "Option::is_none")]
pub bucket: Option<String>,
#[serde(rename = "disable", skip_serializing_if = "Option::is_none")]
pub disable: Option<models::PveBoolean>,
#[serde(rename = "influxdbproto", skip_serializing_if = "Option::is_none")]
pub influxdbproto: Option<models::PveInfluxdbprotoEnum>,
#[serde(rename = "max-body-size", skip_serializing_if = "Option::is_none")]
pub max_body_size: Option<i64>,
#[serde(rename = "mtu", skip_serializing_if = "Option::is_none")]
pub mtu: Option<i32>,
#[serde(rename = "organization", skip_serializing_if = "Option::is_none")]
pub organization: Option<String>,
#[serde(rename = "otel-compression", skip_serializing_if = "Option::is_none")]
pub otel_compression: Option<models::PveOtelCompressionEnum>,
#[serde(rename = "otel-headers", skip_serializing_if = "Option::is_none")]
pub otel_headers: Option<String>,
#[serde(rename = "otel-max-body-size", skip_serializing_if = "Option::is_none")]
pub otel_max_body_size: Option<i64>,
#[serde(rename = "otel-path", skip_serializing_if = "Option::is_none")]
pub otel_path: Option<String>,
#[serde(rename = "otel-protocol", skip_serializing_if = "Option::is_none")]
pub otel_protocol: Option<models::PveOtelProtocolEnum>,
#[serde(rename = "otel-resource-attributes", skip_serializing_if = "Option::is_none")]
pub otel_resource_attributes: Option<String>,
#[serde(rename = "otel-timeout", skip_serializing_if = "Option::is_none")]
pub otel_timeout: Option<i32>,
#[serde(rename = "otel-verify-ssl", skip_serializing_if = "Option::is_none")]
pub otel_verify_ssl: Option<models::PveBoolean>,
#[serde(rename = "path", skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "port")]
pub port: i32,
#[serde(rename = "proto", skip_serializing_if = "Option::is_none")]
pub proto: Option<models::PveProtoEnum>,
#[serde(rename = "server")]
pub server: String,
#[serde(rename = "timeout", skip_serializing_if = "Option::is_none")]
pub timeout: Option<i64>,
#[serde(rename = "token", skip_serializing_if = "Option::is_none")]
pub token: Option<String>,
#[serde(rename = "type")]
pub r#type: models::PveClusterMetricsTypeEnum2,
#[serde(rename = "verify-certificate", skip_serializing_if = "Option::is_none")]
pub verify_certificate: Option<models::PveBoolean>,
}
impl ClusterMetricsCreateServerRequest {
pub fn new(port: i32, server: String, r#type: models::PveClusterMetricsTypeEnum2) -> ClusterMetricsCreateServerRequest {
ClusterMetricsCreateServerRequest {
api_path_prefix: None,
bucket: None,
disable: None,
influxdbproto: None,
max_body_size: None,
mtu: None,
organization: None,
otel_compression: None,
otel_headers: None,
otel_max_body_size: None,
otel_path: None,
otel_protocol: None,
otel_resource_attributes: None,
otel_timeout: None,
otel_verify_ssl: None,
path: None,
port,
proto: None,
server,
timeout: None,
token: None,
r#type,
verify_certificate: None,
}
}
}