use crate::models;
use kube::Resource;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IoCattleManagementv3Cluster {
#[serde(rename = "apiVersion", skip_serializing_if = "Option::is_none")]
pub api_version: Option<String>,
#[serde(rename = "kind", skip_serializing_if = "Option::is_none")]
pub kind: Option<String>,
#[serde(rename = "spec")]
pub spec: models::IoCattleManagementv3ClusterSpec,
#[serde(rename = "status", skip_serializing_if = "Option::is_none")]
pub status: Option<models::IoCattleManagementv3ClusterStatus>,
#[serde(rename = "metadata", skip_serializing_if = "Option::is_none")]
pub metadata: Option<kube::api::ObjectMeta>,
}
impl Resource for IoCattleManagementv3Cluster {
type DynamicType = ();
type Scope = ();
fn kind(_dt: &Self::DynamicType) -> std::borrow::Cow<'_, str> {
std::borrow::Cow::Borrowed("Cluster")
}
fn group(_dt: &Self::DynamicType) -> std::borrow::Cow<'_, str> {
std::borrow::Cow::Borrowed("management.cattle.io")
}
fn version(_dt: &Self::DynamicType) -> std::borrow::Cow<'_, str> {
std::borrow::Cow::Borrowed("v3")
}
fn plural(_dt: &Self::DynamicType) -> std::borrow::Cow<'_, str> {
std::borrow::Cow::Borrowed("clusters")
}
fn meta(&self) -> &kube::api::ObjectMeta {
self.metadata.as_ref().unwrap()
}
fn meta_mut(&mut self) -> &mut kube::api::ObjectMeta {
self.metadata.as_mut().unwrap()
}
}
impl IoCattleManagementv3Cluster {
pub fn new(spec: models::IoCattleManagementv3ClusterSpec) -> IoCattleManagementv3Cluster {
IoCattleManagementv3Cluster {
api_version: None,
kind: None,
spec,
status: None,
metadata: None,
}
}
}