use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GetOidcSigningStatus200ResponseSigner {
#[serde(rename = "last_refresh_success", skip_serializing_if = "Option::is_none")]
pub last_refresh_success: Option<String>,
#[serde(rename = "last_refresh_error", skip_serializing_if = "Option::is_none")]
pub last_refresh_error: Option<String>,
#[serde(rename = "breaker")]
pub breaker: Breaker,
#[serde(rename = "max_rps")]
pub max_rps: f64,
#[serde(rename = "current_rps")]
pub current_rps: f64,
#[serde(rename = "keys_from_store", skip_serializing_if = "Option::is_none")]
pub keys_from_store: Option<bool>,
#[serde(rename = "tls_files_error", skip_serializing_if = "Option::is_none")]
pub tls_files_error: Option<String>,
}
impl GetOidcSigningStatus200ResponseSigner {
pub fn new(breaker: Breaker, max_rps: f64, current_rps: f64) -> GetOidcSigningStatus200ResponseSigner {
GetOidcSigningStatus200ResponseSigner {
last_refresh_success: None,
last_refresh_error: None,
breaker,
max_rps,
current_rps,
keys_from_store: None,
tls_files_error: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Breaker {
#[serde(rename = "closed")]
Closed,
#[serde(rename = "open")]
Open,
#[serde(rename = "half_open")]
HalfOpen,
}
impl Default for Breaker {
fn default() -> Breaker {
Self::Closed
}
}