use serde::{Deserialize, Serialize};
use super::QoSConfiguration;
#[derive(Debug, Clone, Default, PartialEq, Eq, Deserialize, Serialize)]
#[serde(rename_all = "PascalCase")]
pub struct ResourcePool {
pub name: String,
pub create_time: Option<String>,
}
#[derive(Debug, Clone, Default, PartialEq, Eq, Deserialize, Serialize)]
#[serde(rename_all = "PascalCase")]
pub struct ResourcePoolBucket {
pub name: String,
pub group: Option<String>,
pub join_time: Option<String>,
}
#[derive(Debug, Clone, Default, PartialEq, Eq, Deserialize, Serialize)]
#[serde(rename_all = "PascalCase")]
pub struct GroupBucketInfo {
pub bucket_name: String,
}
#[derive(Debug, Clone, Default, PartialEq, Eq, Deserialize, Serialize)]
#[serde(rename_all = "PascalCase")]
pub struct ResourcePoolBucketGroup {
pub name: String,
#[serde(default, rename = "GroupBucketInfo")]
pub buckets: Vec<GroupBucketInfo>,
}
#[derive(Debug, Clone, Default, PartialEq, Eq, Deserialize, Serialize)]
#[serde(rename = "ResourcePoolBucketGroupQoSInfo", rename_all = "PascalCase")]
pub struct ResourcePoolBucketGroupQoSInfo {
#[serde(rename = "BucketGroup", alias = "ResourcePoolBucketGroup")]
pub bucket_group: String,
#[serde(rename = "QoSConfiguration")]
pub qos_configuration: QoSConfiguration,
}