use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ListKeysRequest {
#[serde(skip_serializing_if = "Option::is_none")]
pub limit: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub marker: Option<String>,
}
impl ListKeysRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
limit: Some(100),
marker: Some("test-marker".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ListKeysResponse {
#[serde(default)]
#[serde(skip_serializing_if = "Vec::is_empty")]
pub keys: Vec<KeyListEntry>,
#[serde(skip_serializing_if = "Option::is_none")]
pub next_marker: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub truncated: Option<bool>,
}
impl ListKeysResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
keys: vec![],
next_marker: Some("test-next_marker".into()),
truncated: Some(false),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct KeyListEntry {
#[serde(skip_serializing_if = "Option::is_none")]
pub key_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub key_arn: Option<String>,
}
impl KeyListEntry {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key_id: Some("test-key_id".into()),
key_arn: Some("test-key_arn".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeKeyRequest {
pub key_id: String,
}
impl DescribeKeyRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key_id: "test-key_id".into(),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DescribeKeyResponse {
#[serde(skip_serializing_if = "Option::is_none")]
pub key_metadata: Option<KeyMetadata>,
}
impl DescribeKeyResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key_metadata: Some(KeyMetadata::fixture()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct KeyMetadata {
pub key_id: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub arn: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub creation_date: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub enabled: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub key_usage: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub key_state: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub deletion_date: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub key_manager: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub key_spec: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub multi_region: Option<bool>,
}
impl KeyMetadata {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key_id: "test-key_id".into(),
arn: Some("test-arn".into()),
enabled: Some(false),
description: Some("test-description".into()),
key_usage: Some("test-key_usage".into()),
key_state: Some("test-key_state".into()),
key_manager: Some("test-key_manager".into()),
key_spec: Some("test-key_spec".into()),
multi_region: Some(false),
..Default::default()
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct GetKeyRotationStatusRequest {
pub key_id: String,
}
impl GetKeyRotationStatusRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key_id: "test-key_id".into(),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct GetKeyRotationStatusResponse {
#[serde(skip_serializing_if = "Option::is_none")]
pub key_rotation_enabled: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub key_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub rotation_period_in_days: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub next_rotation_date: Option<f64>,
}
impl GetKeyRotationStatusResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key_rotation_enabled: Some(false),
key_id: Some("test-key_id".into()),
rotation_period_in_days: Some(100),
..Default::default()
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct EnableKeyRotationRequest {
pub key_id: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub rotation_period_in_days: Option<i32>,
}
impl EnableKeyRotationRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
key_id: "test-key_id".into(),
rotation_period_in_days: Some(100),
}
}
}