add some serde skip
This commit is contained in:
parent
f72ed0d3e5
commit
1ededa3476
@ -291,33 +291,74 @@ pub struct PeerInfoSerde {
|
|||||||
|
|
||||||
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
|
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
|
||||||
pub struct ConfigOidc {
|
pub struct ConfigOidc {
|
||||||
#[serde(default, deserialize_with = "deserialize_usize")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "is_default",
|
||||||
|
deserialize_with = "deserialize_usize"
|
||||||
|
)]
|
||||||
pub max_auth_count: usize,
|
pub max_auth_count: usize,
|
||||||
#[serde(default, deserialize_with = "deserialize_string")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "String::is_empty",
|
||||||
|
deserialize_with = "deserialize_string"
|
||||||
|
)]
|
||||||
pub callback_url: String,
|
pub callback_url: String,
|
||||||
#[serde(
|
#[serde(
|
||||||
default,
|
default,
|
||||||
|
skip_serializing_if = "HashMap::is_empty",
|
||||||
deserialize_with = "deserialize_hashmap_string_configoidcprovider"
|
deserialize_with = "deserialize_hashmap_string_configoidcprovider"
|
||||||
)]
|
)]
|
||||||
pub providers: HashMap<String, ConfigOidcProvider>,
|
pub providers: HashMap<String, ConfigOidcProvider>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn is_default<T: PartialEq + Default>(v: &T) -> bool {
|
||||||
|
*v == T::default()
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
|
#[derive(Debug, Default, Serialize, Deserialize, Clone, PartialEq)]
|
||||||
pub struct ConfigOidcProvider {
|
pub struct ConfigOidcProvider {
|
||||||
// seconds. 0 means never expires
|
// seconds. 0 means never expires
|
||||||
#[serde(default, deserialize_with = "deserialize_u32")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "is_default",
|
||||||
|
deserialize_with = "deserialize_u32"
|
||||||
|
)]
|
||||||
pub refresh_token_expires_in: u32,
|
pub refresh_token_expires_in: u32,
|
||||||
#[serde(default, deserialize_with = "deserialize_string")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "String::is_empty",
|
||||||
|
deserialize_with = "deserialize_string"
|
||||||
|
)]
|
||||||
pub client_id: String,
|
pub client_id: String,
|
||||||
#[serde(default, deserialize_with = "deserialize_string")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "String::is_empty",
|
||||||
|
deserialize_with = "deserialize_string"
|
||||||
|
)]
|
||||||
pub client_secret: String,
|
pub client_secret: String,
|
||||||
#[serde(default, deserialize_with = "deserialize_option_string")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "Option::is_none",
|
||||||
|
deserialize_with = "deserialize_option_string"
|
||||||
|
)]
|
||||||
pub issuer: Option<String>,
|
pub issuer: Option<String>,
|
||||||
#[serde(default, deserialize_with = "deserialize_option_string")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "Option::is_none",
|
||||||
|
deserialize_with = "deserialize_option_string"
|
||||||
|
)]
|
||||||
pub authorization_endpoint: Option<String>,
|
pub authorization_endpoint: Option<String>,
|
||||||
#[serde(default, deserialize_with = "deserialize_option_string")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "Option::is_none",
|
||||||
|
deserialize_with = "deserialize_option_string"
|
||||||
|
)]
|
||||||
pub token_endpoint: Option<String>,
|
pub token_endpoint: Option<String>,
|
||||||
#[serde(default, deserialize_with = "deserialize_option_string")]
|
#[serde(
|
||||||
|
default,
|
||||||
|
skip_serializing_if = "Option::is_none",
|
||||||
|
deserialize_with = "deserialize_option_string"
|
||||||
|
)]
|
||||||
pub userinfo_endpoint: Option<String>,
|
pub userinfo_endpoint: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user