#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LeaseCandidate {
#[prost(message, optional, tag = "1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ObjectMeta>,
#[prost(message, optional, tag = "2")]
pub spec: ::core::option::Option<LeaseCandidateSpec>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LeaseCandidateList {
#[prost(message, optional, tag = "1")]
pub metadata: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::ListMeta>,
#[prost(message, repeated, tag = "2")]
pub items: ::prost::alloc::vec::Vec<LeaseCandidate>,
}
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct LeaseCandidateSpec {
#[prost(string, optional, tag = "1")]
pub lease_name: ::core::option::Option<::prost::alloc::string::String>,
#[prost(message, optional, tag = "2")]
pub ping_time: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::MicroTime>,
#[prost(message, optional, tag = "3")]
pub renew_time: ::core::option::Option<super::super::super::apimachinery::pkg::apis::meta::v1::MicroTime>,
#[prost(string, optional, tag = "4")]
pub binary_version: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, optional, tag = "5")]
pub emulation_version: ::core::option::Option<::prost::alloc::string::String>,
#[prost(string, repeated, tag = "6")]
pub preferred_strategies: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
impl crate::Resource for LeaseCandidate {
const API_VERSION: &'static str = "coordination.k8s.io/v1alpha1";
const GROUP: &'static str = "coordination.k8s.io";
const VERSION: &'static str = "v1alpha1";
const KIND: &'static str = "LeaseCandidate";
const URL_PATH_SEGMENT: &'static str = "leasecandidates";
type Scope = crate::NamespaceResourceScope;
}
impl crate::Metadata for LeaseCandidate {
type Ty = crate::apimachinery::pkg::apis::meta::v1::ObjectMeta;
fn metadata(&self) -> Option<&<Self as crate::Metadata>::Ty> {
self.metadata.as_ref()
}
fn metadata_mut(&mut self) -> Option<&mut <Self as crate::Metadata>::Ty> {
self.metadata.as_mut()
}
}
impl crate::HasSpec for LeaseCandidate {
type Spec = crate::api::coordination::v1alpha1::LeaseCandidateSpec;
fn spec(&self) -> Option<&<Self as crate::HasSpec>::Spec> {
self.spec.as_ref()
}
fn spec_mut(&mut self) -> Option<&mut <Self as crate::HasSpec>::Spec> {
self.spec.as_mut()
}
}