#![allow(rustdoc::redundant_explicit_links)]
#![allow(rustdoc::broken_intra_doc_links)]
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct PendingRenameInfo {
pub operation: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl PendingRenameInfo {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_operation<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.operation = v.into();
self
}
}
impl wkt::message::Message for PendingRenameInfo {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.PendingRenameInfo"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for PendingRenameInfo {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__operation,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for PendingRenameInfo")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"operation" => Ok(__FieldTag::__operation),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = PendingRenameInfo;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct PendingRenameInfo")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__operation => {
if !fields.insert(__FieldTag::__operation) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for operation",
));
}
result.operation = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for PendingRenameInfo {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.operation.is_empty() {
state.serialize_entry("operation", &self.operation)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct Folder {
pub name: std::string::String,
pub metageneration: i64,
pub create_time: std::option::Option<wkt::Timestamp>,
pub update_time: std::option::Option<wkt::Timestamp>,
pub pending_rename_info: std::option::Option<crate::model::PendingRenameInfo>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl Folder {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_metageneration<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
self.metageneration = v.into();
self
}
pub fn set_create_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = v.map(|x| x.into());
self
}
pub fn set_update_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = v.map(|x| x.into());
self
}
pub fn set_pending_rename_info<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::PendingRenameInfo>,
{
self.pending_rename_info = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_pending_rename_info<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::PendingRenameInfo>,
{
self.pending_rename_info = v.map(|x| x.into());
self
}
}
impl wkt::message::Message for Folder {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.Folder"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for Folder {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__metageneration,
__create_time,
__update_time,
__pending_rename_info,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for Folder")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"metageneration" => Ok(__FieldTag::__metageneration),
"createTime" => Ok(__FieldTag::__create_time),
"create_time" => Ok(__FieldTag::__create_time),
"updateTime" => Ok(__FieldTag::__update_time),
"update_time" => Ok(__FieldTag::__update_time),
"pendingRenameInfo" => Ok(__FieldTag::__pending_rename_info),
"pending_rename_info" => Ok(__FieldTag::__pending_rename_info),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = Folder;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct Folder")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__metageneration => {
if !fields.insert(__FieldTag::__metageneration) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for metageneration",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.metageneration =
map.next_value::<__With>()?.0.unwrap_or_default();
}
__FieldTag::__create_time => {
if !fields.insert(__FieldTag::__create_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for create_time",
));
}
result.create_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__update_time => {
if !fields.insert(__FieldTag::__update_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_time",
));
}
result.update_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__pending_rename_info => {
if !fields.insert(__FieldTag::__pending_rename_info) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for pending_rename_info",
));
}
result.pending_rename_info = map
.next_value::<std::option::Option<crate::model::PendingRenameInfo>>(
)?;
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for Folder {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !wkt::internal::is_default(&self.metageneration) {
struct __With<'a>(&'a i64);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<wkt::internal::I64>::serialize(self.0, serializer)
}
}
state.serialize_entry("metageneration", &__With(&self.metageneration))?;
}
if self.create_time.is_some() {
state.serialize_entry("createTime", &self.create_time)?;
}
if self.update_time.is_some() {
state.serialize_entry("updateTime", &self.update_time)?;
}
if self.pending_rename_info.is_some() {
state.serialize_entry("pendingRenameInfo", &self.pending_rename_info)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct GetFolderRequest {
pub name: std::string::String,
pub if_metageneration_match: std::option::Option<i64>,
pub if_metageneration_not_match: std::option::Option<i64>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl GetFolderRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_if_metageneration_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = v.map(|x| x.into());
self
}
pub fn set_if_metageneration_not_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_not_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for GetFolderRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.GetFolderRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for GetFolderRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__if_metageneration_match,
__if_metageneration_not_match,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for GetFolderRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"ifMetagenerationMatch" => Ok(__FieldTag::__if_metageneration_match),
"if_metageneration_match" => Ok(__FieldTag::__if_metageneration_match),
"ifMetagenerationNotMatch" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"if_metageneration_not_match" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = GetFolderRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct GetFolderRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__if_metageneration_match => {
if !fields.insert(__FieldTag::__if_metageneration_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_match = map.next_value::<__With>()?.0;
}
__FieldTag::__if_metageneration_not_match => {
if !fields.insert(__FieldTag::__if_metageneration_not_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_not_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_not_match = map.next_value::<__With>()?.0;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for GetFolderRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if self.if_metageneration_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationMatch",
&__With(&self.if_metageneration_match),
)?;
}
if self.if_metageneration_not_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationNotMatch",
&__With(&self.if_metageneration_not_match),
)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CreateFolderRequest {
pub parent: std::string::String,
pub folder: std::option::Option<crate::model::Folder>,
pub folder_id: std::string::String,
pub recursive: bool,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CreateFolderRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.parent = v.into();
self
}
pub fn set_folder<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::Folder>,
{
self.folder = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_folder<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::Folder>,
{
self.folder = v.map(|x| x.into());
self
}
pub fn set_folder_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.folder_id = v.into();
self
}
pub fn set_recursive<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
self.recursive = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for CreateFolderRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.CreateFolderRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CreateFolderRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__parent,
__folder,
__folder_id,
__recursive,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for CreateFolderRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"parent" => Ok(__FieldTag::__parent),
"folder" => Ok(__FieldTag::__folder),
"folderId" => Ok(__FieldTag::__folder_id),
"folder_id" => Ok(__FieldTag::__folder_id),
"recursive" => Ok(__FieldTag::__recursive),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CreateFolderRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CreateFolderRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__parent => {
if !fields.insert(__FieldTag::__parent) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for parent",
));
}
result.parent = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__folder => {
if !fields.insert(__FieldTag::__folder) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for folder",
));
}
result.folder =
map.next_value::<std::option::Option<crate::model::Folder>>()?;
}
__FieldTag::__folder_id => {
if !fields.insert(__FieldTag::__folder_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for folder_id",
));
}
result.folder_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__recursive => {
if !fields.insert(__FieldTag::__recursive) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for recursive",
));
}
result.recursive = map
.next_value::<std::option::Option<bool>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CreateFolderRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.parent.is_empty() {
state.serialize_entry("parent", &self.parent)?;
}
if self.folder.is_some() {
state.serialize_entry("folder", &self.folder)?;
}
if !self.folder_id.is_empty() {
state.serialize_entry("folderId", &self.folder_id)?;
}
if !wkt::internal::is_default(&self.recursive) {
state.serialize_entry("recursive", &self.recursive)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct DeleteFolderRequest {
pub name: std::string::String,
pub if_metageneration_match: std::option::Option<i64>,
pub if_metageneration_not_match: std::option::Option<i64>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl DeleteFolderRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_if_metageneration_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = v.map(|x| x.into());
self
}
pub fn set_if_metageneration_not_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_not_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for DeleteFolderRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.DeleteFolderRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for DeleteFolderRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__if_metageneration_match,
__if_metageneration_not_match,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for DeleteFolderRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"ifMetagenerationMatch" => Ok(__FieldTag::__if_metageneration_match),
"if_metageneration_match" => Ok(__FieldTag::__if_metageneration_match),
"ifMetagenerationNotMatch" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"if_metageneration_not_match" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = DeleteFolderRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct DeleteFolderRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__if_metageneration_match => {
if !fields.insert(__FieldTag::__if_metageneration_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_match = map.next_value::<__With>()?.0;
}
__FieldTag::__if_metageneration_not_match => {
if !fields.insert(__FieldTag::__if_metageneration_not_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_not_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_not_match = map.next_value::<__With>()?.0;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for DeleteFolderRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if self.if_metageneration_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationMatch",
&__With(&self.if_metageneration_match),
)?;
}
if self.if_metageneration_not_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationNotMatch",
&__With(&self.if_metageneration_not_match),
)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ListFoldersRequest {
pub parent: std::string::String,
pub page_size: i32,
pub page_token: std::string::String,
pub prefix: std::string::String,
pub delimiter: std::string::String,
pub lexicographic_start: std::string::String,
pub lexicographic_end: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ListFoldersRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.parent = v.into();
self
}
pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
self.page_size = v.into();
self
}
pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.page_token = v.into();
self
}
pub fn set_prefix<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.prefix = v.into();
self
}
pub fn set_delimiter<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.delimiter = v.into();
self
}
pub fn set_lexicographic_start<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.lexicographic_start = v.into();
self
}
pub fn set_lexicographic_end<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.lexicographic_end = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for ListFoldersRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ListFoldersRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ListFoldersRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__parent,
__page_size,
__page_token,
__prefix,
__delimiter,
__lexicographic_start,
__lexicographic_end,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ListFoldersRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"parent" => Ok(__FieldTag::__parent),
"pageSize" => Ok(__FieldTag::__page_size),
"page_size" => Ok(__FieldTag::__page_size),
"pageToken" => Ok(__FieldTag::__page_token),
"page_token" => Ok(__FieldTag::__page_token),
"prefix" => Ok(__FieldTag::__prefix),
"delimiter" => Ok(__FieldTag::__delimiter),
"lexicographicStart" => Ok(__FieldTag::__lexicographic_start),
"lexicographic_start" => Ok(__FieldTag::__lexicographic_start),
"lexicographicEnd" => Ok(__FieldTag::__lexicographic_end),
"lexicographic_end" => Ok(__FieldTag::__lexicographic_end),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ListFoldersRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ListFoldersRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__parent => {
if !fields.insert(__FieldTag::__parent) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for parent",
));
}
result.parent = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__page_size => {
if !fields.insert(__FieldTag::__page_size) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for page_size",
));
}
struct __With(std::option::Option<i32>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
}
}
result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
}
__FieldTag::__page_token => {
if !fields.insert(__FieldTag::__page_token) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for page_token",
));
}
result.page_token = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__prefix => {
if !fields.insert(__FieldTag::__prefix) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for prefix",
));
}
result.prefix = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__delimiter => {
if !fields.insert(__FieldTag::__delimiter) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for delimiter",
));
}
result.delimiter = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__lexicographic_start => {
if !fields.insert(__FieldTag::__lexicographic_start) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for lexicographic_start",
));
}
result.lexicographic_start = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__lexicographic_end => {
if !fields.insert(__FieldTag::__lexicographic_end) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for lexicographic_end",
));
}
result.lexicographic_end = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ListFoldersRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.parent.is_empty() {
state.serialize_entry("parent", &self.parent)?;
}
if !wkt::internal::is_default(&self.page_size) {
struct __With<'a>(&'a i32);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
}
}
state.serialize_entry("pageSize", &__With(&self.page_size))?;
}
if !self.page_token.is_empty() {
state.serialize_entry("pageToken", &self.page_token)?;
}
if !self.prefix.is_empty() {
state.serialize_entry("prefix", &self.prefix)?;
}
if !self.delimiter.is_empty() {
state.serialize_entry("delimiter", &self.delimiter)?;
}
if !self.lexicographic_start.is_empty() {
state.serialize_entry("lexicographicStart", &self.lexicographic_start)?;
}
if !self.lexicographic_end.is_empty() {
state.serialize_entry("lexicographicEnd", &self.lexicographic_end)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ListFoldersResponse {
pub folders: std::vec::Vec<crate::model::Folder>,
pub next_page_token: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ListFoldersResponse {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_folders<T, V>(mut self, v: T) -> Self
where
T: std::iter::IntoIterator<Item = V>,
V: std::convert::Into<crate::model::Folder>,
{
use std::iter::Iterator;
self.folders = v.into_iter().map(|i| i.into()).collect();
self
}
pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.next_page_token = v.into();
self
}
}
impl wkt::message::Message for ListFoldersResponse {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ListFoldersResponse"
}
}
#[doc(hidden)]
impl gax::paginator::internal::PageableResponse for ListFoldersResponse {
type PageItem = crate::model::Folder;
fn items(self) -> std::vec::Vec<Self::PageItem> {
self.folders
}
fn next_page_token(&self) -> std::string::String {
use std::clone::Clone;
self.next_page_token.clone()
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ListFoldersResponse {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__folders,
__next_page_token,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ListFoldersResponse")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"folders" => Ok(__FieldTag::__folders),
"nextPageToken" => Ok(__FieldTag::__next_page_token),
"next_page_token" => Ok(__FieldTag::__next_page_token),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ListFoldersResponse;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ListFoldersResponse")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__folders => {
if !fields.insert(__FieldTag::__folders) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for folders",
));
}
result.folders = map.next_value::<std::option::Option<std::vec::Vec<crate::model::Folder>>>()?.unwrap_or_default();
}
__FieldTag::__next_page_token => {
if !fields.insert(__FieldTag::__next_page_token) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for next_page_token",
));
}
result.next_page_token = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ListFoldersResponse {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.folders.is_empty() {
state.serialize_entry("folders", &self.folders)?;
}
if !self.next_page_token.is_empty() {
state.serialize_entry("nextPageToken", &self.next_page_token)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct RenameFolderRequest {
pub name: std::string::String,
pub destination_folder_id: std::string::String,
pub if_metageneration_match: std::option::Option<i64>,
pub if_metageneration_not_match: std::option::Option<i64>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl RenameFolderRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_destination_folder_id<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.destination_folder_id = v.into();
self
}
pub fn set_if_metageneration_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = v.map(|x| x.into());
self
}
pub fn set_if_metageneration_not_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_not_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for RenameFolderRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.RenameFolderRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for RenameFolderRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__destination_folder_id,
__if_metageneration_match,
__if_metageneration_not_match,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for RenameFolderRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"destinationFolderId" => Ok(__FieldTag::__destination_folder_id),
"destination_folder_id" => Ok(__FieldTag::__destination_folder_id),
"ifMetagenerationMatch" => Ok(__FieldTag::__if_metageneration_match),
"if_metageneration_match" => Ok(__FieldTag::__if_metageneration_match),
"ifMetagenerationNotMatch" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"if_metageneration_not_match" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = RenameFolderRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct RenameFolderRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__destination_folder_id => {
if !fields.insert(__FieldTag::__destination_folder_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for destination_folder_id",
));
}
result.destination_folder_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__if_metageneration_match => {
if !fields.insert(__FieldTag::__if_metageneration_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_match = map.next_value::<__With>()?.0;
}
__FieldTag::__if_metageneration_not_match => {
if !fields.insert(__FieldTag::__if_metageneration_not_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_not_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_not_match = map.next_value::<__With>()?.0;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for RenameFolderRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.destination_folder_id.is_empty() {
state.serialize_entry("destinationFolderId", &self.destination_folder_id)?;
}
if self.if_metageneration_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationMatch",
&__With(&self.if_metageneration_match),
)?;
}
if self.if_metageneration_not_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationNotMatch",
&__With(&self.if_metageneration_not_match),
)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CommonLongRunningOperationMetadata {
pub create_time: std::option::Option<wkt::Timestamp>,
pub end_time: std::option::Option<wkt::Timestamp>,
pub update_time: std::option::Option<wkt::Timestamp>,
pub r#type: std::string::String,
pub requested_cancellation: bool,
pub progress_percent: i32,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CommonLongRunningOperationMetadata {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_create_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = v.map(|x| x.into());
self
}
pub fn set_end_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.end_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_end_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.end_time = v.map(|x| x.into());
self
}
pub fn set_update_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = v.map(|x| x.into());
self
}
pub fn set_type<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.r#type = v.into();
self
}
pub fn set_requested_cancellation<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
self.requested_cancellation = v.into();
self
}
pub fn set_progress_percent<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
self.progress_percent = v.into();
self
}
}
impl wkt::message::Message for CommonLongRunningOperationMetadata {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.CommonLongRunningOperationMetadata"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CommonLongRunningOperationMetadata {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__create_time,
__end_time,
__update_time,
__type,
__requested_cancellation,
__progress_percent,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for CommonLongRunningOperationMetadata")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"createTime" => Ok(__FieldTag::__create_time),
"create_time" => Ok(__FieldTag::__create_time),
"endTime" => Ok(__FieldTag::__end_time),
"end_time" => Ok(__FieldTag::__end_time),
"updateTime" => Ok(__FieldTag::__update_time),
"update_time" => Ok(__FieldTag::__update_time),
"type" => Ok(__FieldTag::__type),
"requestedCancellation" => Ok(__FieldTag::__requested_cancellation),
"requested_cancellation" => Ok(__FieldTag::__requested_cancellation),
"progressPercent" => Ok(__FieldTag::__progress_percent),
"progress_percent" => Ok(__FieldTag::__progress_percent),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CommonLongRunningOperationMetadata;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CommonLongRunningOperationMetadata")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__create_time => {
if !fields.insert(__FieldTag::__create_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for create_time",
));
}
result.create_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__end_time => {
if !fields.insert(__FieldTag::__end_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for end_time",
));
}
result.end_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__update_time => {
if !fields.insert(__FieldTag::__update_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_time",
));
}
result.update_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__type => {
if !fields.insert(__FieldTag::__type) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for type",
));
}
result.r#type = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__requested_cancellation => {
if !fields.insert(__FieldTag::__requested_cancellation) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for requested_cancellation",
));
}
result.requested_cancellation = map
.next_value::<std::option::Option<bool>>()?
.unwrap_or_default();
}
__FieldTag::__progress_percent => {
if !fields.insert(__FieldTag::__progress_percent) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for progress_percent",
));
}
struct __With(std::option::Option<i32>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
}
}
result.progress_percent =
map.next_value::<__With>()?.0.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CommonLongRunningOperationMetadata {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.create_time.is_some() {
state.serialize_entry("createTime", &self.create_time)?;
}
if self.end_time.is_some() {
state.serialize_entry("endTime", &self.end_time)?;
}
if self.update_time.is_some() {
state.serialize_entry("updateTime", &self.update_time)?;
}
if !self.r#type.is_empty() {
state.serialize_entry("type", &self.r#type)?;
}
if !wkt::internal::is_default(&self.requested_cancellation) {
state.serialize_entry("requestedCancellation", &self.requested_cancellation)?;
}
if !wkt::internal::is_default(&self.progress_percent) {
struct __With<'a>(&'a i32);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
}
}
state.serialize_entry("progressPercent", &__With(&self.progress_percent))?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct RenameFolderMetadata {
pub common_metadata: std::option::Option<crate::model::CommonLongRunningOperationMetadata>,
pub source_folder_id: std::string::String,
pub destination_folder_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl RenameFolderMetadata {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_common_metadata<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::CommonLongRunningOperationMetadata>,
{
self.common_metadata = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_common_metadata<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::CommonLongRunningOperationMetadata>,
{
self.common_metadata = v.map(|x| x.into());
self
}
pub fn set_source_folder_id<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.source_folder_id = v.into();
self
}
pub fn set_destination_folder_id<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.destination_folder_id = v.into();
self
}
}
impl wkt::message::Message for RenameFolderMetadata {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.RenameFolderMetadata"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for RenameFolderMetadata {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__common_metadata,
__source_folder_id,
__destination_folder_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for RenameFolderMetadata")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"commonMetadata" => Ok(__FieldTag::__common_metadata),
"common_metadata" => Ok(__FieldTag::__common_metadata),
"sourceFolderId" => Ok(__FieldTag::__source_folder_id),
"source_folder_id" => Ok(__FieldTag::__source_folder_id),
"destinationFolderId" => Ok(__FieldTag::__destination_folder_id),
"destination_folder_id" => Ok(__FieldTag::__destination_folder_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = RenameFolderMetadata;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct RenameFolderMetadata")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__common_metadata => {
if !fields.insert(__FieldTag::__common_metadata) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for common_metadata",
));
}
result.common_metadata = map.next_value::<std::option::Option<
crate::model::CommonLongRunningOperationMetadata,
>>()?;
}
__FieldTag::__source_folder_id => {
if !fields.insert(__FieldTag::__source_folder_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for source_folder_id",
));
}
result.source_folder_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__destination_folder_id => {
if !fields.insert(__FieldTag::__destination_folder_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for destination_folder_id",
));
}
result.destination_folder_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for RenameFolderMetadata {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.common_metadata.is_some() {
state.serialize_entry("commonMetadata", &self.common_metadata)?;
}
if !self.source_folder_id.is_empty() {
state.serialize_entry("sourceFolderId", &self.source_folder_id)?;
}
if !self.destination_folder_id.is_empty() {
state.serialize_entry("destinationFolderId", &self.destination_folder_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct StorageLayout {
pub name: std::string::String,
pub location: std::string::String,
pub location_type: std::string::String,
pub custom_placement_config:
std::option::Option<crate::model::storage_layout::CustomPlacementConfig>,
pub hierarchical_namespace:
std::option::Option<crate::model::storage_layout::HierarchicalNamespace>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl StorageLayout {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_location<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.location = v.into();
self
}
pub fn set_location_type<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.location_type = v.into();
self
}
pub fn set_custom_placement_config<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::storage_layout::CustomPlacementConfig>,
{
self.custom_placement_config = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_custom_placement_config<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::storage_layout::CustomPlacementConfig>,
{
self.custom_placement_config = v.map(|x| x.into());
self
}
pub fn set_hierarchical_namespace<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::storage_layout::HierarchicalNamespace>,
{
self.hierarchical_namespace = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_hierarchical_namespace<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::storage_layout::HierarchicalNamespace>,
{
self.hierarchical_namespace = v.map(|x| x.into());
self
}
}
impl wkt::message::Message for StorageLayout {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.StorageLayout"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for StorageLayout {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__location,
__location_type,
__custom_placement_config,
__hierarchical_namespace,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for StorageLayout")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"location" => Ok(__FieldTag::__location),
"locationType" => Ok(__FieldTag::__location_type),
"location_type" => Ok(__FieldTag::__location_type),
"customPlacementConfig" => Ok(__FieldTag::__custom_placement_config),
"custom_placement_config" => Ok(__FieldTag::__custom_placement_config),
"hierarchicalNamespace" => Ok(__FieldTag::__hierarchical_namespace),
"hierarchical_namespace" => Ok(__FieldTag::__hierarchical_namespace),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = StorageLayout;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct StorageLayout")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__location => {
if !fields.insert(__FieldTag::__location) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for location",
));
}
result.location = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__location_type => {
if !fields.insert(__FieldTag::__location_type) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for location_type",
));
}
result.location_type = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__custom_placement_config => {
if !fields.insert(__FieldTag::__custom_placement_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for custom_placement_config",
));
}
result.custom_placement_config = map.next_value::<std::option::Option<
crate::model::storage_layout::CustomPlacementConfig,
>>()?;
}
__FieldTag::__hierarchical_namespace => {
if !fields.insert(__FieldTag::__hierarchical_namespace) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for hierarchical_namespace",
));
}
result.hierarchical_namespace = map.next_value::<std::option::Option<
crate::model::storage_layout::HierarchicalNamespace,
>>()?;
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for StorageLayout {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.location.is_empty() {
state.serialize_entry("location", &self.location)?;
}
if !self.location_type.is_empty() {
state.serialize_entry("locationType", &self.location_type)?;
}
if self.custom_placement_config.is_some() {
state.serialize_entry("customPlacementConfig", &self.custom_placement_config)?;
}
if self.hierarchical_namespace.is_some() {
state.serialize_entry("hierarchicalNamespace", &self.hierarchical_namespace)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
pub mod storage_layout {
#[allow(unused_imports)]
use super::*;
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CustomPlacementConfig {
pub data_locations: std::vec::Vec<std::string::String>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CustomPlacementConfig {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_data_locations<T, V>(mut self, v: T) -> Self
where
T: std::iter::IntoIterator<Item = V>,
V: std::convert::Into<std::string::String>,
{
use std::iter::Iterator;
self.data_locations = v.into_iter().map(|i| i.into()).collect();
self
}
}
impl wkt::message::Message for CustomPlacementConfig {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.StorageLayout.CustomPlacementConfig"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CustomPlacementConfig {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__data_locations,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(
&self,
formatter: &mut std::fmt::Formatter,
) -> std::fmt::Result {
formatter.write_str("a field name for CustomPlacementConfig")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"dataLocations" => Ok(__FieldTag::__data_locations),
"data_locations" => Ok(__FieldTag::__data_locations),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CustomPlacementConfig;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CustomPlacementConfig")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__data_locations => {
if !fields.insert(__FieldTag::__data_locations) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for data_locations",
));
}
result.data_locations = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CustomPlacementConfig {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.data_locations.is_empty() {
state.serialize_entry("dataLocations", &self.data_locations)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct HierarchicalNamespace {
pub enabled: bool,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl HierarchicalNamespace {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_enabled<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
self.enabled = v.into();
self
}
}
impl wkt::message::Message for HierarchicalNamespace {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.StorageLayout.HierarchicalNamespace"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for HierarchicalNamespace {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__enabled,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(
&self,
formatter: &mut std::fmt::Formatter,
) -> std::fmt::Result {
formatter.write_str("a field name for HierarchicalNamespace")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"enabled" => Ok(__FieldTag::__enabled),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = HierarchicalNamespace;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct HierarchicalNamespace")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__enabled => {
if !fields.insert(__FieldTag::__enabled) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for enabled",
));
}
result.enabled = map
.next_value::<std::option::Option<bool>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for HierarchicalNamespace {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !wkt::internal::is_default(&self.enabled) {
state.serialize_entry("enabled", &self.enabled)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct GetStorageLayoutRequest {
pub name: std::string::String,
pub prefix: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl GetStorageLayoutRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_prefix<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.prefix = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for GetStorageLayoutRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.GetStorageLayoutRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for GetStorageLayoutRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__prefix,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for GetStorageLayoutRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"prefix" => Ok(__FieldTag::__prefix),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = GetStorageLayoutRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct GetStorageLayoutRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__prefix => {
if !fields.insert(__FieldTag::__prefix) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for prefix",
));
}
result.prefix = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for GetStorageLayoutRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.prefix.is_empty() {
state.serialize_entry("prefix", &self.prefix)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ManagedFolder {
pub name: std::string::String,
pub metageneration: i64,
pub create_time: std::option::Option<wkt::Timestamp>,
pub update_time: std::option::Option<wkt::Timestamp>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ManagedFolder {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_metageneration<T: std::convert::Into<i64>>(mut self, v: T) -> Self {
self.metageneration = v.into();
self
}
pub fn set_create_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = v.map(|x| x.into());
self
}
pub fn set_update_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = v.map(|x| x.into());
self
}
}
impl wkt::message::Message for ManagedFolder {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ManagedFolder"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ManagedFolder {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__metageneration,
__create_time,
__update_time,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ManagedFolder")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"metageneration" => Ok(__FieldTag::__metageneration),
"createTime" => Ok(__FieldTag::__create_time),
"create_time" => Ok(__FieldTag::__create_time),
"updateTime" => Ok(__FieldTag::__update_time),
"update_time" => Ok(__FieldTag::__update_time),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ManagedFolder;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ManagedFolder")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__metageneration => {
if !fields.insert(__FieldTag::__metageneration) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for metageneration",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.metageneration =
map.next_value::<__With>()?.0.unwrap_or_default();
}
__FieldTag::__create_time => {
if !fields.insert(__FieldTag::__create_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for create_time",
));
}
result.create_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__update_time => {
if !fields.insert(__FieldTag::__update_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_time",
));
}
result.update_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ManagedFolder {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !wkt::internal::is_default(&self.metageneration) {
struct __With<'a>(&'a i64);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<wkt::internal::I64>::serialize(self.0, serializer)
}
}
state.serialize_entry("metageneration", &__With(&self.metageneration))?;
}
if self.create_time.is_some() {
state.serialize_entry("createTime", &self.create_time)?;
}
if self.update_time.is_some() {
state.serialize_entry("updateTime", &self.update_time)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct GetManagedFolderRequest {
pub name: std::string::String,
pub if_metageneration_match: std::option::Option<i64>,
pub if_metageneration_not_match: std::option::Option<i64>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl GetManagedFolderRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_if_metageneration_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = v.map(|x| x.into());
self
}
pub fn set_if_metageneration_not_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_not_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for GetManagedFolderRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.GetManagedFolderRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for GetManagedFolderRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__if_metageneration_match,
__if_metageneration_not_match,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for GetManagedFolderRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"ifMetagenerationMatch" => Ok(__FieldTag::__if_metageneration_match),
"if_metageneration_match" => Ok(__FieldTag::__if_metageneration_match),
"ifMetagenerationNotMatch" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"if_metageneration_not_match" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = GetManagedFolderRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct GetManagedFolderRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__if_metageneration_match => {
if !fields.insert(__FieldTag::__if_metageneration_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_match = map.next_value::<__With>()?.0;
}
__FieldTag::__if_metageneration_not_match => {
if !fields.insert(__FieldTag::__if_metageneration_not_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_not_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_not_match = map.next_value::<__With>()?.0;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for GetManagedFolderRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if self.if_metageneration_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationMatch",
&__With(&self.if_metageneration_match),
)?;
}
if self.if_metageneration_not_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationNotMatch",
&__With(&self.if_metageneration_not_match),
)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CreateManagedFolderRequest {
pub parent: std::string::String,
pub managed_folder: std::option::Option<crate::model::ManagedFolder>,
pub managed_folder_id: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CreateManagedFolderRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.parent = v.into();
self
}
pub fn set_managed_folder<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::ManagedFolder>,
{
self.managed_folder = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_managed_folder<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::ManagedFolder>,
{
self.managed_folder = v.map(|x| x.into());
self
}
pub fn set_managed_folder_id<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.managed_folder_id = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for CreateManagedFolderRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.CreateManagedFolderRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CreateManagedFolderRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__parent,
__managed_folder,
__managed_folder_id,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for CreateManagedFolderRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"parent" => Ok(__FieldTag::__parent),
"managedFolder" => Ok(__FieldTag::__managed_folder),
"managed_folder" => Ok(__FieldTag::__managed_folder),
"managedFolderId" => Ok(__FieldTag::__managed_folder_id),
"managed_folder_id" => Ok(__FieldTag::__managed_folder_id),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CreateManagedFolderRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CreateManagedFolderRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__parent => {
if !fields.insert(__FieldTag::__parent) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for parent",
));
}
result.parent = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__managed_folder => {
if !fields.insert(__FieldTag::__managed_folder) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for managed_folder",
));
}
result.managed_folder = map
.next_value::<std::option::Option<crate::model::ManagedFolder>>()?;
}
__FieldTag::__managed_folder_id => {
if !fields.insert(__FieldTag::__managed_folder_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for managed_folder_id",
));
}
result.managed_folder_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CreateManagedFolderRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.parent.is_empty() {
state.serialize_entry("parent", &self.parent)?;
}
if self.managed_folder.is_some() {
state.serialize_entry("managedFolder", &self.managed_folder)?;
}
if !self.managed_folder_id.is_empty() {
state.serialize_entry("managedFolderId", &self.managed_folder_id)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct DeleteManagedFolderRequest {
pub name: std::string::String,
pub if_metageneration_match: std::option::Option<i64>,
pub if_metageneration_not_match: std::option::Option<i64>,
pub allow_non_empty: bool,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl DeleteManagedFolderRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_if_metageneration_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_match = v.map(|x| x.into());
self
}
pub fn set_if_metageneration_not_match<T>(mut self, v: T) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_if_metageneration_not_match<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<i64>,
{
self.if_metageneration_not_match = v.map(|x| x.into());
self
}
pub fn set_allow_non_empty<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
self.allow_non_empty = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for DeleteManagedFolderRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.DeleteManagedFolderRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for DeleteManagedFolderRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__if_metageneration_match,
__if_metageneration_not_match,
__allow_non_empty,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for DeleteManagedFolderRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"ifMetagenerationMatch" => Ok(__FieldTag::__if_metageneration_match),
"if_metageneration_match" => Ok(__FieldTag::__if_metageneration_match),
"ifMetagenerationNotMatch" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"if_metageneration_not_match" => {
Ok(__FieldTag::__if_metageneration_not_match)
}
"allowNonEmpty" => Ok(__FieldTag::__allow_non_empty),
"allow_non_empty" => Ok(__FieldTag::__allow_non_empty),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = DeleteManagedFolderRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct DeleteManagedFolderRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__if_metageneration_match => {
if !fields.insert(__FieldTag::__if_metageneration_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_match = map.next_value::<__With>()?.0;
}
__FieldTag::__if_metageneration_not_match => {
if !fields.insert(__FieldTag::__if_metageneration_not_match) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for if_metageneration_not_match",
));
}
struct __With(std::option::Option<i64>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I64> >::deserialize(deserializer).map(__With)
}
}
result.if_metageneration_not_match = map.next_value::<__With>()?.0;
}
__FieldTag::__allow_non_empty => {
if !fields.insert(__FieldTag::__allow_non_empty) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for allow_non_empty",
));
}
result.allow_non_empty = map
.next_value::<std::option::Option<bool>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for DeleteManagedFolderRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if self.if_metageneration_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationMatch",
&__With(&self.if_metageneration_match),
)?;
}
if self.if_metageneration_not_match.is_some() {
struct __With<'a>(&'a std::option::Option<i64>);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<std::option::Option<wkt::internal::I64>>::serialize(
self.0, serializer,
)
}
}
state.serialize_entry(
"ifMetagenerationNotMatch",
&__With(&self.if_metageneration_not_match),
)?;
}
if !wkt::internal::is_default(&self.allow_non_empty) {
state.serialize_entry("allowNonEmpty", &self.allow_non_empty)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ListManagedFoldersRequest {
pub parent: std::string::String,
pub page_size: i32,
pub page_token: std::string::String,
pub prefix: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ListManagedFoldersRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.parent = v.into();
self
}
pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
self.page_size = v.into();
self
}
pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.page_token = v.into();
self
}
pub fn set_prefix<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.prefix = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for ListManagedFoldersRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ListManagedFoldersRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ListManagedFoldersRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__parent,
__page_size,
__page_token,
__prefix,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ListManagedFoldersRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"parent" => Ok(__FieldTag::__parent),
"pageSize" => Ok(__FieldTag::__page_size),
"page_size" => Ok(__FieldTag::__page_size),
"pageToken" => Ok(__FieldTag::__page_token),
"page_token" => Ok(__FieldTag::__page_token),
"prefix" => Ok(__FieldTag::__prefix),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ListManagedFoldersRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ListManagedFoldersRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__parent => {
if !fields.insert(__FieldTag::__parent) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for parent",
));
}
result.parent = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__page_size => {
if !fields.insert(__FieldTag::__page_size) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for page_size",
));
}
struct __With(std::option::Option<i32>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
}
}
result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
}
__FieldTag::__page_token => {
if !fields.insert(__FieldTag::__page_token) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for page_token",
));
}
result.page_token = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__prefix => {
if !fields.insert(__FieldTag::__prefix) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for prefix",
));
}
result.prefix = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ListManagedFoldersRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.parent.is_empty() {
state.serialize_entry("parent", &self.parent)?;
}
if !wkt::internal::is_default(&self.page_size) {
struct __With<'a>(&'a i32);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
}
}
state.serialize_entry("pageSize", &__With(&self.page_size))?;
}
if !self.page_token.is_empty() {
state.serialize_entry("pageToken", &self.page_token)?;
}
if !self.prefix.is_empty() {
state.serialize_entry("prefix", &self.prefix)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ListManagedFoldersResponse {
pub managed_folders: std::vec::Vec<crate::model::ManagedFolder>,
pub next_page_token: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ListManagedFoldersResponse {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_managed_folders<T, V>(mut self, v: T) -> Self
where
T: std::iter::IntoIterator<Item = V>,
V: std::convert::Into<crate::model::ManagedFolder>,
{
use std::iter::Iterator;
self.managed_folders = v.into_iter().map(|i| i.into()).collect();
self
}
pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.next_page_token = v.into();
self
}
}
impl wkt::message::Message for ListManagedFoldersResponse {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ListManagedFoldersResponse"
}
}
#[doc(hidden)]
impl gax::paginator::internal::PageableResponse for ListManagedFoldersResponse {
type PageItem = crate::model::ManagedFolder;
fn items(self) -> std::vec::Vec<Self::PageItem> {
self.managed_folders
}
fn next_page_token(&self) -> std::string::String {
use std::clone::Clone;
self.next_page_token.clone()
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ListManagedFoldersResponse {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__managed_folders,
__next_page_token,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ListManagedFoldersResponse")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"managedFolders" => Ok(__FieldTag::__managed_folders),
"managed_folders" => Ok(__FieldTag::__managed_folders),
"nextPageToken" => Ok(__FieldTag::__next_page_token),
"next_page_token" => Ok(__FieldTag::__next_page_token),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ListManagedFoldersResponse;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ListManagedFoldersResponse")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__managed_folders => {
if !fields.insert(__FieldTag::__managed_folders) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for managed_folders",
));
}
result.managed_folders = map.next_value::<std::option::Option<std::vec::Vec<crate::model::ManagedFolder>>>()?.unwrap_or_default();
}
__FieldTag::__next_page_token => {
if !fields.insert(__FieldTag::__next_page_token) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for next_page_token",
));
}
result.next_page_token = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ListManagedFoldersResponse {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.managed_folders.is_empty() {
state.serialize_entry("managedFolders", &self.managed_folders)?;
}
if !self.next_page_token.is_empty() {
state.serialize_entry("nextPageToken", &self.next_page_token)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CreateAnywhereCacheMetadata {
pub common_metadata: std::option::Option<crate::model::CommonLongRunningOperationMetadata>,
pub anywhere_cache_id: std::option::Option<std::string::String>,
pub zone: std::option::Option<std::string::String>,
pub ttl: std::option::Option<wkt::Duration>,
pub admission_policy: std::option::Option<std::string::String>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CreateAnywhereCacheMetadata {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_common_metadata<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::CommonLongRunningOperationMetadata>,
{
self.common_metadata = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_common_metadata<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::CommonLongRunningOperationMetadata>,
{
self.common_metadata = v.map(|x| x.into());
self
}
pub fn set_anywhere_cache_id<T>(mut self, v: T) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.anywhere_cache_id = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_anywhere_cache_id<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.anywhere_cache_id = v.map(|x| x.into());
self
}
pub fn set_zone<T>(mut self, v: T) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.zone = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_zone<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.zone = v.map(|x| x.into());
self
}
pub fn set_ttl<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Duration>,
{
self.ttl = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_ttl<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Duration>,
{
self.ttl = v.map(|x| x.into());
self
}
pub fn set_admission_policy<T>(mut self, v: T) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.admission_policy = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_admission_policy<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.admission_policy = v.map(|x| x.into());
self
}
}
impl wkt::message::Message for CreateAnywhereCacheMetadata {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.CreateAnywhereCacheMetadata"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CreateAnywhereCacheMetadata {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__common_metadata,
__anywhere_cache_id,
__zone,
__ttl,
__admission_policy,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for CreateAnywhereCacheMetadata")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"commonMetadata" => Ok(__FieldTag::__common_metadata),
"common_metadata" => Ok(__FieldTag::__common_metadata),
"anywhereCacheId" => Ok(__FieldTag::__anywhere_cache_id),
"anywhere_cache_id" => Ok(__FieldTag::__anywhere_cache_id),
"zone" => Ok(__FieldTag::__zone),
"ttl" => Ok(__FieldTag::__ttl),
"admissionPolicy" => Ok(__FieldTag::__admission_policy),
"admission_policy" => Ok(__FieldTag::__admission_policy),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CreateAnywhereCacheMetadata;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CreateAnywhereCacheMetadata")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__common_metadata => {
if !fields.insert(__FieldTag::__common_metadata) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for common_metadata",
));
}
result.common_metadata = map.next_value::<std::option::Option<
crate::model::CommonLongRunningOperationMetadata,
>>()?;
}
__FieldTag::__anywhere_cache_id => {
if !fields.insert(__FieldTag::__anywhere_cache_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for anywhere_cache_id",
));
}
result.anywhere_cache_id =
map.next_value::<std::option::Option<std::string::String>>()?;
}
__FieldTag::__zone => {
if !fields.insert(__FieldTag::__zone) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for zone",
));
}
result.zone =
map.next_value::<std::option::Option<std::string::String>>()?;
}
__FieldTag::__ttl => {
if !fields.insert(__FieldTag::__ttl) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for ttl",
));
}
result.ttl = map.next_value::<std::option::Option<wkt::Duration>>()?;
}
__FieldTag::__admission_policy => {
if !fields.insert(__FieldTag::__admission_policy) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for admission_policy",
));
}
result.admission_policy =
map.next_value::<std::option::Option<std::string::String>>()?;
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CreateAnywhereCacheMetadata {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.common_metadata.is_some() {
state.serialize_entry("commonMetadata", &self.common_metadata)?;
}
if self.anywhere_cache_id.is_some() {
state.serialize_entry("anywhereCacheId", &self.anywhere_cache_id)?;
}
if self.zone.is_some() {
state.serialize_entry("zone", &self.zone)?;
}
if self.ttl.is_some() {
state.serialize_entry("ttl", &self.ttl)?;
}
if self.admission_policy.is_some() {
state.serialize_entry("admissionPolicy", &self.admission_policy)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct UpdateAnywhereCacheMetadata {
pub common_metadata: std::option::Option<crate::model::CommonLongRunningOperationMetadata>,
pub anywhere_cache_id: std::option::Option<std::string::String>,
pub zone: std::option::Option<std::string::String>,
pub ttl: std::option::Option<wkt::Duration>,
pub admission_policy: std::option::Option<std::string::String>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl UpdateAnywhereCacheMetadata {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_common_metadata<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::CommonLongRunningOperationMetadata>,
{
self.common_metadata = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_common_metadata<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::CommonLongRunningOperationMetadata>,
{
self.common_metadata = v.map(|x| x.into());
self
}
pub fn set_anywhere_cache_id<T>(mut self, v: T) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.anywhere_cache_id = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_anywhere_cache_id<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.anywhere_cache_id = v.map(|x| x.into());
self
}
pub fn set_zone<T>(mut self, v: T) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.zone = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_zone<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.zone = v.map(|x| x.into());
self
}
pub fn set_ttl<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Duration>,
{
self.ttl = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_ttl<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Duration>,
{
self.ttl = v.map(|x| x.into());
self
}
pub fn set_admission_policy<T>(mut self, v: T) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.admission_policy = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_admission_policy<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<std::string::String>,
{
self.admission_policy = v.map(|x| x.into());
self
}
}
impl wkt::message::Message for UpdateAnywhereCacheMetadata {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.UpdateAnywhereCacheMetadata"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for UpdateAnywhereCacheMetadata {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__common_metadata,
__anywhere_cache_id,
__zone,
__ttl,
__admission_policy,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for UpdateAnywhereCacheMetadata")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"commonMetadata" => Ok(__FieldTag::__common_metadata),
"common_metadata" => Ok(__FieldTag::__common_metadata),
"anywhereCacheId" => Ok(__FieldTag::__anywhere_cache_id),
"anywhere_cache_id" => Ok(__FieldTag::__anywhere_cache_id),
"zone" => Ok(__FieldTag::__zone),
"ttl" => Ok(__FieldTag::__ttl),
"admissionPolicy" => Ok(__FieldTag::__admission_policy),
"admission_policy" => Ok(__FieldTag::__admission_policy),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = UpdateAnywhereCacheMetadata;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct UpdateAnywhereCacheMetadata")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__common_metadata => {
if !fields.insert(__FieldTag::__common_metadata) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for common_metadata",
));
}
result.common_metadata = map.next_value::<std::option::Option<
crate::model::CommonLongRunningOperationMetadata,
>>()?;
}
__FieldTag::__anywhere_cache_id => {
if !fields.insert(__FieldTag::__anywhere_cache_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for anywhere_cache_id",
));
}
result.anywhere_cache_id =
map.next_value::<std::option::Option<std::string::String>>()?;
}
__FieldTag::__zone => {
if !fields.insert(__FieldTag::__zone) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for zone",
));
}
result.zone =
map.next_value::<std::option::Option<std::string::String>>()?;
}
__FieldTag::__ttl => {
if !fields.insert(__FieldTag::__ttl) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for ttl",
));
}
result.ttl = map.next_value::<std::option::Option<wkt::Duration>>()?;
}
__FieldTag::__admission_policy => {
if !fields.insert(__FieldTag::__admission_policy) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for admission_policy",
));
}
result.admission_policy =
map.next_value::<std::option::Option<std::string::String>>()?;
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for UpdateAnywhereCacheMetadata {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.common_metadata.is_some() {
state.serialize_entry("commonMetadata", &self.common_metadata)?;
}
if self.anywhere_cache_id.is_some() {
state.serialize_entry("anywhereCacheId", &self.anywhere_cache_id)?;
}
if self.zone.is_some() {
state.serialize_entry("zone", &self.zone)?;
}
if self.ttl.is_some() {
state.serialize_entry("ttl", &self.ttl)?;
}
if self.admission_policy.is_some() {
state.serialize_entry("admissionPolicy", &self.admission_policy)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct AnywhereCache {
pub name: std::string::String,
pub zone: std::string::String,
pub ttl: std::option::Option<wkt::Duration>,
pub admission_policy: std::string::String,
pub state: std::string::String,
pub create_time: std::option::Option<wkt::Timestamp>,
pub update_time: std::option::Option<wkt::Timestamp>,
pub pending_update: bool,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl AnywhereCache {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_zone<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.zone = v.into();
self
}
pub fn set_ttl<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Duration>,
{
self.ttl = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_ttl<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Duration>,
{
self.ttl = v.map(|x| x.into());
self
}
pub fn set_admission_policy<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.admission_policy = v.into();
self
}
pub fn set_state<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.state = v.into();
self
}
pub fn set_create_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_create_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.create_time = v.map(|x| x.into());
self
}
pub fn set_update_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = v.map(|x| x.into());
self
}
pub fn set_pending_update<T: std::convert::Into<bool>>(mut self, v: T) -> Self {
self.pending_update = v.into();
self
}
}
impl wkt::message::Message for AnywhereCache {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.AnywhereCache"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for AnywhereCache {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__zone,
__ttl,
__admission_policy,
__state,
__create_time,
__update_time,
__pending_update,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for AnywhereCache")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"zone" => Ok(__FieldTag::__zone),
"ttl" => Ok(__FieldTag::__ttl),
"admissionPolicy" => Ok(__FieldTag::__admission_policy),
"admission_policy" => Ok(__FieldTag::__admission_policy),
"state" => Ok(__FieldTag::__state),
"createTime" => Ok(__FieldTag::__create_time),
"create_time" => Ok(__FieldTag::__create_time),
"updateTime" => Ok(__FieldTag::__update_time),
"update_time" => Ok(__FieldTag::__update_time),
"pendingUpdate" => Ok(__FieldTag::__pending_update),
"pending_update" => Ok(__FieldTag::__pending_update),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = AnywhereCache;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct AnywhereCache")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__zone => {
if !fields.insert(__FieldTag::__zone) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for zone",
));
}
result.zone = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__ttl => {
if !fields.insert(__FieldTag::__ttl) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for ttl",
));
}
result.ttl = map.next_value::<std::option::Option<wkt::Duration>>()?;
}
__FieldTag::__admission_policy => {
if !fields.insert(__FieldTag::__admission_policy) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for admission_policy",
));
}
result.admission_policy = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__state => {
if !fields.insert(__FieldTag::__state) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for state",
));
}
result.state = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__create_time => {
if !fields.insert(__FieldTag::__create_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for create_time",
));
}
result.create_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__update_time => {
if !fields.insert(__FieldTag::__update_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_time",
));
}
result.update_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__pending_update => {
if !fields.insert(__FieldTag::__pending_update) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for pending_update",
));
}
result.pending_update = map
.next_value::<std::option::Option<bool>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for AnywhereCache {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.zone.is_empty() {
state.serialize_entry("zone", &self.zone)?;
}
if self.ttl.is_some() {
state.serialize_entry("ttl", &self.ttl)?;
}
if !self.admission_policy.is_empty() {
state.serialize_entry("admissionPolicy", &self.admission_policy)?;
}
if !self.state.is_empty() {
state.serialize_entry("state", &self.state)?;
}
if self.create_time.is_some() {
state.serialize_entry("createTime", &self.create_time)?;
}
if self.update_time.is_some() {
state.serialize_entry("updateTime", &self.update_time)?;
}
if !wkt::internal::is_default(&self.pending_update) {
state.serialize_entry("pendingUpdate", &self.pending_update)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CreateAnywhereCacheRequest {
pub parent: std::string::String,
pub anywhere_cache: std::option::Option<crate::model::AnywhereCache>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CreateAnywhereCacheRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.parent = v.into();
self
}
pub fn set_anywhere_cache<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::AnywhereCache>,
{
self.anywhere_cache = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_anywhere_cache<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::AnywhereCache>,
{
self.anywhere_cache = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for CreateAnywhereCacheRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.CreateAnywhereCacheRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CreateAnywhereCacheRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__parent,
__anywhere_cache,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for CreateAnywhereCacheRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"parent" => Ok(__FieldTag::__parent),
"anywhereCache" => Ok(__FieldTag::__anywhere_cache),
"anywhere_cache" => Ok(__FieldTag::__anywhere_cache),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CreateAnywhereCacheRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CreateAnywhereCacheRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__parent => {
if !fields.insert(__FieldTag::__parent) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for parent",
));
}
result.parent = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__anywhere_cache => {
if !fields.insert(__FieldTag::__anywhere_cache) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for anywhere_cache",
));
}
result.anywhere_cache = map
.next_value::<std::option::Option<crate::model::AnywhereCache>>()?;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CreateAnywhereCacheRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.parent.is_empty() {
state.serialize_entry("parent", &self.parent)?;
}
if self.anywhere_cache.is_some() {
state.serialize_entry("anywhereCache", &self.anywhere_cache)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct UpdateAnywhereCacheRequest {
pub anywhere_cache: std::option::Option<crate::model::AnywhereCache>,
pub update_mask: std::option::Option<wkt::FieldMask>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl UpdateAnywhereCacheRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_anywhere_cache<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::AnywhereCache>,
{
self.anywhere_cache = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_anywhere_cache<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::AnywhereCache>,
{
self.anywhere_cache = v.map(|x| x.into());
self
}
pub fn set_update_mask<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for UpdateAnywhereCacheRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.UpdateAnywhereCacheRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for UpdateAnywhereCacheRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__anywhere_cache,
__update_mask,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for UpdateAnywhereCacheRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"anywhereCache" => Ok(__FieldTag::__anywhere_cache),
"anywhere_cache" => Ok(__FieldTag::__anywhere_cache),
"updateMask" => Ok(__FieldTag::__update_mask),
"update_mask" => Ok(__FieldTag::__update_mask),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = UpdateAnywhereCacheRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct UpdateAnywhereCacheRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__anywhere_cache => {
if !fields.insert(__FieldTag::__anywhere_cache) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for anywhere_cache",
));
}
result.anywhere_cache = map
.next_value::<std::option::Option<crate::model::AnywhereCache>>()?;
}
__FieldTag::__update_mask => {
if !fields.insert(__FieldTag::__update_mask) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_mask",
));
}
result.update_mask =
map.next_value::<std::option::Option<wkt::FieldMask>>()?;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for UpdateAnywhereCacheRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.anywhere_cache.is_some() {
state.serialize_entry("anywhereCache", &self.anywhere_cache)?;
}
if self.update_mask.is_some() {
state.serialize_entry("updateMask", &self.update_mask)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct DisableAnywhereCacheRequest {
pub name: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl DisableAnywhereCacheRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for DisableAnywhereCacheRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.DisableAnywhereCacheRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for DisableAnywhereCacheRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for DisableAnywhereCacheRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = DisableAnywhereCacheRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct DisableAnywhereCacheRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for DisableAnywhereCacheRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct PauseAnywhereCacheRequest {
pub name: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl PauseAnywhereCacheRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for PauseAnywhereCacheRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.PauseAnywhereCacheRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for PauseAnywhereCacheRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for PauseAnywhereCacheRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = PauseAnywhereCacheRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct PauseAnywhereCacheRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for PauseAnywhereCacheRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ResumeAnywhereCacheRequest {
pub name: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ResumeAnywhereCacheRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for ResumeAnywhereCacheRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ResumeAnywhereCacheRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ResumeAnywhereCacheRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ResumeAnywhereCacheRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ResumeAnywhereCacheRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ResumeAnywhereCacheRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ResumeAnywhereCacheRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct GetAnywhereCacheRequest {
pub name: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl GetAnywhereCacheRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for GetAnywhereCacheRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.GetAnywhereCacheRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for GetAnywhereCacheRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for GetAnywhereCacheRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = GetAnywhereCacheRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct GetAnywhereCacheRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for GetAnywhereCacheRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ListAnywhereCachesRequest {
pub parent: std::string::String,
pub page_size: i32,
pub page_token: std::string::String,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ListAnywhereCachesRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_parent<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.parent = v.into();
self
}
pub fn set_page_size<T: std::convert::Into<i32>>(mut self, v: T) -> Self {
self.page_size = v.into();
self
}
pub fn set_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.page_token = v.into();
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for ListAnywhereCachesRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ListAnywhereCachesRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ListAnywhereCachesRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__parent,
__page_size,
__page_token,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ListAnywhereCachesRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"parent" => Ok(__FieldTag::__parent),
"pageSize" => Ok(__FieldTag::__page_size),
"page_size" => Ok(__FieldTag::__page_size),
"pageToken" => Ok(__FieldTag::__page_token),
"page_token" => Ok(__FieldTag::__page_token),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ListAnywhereCachesRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ListAnywhereCachesRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__parent => {
if !fields.insert(__FieldTag::__parent) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for parent",
));
}
result.parent = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__page_size => {
if !fields.insert(__FieldTag::__page_size) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for page_size",
));
}
struct __With(std::option::Option<i32>);
impl<'de> serde::de::Deserialize<'de> for __With {
fn deserialize<D>(
deserializer: D,
) -> std::result::Result<Self, D::Error>
where
D: serde::de::Deserializer<'de>,
{
serde_with::As::< std::option::Option<wkt::internal::I32> >::deserialize(deserializer).map(__With)
}
}
result.page_size = map.next_value::<__With>()?.0.unwrap_or_default();
}
__FieldTag::__page_token => {
if !fields.insert(__FieldTag::__page_token) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for page_token",
));
}
result.page_token = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ListAnywhereCachesRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.parent.is_empty() {
state.serialize_entry("parent", &self.parent)?;
}
if !wkt::internal::is_default(&self.page_size) {
struct __With<'a>(&'a i32);
impl<'a> serde::ser::Serialize for __With<'a> {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
serde_with::As::<wkt::internal::I32>::serialize(self.0, serializer)
}
}
state.serialize_entry("pageSize", &__With(&self.page_size))?;
}
if !self.page_token.is_empty() {
state.serialize_entry("pageToken", &self.page_token)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct ListAnywhereCachesResponse {
pub anywhere_caches: std::vec::Vec<crate::model::AnywhereCache>,
pub next_page_token: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl ListAnywhereCachesResponse {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_anywhere_caches<T, V>(mut self, v: T) -> Self
where
T: std::iter::IntoIterator<Item = V>,
V: std::convert::Into<crate::model::AnywhereCache>,
{
use std::iter::Iterator;
self.anywhere_caches = v.into_iter().map(|i| i.into()).collect();
self
}
pub fn set_next_page_token<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.next_page_token = v.into();
self
}
}
impl wkt::message::Message for ListAnywhereCachesResponse {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.ListAnywhereCachesResponse"
}
}
#[doc(hidden)]
impl gax::paginator::internal::PageableResponse for ListAnywhereCachesResponse {
type PageItem = crate::model::AnywhereCache;
fn items(self) -> std::vec::Vec<Self::PageItem> {
self.anywhere_caches
}
fn next_page_token(&self) -> std::string::String {
use std::clone::Clone;
self.next_page_token.clone()
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for ListAnywhereCachesResponse {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__anywhere_caches,
__next_page_token,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for ListAnywhereCachesResponse")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"anywhereCaches" => Ok(__FieldTag::__anywhere_caches),
"anywhere_caches" => Ok(__FieldTag::__anywhere_caches),
"nextPageToken" => Ok(__FieldTag::__next_page_token),
"next_page_token" => Ok(__FieldTag::__next_page_token),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = ListAnywhereCachesResponse;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct ListAnywhereCachesResponse")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__anywhere_caches => {
if !fields.insert(__FieldTag::__anywhere_caches) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for anywhere_caches",
));
}
result.anywhere_caches = map.next_value::<std::option::Option<std::vec::Vec<crate::model::AnywhereCache>>>()?.unwrap_or_default();
}
__FieldTag::__next_page_token => {
if !fields.insert(__FieldTag::__next_page_token) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for next_page_token",
));
}
result.next_page_token = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for ListAnywhereCachesResponse {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.anywhere_caches.is_empty() {
state.serialize_entry("anywhereCaches", &self.anywhere_caches)?;
}
if !self.next_page_token.is_empty() {
state.serialize_entry("nextPageToken", &self.next_page_token)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct IntelligenceConfig {
pub name: std::string::String,
pub edition_config: crate::model::intelligence_config::EditionConfig,
pub update_time: std::option::Option<wkt::Timestamp>,
pub filter: std::option::Option<crate::model::intelligence_config::Filter>,
pub effective_intelligence_config:
std::option::Option<crate::model::intelligence_config::EffectiveIntelligenceConfig>,
pub trial_config: std::option::Option<crate::model::intelligence_config::TrialConfig>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl IntelligenceConfig {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
pub fn set_edition_config<
T: std::convert::Into<crate::model::intelligence_config::EditionConfig>,
>(
mut self,
v: T,
) -> Self {
self.edition_config = v.into();
self
}
pub fn set_update_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.update_time = v.map(|x| x.into());
self
}
pub fn set_filter<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::intelligence_config::Filter>,
{
self.filter = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_filter<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::intelligence_config::Filter>,
{
self.filter = v.map(|x| x.into());
self
}
pub fn set_effective_intelligence_config<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::intelligence_config::EffectiveIntelligenceConfig>,
{
self.effective_intelligence_config = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_effective_intelligence_config<T>(
mut self,
v: std::option::Option<T>,
) -> Self
where
T: std::convert::Into<crate::model::intelligence_config::EffectiveIntelligenceConfig>,
{
self.effective_intelligence_config = v.map(|x| x.into());
self
}
pub fn set_trial_config<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::intelligence_config::TrialConfig>,
{
self.trial_config = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_trial_config<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::intelligence_config::TrialConfig>,
{
self.trial_config = v.map(|x| x.into());
self
}
}
impl wkt::message::Message for IntelligenceConfig {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.IntelligenceConfig"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for IntelligenceConfig {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
__edition_config,
__update_time,
__filter,
__effective_intelligence_config,
__trial_config,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for IntelligenceConfig")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
"editionConfig" => Ok(__FieldTag::__edition_config),
"edition_config" => Ok(__FieldTag::__edition_config),
"updateTime" => Ok(__FieldTag::__update_time),
"update_time" => Ok(__FieldTag::__update_time),
"filter" => Ok(__FieldTag::__filter),
"effectiveIntelligenceConfig" => {
Ok(__FieldTag::__effective_intelligence_config)
}
"effective_intelligence_config" => {
Ok(__FieldTag::__effective_intelligence_config)
}
"trialConfig" => Ok(__FieldTag::__trial_config),
"trial_config" => Ok(__FieldTag::__trial_config),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = IntelligenceConfig;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct IntelligenceConfig")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::__edition_config => {
if !fields.insert(__FieldTag::__edition_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for edition_config",
));
}
result.edition_config = map
.next_value::<std::option::Option<
crate::model::intelligence_config::EditionConfig,
>>()?
.unwrap_or_default();
}
__FieldTag::__update_time => {
if !fields.insert(__FieldTag::__update_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_time",
));
}
result.update_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::__filter => {
if !fields.insert(__FieldTag::__filter) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for filter",
));
}
result.filter = map.next_value::<std::option::Option<crate::model::intelligence_config::Filter>>()?
;
}
__FieldTag::__effective_intelligence_config => {
if !fields.insert(__FieldTag::__effective_intelligence_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for effective_intelligence_config",
));
}
result.effective_intelligence_config = map
.next_value::<std::option::Option<
crate::model::intelligence_config::EffectiveIntelligenceConfig,
>>()?;
}
__FieldTag::__trial_config => {
if !fields.insert(__FieldTag::__trial_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for trial_config",
));
}
result.trial_config = map.next_value::<std::option::Option<
crate::model::intelligence_config::TrialConfig,
>>()?;
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for IntelligenceConfig {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !wkt::internal::is_default(&self.edition_config) {
state.serialize_entry("editionConfig", &self.edition_config)?;
}
if self.update_time.is_some() {
state.serialize_entry("updateTime", &self.update_time)?;
}
if self.filter.is_some() {
state.serialize_entry("filter", &self.filter)?;
}
if self.effective_intelligence_config.is_some() {
state.serialize_entry(
"effectiveIntelligenceConfig",
&self.effective_intelligence_config,
)?;
}
if self.trial_config.is_some() {
state.serialize_entry("trialConfig", &self.trial_config)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
pub mod intelligence_config {
#[allow(unused_imports)]
use super::*;
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct Filter {
pub cloud_storage_locations: std::option::Option<
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf,
>,
pub cloud_storage_buckets: std::option::Option<
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf,
>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl Filter {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_cloud_storage_locations<
T: std::convert::Into<
std::option::Option<
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf,
>,
>,
>(
mut self,
v: T,
) -> Self {
self.cloud_storage_locations = v.into();
self
}
pub fn included_cloud_storage_locations(
&self,
) -> std::option::Option<
&std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageLocations>,
> {
#[allow(unreachable_patterns)]
self.cloud_storage_locations.as_ref().and_then(|v| match v {
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf::IncludedCloudStorageLocations(v) => std::option::Option::Some(v),
_ => std::option::Option::None,
})
}
pub fn set_included_cloud_storage_locations<
T: std::convert::Into<
std::boxed::Box<
crate::model::intelligence_config::filter::CloudStorageLocations,
>,
>,
>(
mut self,
v: T,
) -> Self {
self.cloud_storage_locations = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf::IncludedCloudStorageLocations(
v.into()
)
);
self
}
pub fn excluded_cloud_storage_locations(
&self,
) -> std::option::Option<
&std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageLocations>,
> {
#[allow(unreachable_patterns)]
self.cloud_storage_locations.as_ref().and_then(|v| match v {
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf::ExcludedCloudStorageLocations(v) => std::option::Option::Some(v),
_ => std::option::Option::None,
})
}
pub fn set_excluded_cloud_storage_locations<
T: std::convert::Into<
std::boxed::Box<
crate::model::intelligence_config::filter::CloudStorageLocations,
>,
>,
>(
mut self,
v: T,
) -> Self {
self.cloud_storage_locations = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf::ExcludedCloudStorageLocations(
v.into()
)
);
self
}
pub fn set_cloud_storage_buckets<
T: std::convert::Into<
std::option::Option<
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf,
>,
>,
>(
mut self,
v: T,
) -> Self {
self.cloud_storage_buckets = v.into();
self
}
pub fn included_cloud_storage_buckets(
&self,
) -> std::option::Option<
&std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
> {
#[allow(unreachable_patterns)]
self.cloud_storage_buckets.as_ref().and_then(|v| match v {
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf::IncludedCloudStorageBuckets(v) => std::option::Option::Some(v),
_ => std::option::Option::None,
})
}
pub fn set_included_cloud_storage_buckets<
T: std::convert::Into<
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
>,
>(
mut self,
v: T,
) -> Self {
self.cloud_storage_buckets = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf::IncludedCloudStorageBuckets(
v.into()
)
);
self
}
pub fn excluded_cloud_storage_buckets(
&self,
) -> std::option::Option<
&std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
> {
#[allow(unreachable_patterns)]
self.cloud_storage_buckets.as_ref().and_then(|v| match v {
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf::ExcludedCloudStorageBuckets(v) => std::option::Option::Some(v),
_ => std::option::Option::None,
})
}
pub fn set_excluded_cloud_storage_buckets<
T: std::convert::Into<
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
>,
>(
mut self,
v: T,
) -> Self {
self.cloud_storage_buckets = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf::ExcludedCloudStorageBuckets(
v.into()
)
);
self
}
}
impl wkt::message::Message for Filter {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.IntelligenceConfig.Filter"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for Filter {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__included_cloud_storage_locations,
__excluded_cloud_storage_locations,
__included_cloud_storage_buckets,
__excluded_cloud_storage_buckets,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(
&self,
formatter: &mut std::fmt::Formatter,
) -> std::fmt::Result {
formatter.write_str("a field name for Filter")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"includedCloudStorageLocations" => {
Ok(__FieldTag::__included_cloud_storage_locations)
}
"included_cloud_storage_locations" => {
Ok(__FieldTag::__included_cloud_storage_locations)
}
"excludedCloudStorageLocations" => {
Ok(__FieldTag::__excluded_cloud_storage_locations)
}
"excluded_cloud_storage_locations" => {
Ok(__FieldTag::__excluded_cloud_storage_locations)
}
"includedCloudStorageBuckets" => {
Ok(__FieldTag::__included_cloud_storage_buckets)
}
"included_cloud_storage_buckets" => {
Ok(__FieldTag::__included_cloud_storage_buckets)
}
"excludedCloudStorageBuckets" => {
Ok(__FieldTag::__excluded_cloud_storage_buckets)
}
"excluded_cloud_storage_buckets" => {
Ok(__FieldTag::__excluded_cloud_storage_buckets)
}
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = Filter;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct Filter")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__included_cloud_storage_locations => {
if !fields.insert(__FieldTag::__included_cloud_storage_locations) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for included_cloud_storage_locations",
));
}
if result.cloud_storage_locations.is_some() {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for `cloud_storage_locations`, a oneof with full ID .google.storage.control.v2.IntelligenceConfig.Filter.included_cloud_storage_locations, latest field was includedCloudStorageLocations",
));
}
result.cloud_storage_locations = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf::IncludedCloudStorageLocations(
map.next_value::<std::option::Option<std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageLocations>>>()?.unwrap_or_default()
),
);
}
__FieldTag::__excluded_cloud_storage_locations => {
if !fields.insert(__FieldTag::__excluded_cloud_storage_locations) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for excluded_cloud_storage_locations",
));
}
if result.cloud_storage_locations.is_some() {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for `cloud_storage_locations`, a oneof with full ID .google.storage.control.v2.IntelligenceConfig.Filter.excluded_cloud_storage_locations, latest field was excludedCloudStorageLocations",
));
}
result.cloud_storage_locations = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageLocationsOneOf::ExcludedCloudStorageLocations(
map.next_value::<std::option::Option<std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageLocations>>>()?.unwrap_or_default()
),
);
}
__FieldTag::__included_cloud_storage_buckets => {
if !fields.insert(__FieldTag::__included_cloud_storage_buckets) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for included_cloud_storage_buckets",
));
}
if result.cloud_storage_buckets.is_some() {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for `cloud_storage_buckets`, a oneof with full ID .google.storage.control.v2.IntelligenceConfig.Filter.included_cloud_storage_buckets, latest field was includedCloudStorageBuckets",
));
}
result.cloud_storage_buckets = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf::IncludedCloudStorageBuckets(
map.next_value::<std::option::Option<std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>>>()?.unwrap_or_default()
),
);
}
__FieldTag::__excluded_cloud_storage_buckets => {
if !fields.insert(__FieldTag::__excluded_cloud_storage_buckets) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for excluded_cloud_storage_buckets",
));
}
if result.cloud_storage_buckets.is_some() {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for `cloud_storage_buckets`, a oneof with full ID .google.storage.control.v2.IntelligenceConfig.Filter.excluded_cloud_storage_buckets, latest field was excludedCloudStorageBuckets",
));
}
result.cloud_storage_buckets = std::option::Option::Some(
crate::model::intelligence_config::filter::CloudStorageBucketsOneOf::ExcludedCloudStorageBuckets(
map.next_value::<std::option::Option<std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>>>()?.unwrap_or_default()
),
);
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for Filter {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if let Some(value) = self.included_cloud_storage_locations() {
state.serialize_entry("includedCloudStorageLocations", value)?;
}
if let Some(value) = self.excluded_cloud_storage_locations() {
state.serialize_entry("excludedCloudStorageLocations", value)?;
}
if let Some(value) = self.included_cloud_storage_buckets() {
state.serialize_entry("includedCloudStorageBuckets", value)?;
}
if let Some(value) = self.excluded_cloud_storage_buckets() {
state.serialize_entry("excludedCloudStorageBuckets", value)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
pub mod filter {
#[allow(unused_imports)]
use super::*;
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CloudStorageLocations {
pub locations: std::vec::Vec<std::string::String>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CloudStorageLocations {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_locations<T, V>(mut self, v: T) -> Self
where
T: std::iter::IntoIterator<Item = V>,
V: std::convert::Into<std::string::String>,
{
use std::iter::Iterator;
self.locations = v.into_iter().map(|i| i.into()).collect();
self
}
}
impl wkt::message::Message for CloudStorageLocations {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageLocations"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CloudStorageLocations {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__locations,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(
&self,
formatter: &mut std::fmt::Formatter,
) -> std::fmt::Result {
formatter.write_str("a field name for CloudStorageLocations")
}
fn visit_str<E>(
self,
value: &str,
) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"locations" => Ok(__FieldTag::__locations),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CloudStorageLocations;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CloudStorageLocations")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__locations => {
if !fields.insert(__FieldTag::__locations) {
return std::result::Result::Err(
A::Error::duplicate_field(
"multiple values for locations",
),
);
}
result.locations = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CloudStorageLocations {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.locations.is_empty() {
state.serialize_entry("locations", &self.locations)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct CloudStorageBuckets {
pub bucket_id_regexes: std::vec::Vec<std::string::String>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl CloudStorageBuckets {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_bucket_id_regexes<T, V>(mut self, v: T) -> Self
where
T: std::iter::IntoIterator<Item = V>,
V: std::convert::Into<std::string::String>,
{
use std::iter::Iterator;
self.bucket_id_regexes = v.into_iter().map(|i| i.into()).collect();
self
}
}
impl wkt::message::Message for CloudStorageBuckets {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.IntelligenceConfig.Filter.CloudStorageBuckets"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for CloudStorageBuckets {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__bucket_id_regexes,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(
&self,
formatter: &mut std::fmt::Formatter,
) -> std::fmt::Result {
formatter.write_str("a field name for CloudStorageBuckets")
}
fn visit_str<E>(
self,
value: &str,
) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"bucketIdRegexes" => Ok(__FieldTag::__bucket_id_regexes),
"bucket_id_regexes" => Ok(__FieldTag::__bucket_id_regexes),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = CloudStorageBuckets;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct CloudStorageBuckets")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__bucket_id_regexes => {
if !fields.insert(__FieldTag::__bucket_id_regexes) {
return std::result::Result::Err(
A::Error::duplicate_field(
"multiple values for bucket_id_regexes",
),
);
}
result.bucket_id_regexes = map.next_value::<std::option::Option<std::vec::Vec<std::string::String>>>()?.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for CloudStorageBuckets {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.bucket_id_regexes.is_empty() {
state.serialize_entry("bucketIdRegexes", &self.bucket_id_regexes)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, PartialEq)]
#[non_exhaustive]
pub enum CloudStorageLocationsOneOf {
IncludedCloudStorageLocations(
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageLocations>,
),
ExcludedCloudStorageLocations(
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageLocations>,
),
}
impl CloudStorageLocationsOneOf {
pub fn from_included_cloud_storage_locations(
value: impl std::convert::Into<
std::boxed::Box<
crate::model::intelligence_config::filter::CloudStorageLocations,
>,
>,
) -> Self {
Self::IncludedCloudStorageLocations(value.into())
}
pub fn from_excluded_cloud_storage_locations(
value: impl std::convert::Into<
std::boxed::Box<
crate::model::intelligence_config::filter::CloudStorageLocations,
>,
>,
) -> Self {
Self::ExcludedCloudStorageLocations(value.into())
}
}
#[derive(Clone, Debug, PartialEq)]
#[non_exhaustive]
pub enum CloudStorageBucketsOneOf {
IncludedCloudStorageBuckets(
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
),
ExcludedCloudStorageBuckets(
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
),
}
impl CloudStorageBucketsOneOf {
pub fn from_included_cloud_storage_buckets(
value: impl std::convert::Into<
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
>,
) -> Self {
Self::IncludedCloudStorageBuckets(value.into())
}
pub fn from_excluded_cloud_storage_buckets(
value: impl std::convert::Into<
std::boxed::Box<crate::model::intelligence_config::filter::CloudStorageBuckets>,
>,
) -> Self {
Self::ExcludedCloudStorageBuckets(value.into())
}
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct EffectiveIntelligenceConfig {
pub effective_edition:
crate::model::intelligence_config::effective_intelligence_config::EffectiveEdition,
pub intelligence_config: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl EffectiveIntelligenceConfig {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_effective_edition<T: std::convert::Into<crate::model::intelligence_config::effective_intelligence_config::EffectiveEdition>>(mut self, v: T) -> Self{
self.effective_edition = v.into();
self
}
pub fn set_intelligence_config<T: std::convert::Into<std::string::String>>(
mut self,
v: T,
) -> Self {
self.intelligence_config = v.into();
self
}
}
impl wkt::message::Message for EffectiveIntelligenceConfig {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.IntelligenceConfig.EffectiveIntelligenceConfig"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for EffectiveIntelligenceConfig {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__effective_edition,
__intelligence_config,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(
&self,
formatter: &mut std::fmt::Formatter,
) -> std::fmt::Result {
formatter.write_str("a field name for EffectiveIntelligenceConfig")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"effectiveEdition" => Ok(__FieldTag::__effective_edition),
"effective_edition" => Ok(__FieldTag::__effective_edition),
"intelligenceConfig" => Ok(__FieldTag::__intelligence_config),
"intelligence_config" => Ok(__FieldTag::__intelligence_config),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = EffectiveIntelligenceConfig;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct EffectiveIntelligenceConfig")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__effective_edition => {
if !fields.insert(__FieldTag::__effective_edition) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for effective_edition",
));
}
result.effective_edition = map.next_value::<std::option::Option<crate::model::intelligence_config::effective_intelligence_config::EffectiveEdition>>()?.unwrap_or_default();
}
__FieldTag::__intelligence_config => {
if !fields.insert(__FieldTag::__intelligence_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for intelligence_config",
));
}
result.intelligence_config = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for EffectiveIntelligenceConfig {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !wkt::internal::is_default(&self.effective_edition) {
state.serialize_entry("effectiveEdition", &self.effective_edition)?;
}
if !self.intelligence_config.is_empty() {
state.serialize_entry("intelligenceConfig", &self.intelligence_config)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
pub mod effective_intelligence_config {
#[allow(unused_imports)]
use super::*;
#[derive(Clone, Debug, PartialEq)]
#[non_exhaustive]
pub enum EffectiveEdition {
Unspecified,
None,
Standard,
UnknownValue(effective_edition::UnknownValue),
}
#[doc(hidden)]
pub mod effective_edition {
#[allow(unused_imports)]
use super::*;
#[derive(Clone, Debug, PartialEq)]
pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
}
impl EffectiveEdition {
pub fn value(&self) -> std::option::Option<i32> {
match self {
Self::Unspecified => std::option::Option::Some(0),
Self::None => std::option::Option::Some(1),
Self::Standard => std::option::Option::Some(2),
Self::UnknownValue(u) => u.0.value(),
}
}
pub fn name(&self) -> std::option::Option<&str> {
match self {
Self::Unspecified => std::option::Option::Some("EFFECTIVE_EDITION_UNSPECIFIED"),
Self::None => std::option::Option::Some("NONE"),
Self::Standard => std::option::Option::Some("STANDARD"),
Self::UnknownValue(u) => u.0.name(),
}
}
}
impl std::default::Default for EffectiveEdition {
fn default() -> Self {
use std::convert::From;
Self::from(0)
}
}
impl std::fmt::Display for EffectiveEdition {
fn fmt(
&self,
f: &mut std::fmt::Formatter<'_>,
) -> std::result::Result<(), std::fmt::Error> {
wkt::internal::display_enum(f, self.name(), self.value())
}
}
impl std::convert::From<i32> for EffectiveEdition {
fn from(value: i32) -> Self {
match value {
0 => Self::Unspecified,
1 => Self::None,
2 => Self::Standard,
_ => Self::UnknownValue(effective_edition::UnknownValue(
wkt::internal::UnknownEnumValue::Integer(value),
)),
}
}
}
impl std::convert::From<&str> for EffectiveEdition {
fn from(value: &str) -> Self {
use std::string::ToString;
match value {
"EFFECTIVE_EDITION_UNSPECIFIED" => Self::Unspecified,
"NONE" => Self::None,
"STANDARD" => Self::Standard,
_ => Self::UnknownValue(effective_edition::UnknownValue(
wkt::internal::UnknownEnumValue::String(value.to_string()),
)),
}
}
}
impl serde::ser::Serialize for EffectiveEdition {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::Serializer,
{
match self {
Self::Unspecified => serializer.serialize_i32(0),
Self::None => serializer.serialize_i32(1),
Self::Standard => serializer.serialize_i32(2),
Self::UnknownValue(u) => u.0.serialize(serializer),
}
}
}
impl<'de> serde::de::Deserialize<'de> for EffectiveEdition {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
deserializer.deserialize_any(wkt::internal::EnumVisitor::<EffectiveEdition>::new(
".google.storage.control.v2.IntelligenceConfig.EffectiveIntelligenceConfig.EffectiveEdition"))
}
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct TrialConfig {
pub expire_time: std::option::Option<wkt::Timestamp>,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl TrialConfig {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_expire_time<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.expire_time = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_expire_time<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::Timestamp>,
{
self.expire_time = v.map(|x| x.into());
self
}
}
impl wkt::message::Message for TrialConfig {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.IntelligenceConfig.TrialConfig"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for TrialConfig {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__expire_time,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(
&self,
formatter: &mut std::fmt::Formatter,
) -> std::fmt::Result {
formatter.write_str("a field name for TrialConfig")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"expireTime" => Ok(__FieldTag::__expire_time),
"expire_time" => Ok(__FieldTag::__expire_time),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = TrialConfig;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct TrialConfig")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__expire_time => {
if !fields.insert(__FieldTag::__expire_time) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for expire_time",
));
}
result.expire_time =
map.next_value::<std::option::Option<wkt::Timestamp>>()?;
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for TrialConfig {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.expire_time.is_some() {
state.serialize_entry("expireTime", &self.expire_time)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, PartialEq)]
#[non_exhaustive]
pub enum EditionConfig {
Unspecified,
Inherit,
Disabled,
Standard,
Trial,
UnknownValue(edition_config::UnknownValue),
}
#[doc(hidden)]
pub mod edition_config {
#[allow(unused_imports)]
use super::*;
#[derive(Clone, Debug, PartialEq)]
pub struct UnknownValue(pub(crate) wkt::internal::UnknownEnumValue);
}
impl EditionConfig {
pub fn value(&self) -> std::option::Option<i32> {
match self {
Self::Unspecified => std::option::Option::Some(0),
Self::Inherit => std::option::Option::Some(1),
Self::Disabled => std::option::Option::Some(2),
Self::Standard => std::option::Option::Some(3),
Self::Trial => std::option::Option::Some(5),
Self::UnknownValue(u) => u.0.value(),
}
}
pub fn name(&self) -> std::option::Option<&str> {
match self {
Self::Unspecified => std::option::Option::Some("EDITION_CONFIG_UNSPECIFIED"),
Self::Inherit => std::option::Option::Some("INHERIT"),
Self::Disabled => std::option::Option::Some("DISABLED"),
Self::Standard => std::option::Option::Some("STANDARD"),
Self::Trial => std::option::Option::Some("TRIAL"),
Self::UnknownValue(u) => u.0.name(),
}
}
}
impl std::default::Default for EditionConfig {
fn default() -> Self {
use std::convert::From;
Self::from(0)
}
}
impl std::fmt::Display for EditionConfig {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::result::Result<(), std::fmt::Error> {
wkt::internal::display_enum(f, self.name(), self.value())
}
}
impl std::convert::From<i32> for EditionConfig {
fn from(value: i32) -> Self {
match value {
0 => Self::Unspecified,
1 => Self::Inherit,
2 => Self::Disabled,
3 => Self::Standard,
5 => Self::Trial,
_ => Self::UnknownValue(edition_config::UnknownValue(
wkt::internal::UnknownEnumValue::Integer(value),
)),
}
}
}
impl std::convert::From<&str> for EditionConfig {
fn from(value: &str) -> Self {
use std::string::ToString;
match value {
"EDITION_CONFIG_UNSPECIFIED" => Self::Unspecified,
"INHERIT" => Self::Inherit,
"DISABLED" => Self::Disabled,
"STANDARD" => Self::Standard,
"TRIAL" => Self::Trial,
_ => Self::UnknownValue(edition_config::UnknownValue(
wkt::internal::UnknownEnumValue::String(value.to_string()),
)),
}
}
}
impl serde::ser::Serialize for EditionConfig {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::Serializer,
{
match self {
Self::Unspecified => serializer.serialize_i32(0),
Self::Inherit => serializer.serialize_i32(1),
Self::Disabled => serializer.serialize_i32(2),
Self::Standard => serializer.serialize_i32(3),
Self::Trial => serializer.serialize_i32(5),
Self::UnknownValue(u) => u.0.serialize(serializer),
}
}
}
impl<'de> serde::de::Deserialize<'de> for EditionConfig {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
deserializer.deserialize_any(wkt::internal::EnumVisitor::<EditionConfig>::new(
".google.storage.control.v2.IntelligenceConfig.EditionConfig",
))
}
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct UpdateOrganizationIntelligenceConfigRequest {
pub intelligence_config: std::option::Option<crate::model::IntelligenceConfig>,
pub update_mask: std::option::Option<wkt::FieldMask>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl UpdateOrganizationIntelligenceConfigRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_intelligence_config<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::IntelligenceConfig>,
{
self.intelligence_config = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_intelligence_config<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::IntelligenceConfig>,
{
self.intelligence_config = v.map(|x| x.into());
self
}
pub fn set_update_mask<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for UpdateOrganizationIntelligenceConfigRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.UpdateOrganizationIntelligenceConfigRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for UpdateOrganizationIntelligenceConfigRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__intelligence_config,
__update_mask,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str(
"a field name for UpdateOrganizationIntelligenceConfigRequest",
)
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"intelligenceConfig" => Ok(__FieldTag::__intelligence_config),
"intelligence_config" => Ok(__FieldTag::__intelligence_config),
"updateMask" => Ok(__FieldTag::__update_mask),
"update_mask" => Ok(__FieldTag::__update_mask),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = UpdateOrganizationIntelligenceConfigRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct UpdateOrganizationIntelligenceConfigRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__intelligence_config => {
if !fields.insert(__FieldTag::__intelligence_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for intelligence_config",
));
}
result.intelligence_config = map.next_value::<std::option::Option<crate::model::IntelligenceConfig>>()?
;
}
__FieldTag::__update_mask => {
if !fields.insert(__FieldTag::__update_mask) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_mask",
));
}
result.update_mask =
map.next_value::<std::option::Option<wkt::FieldMask>>()?;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for UpdateOrganizationIntelligenceConfigRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.intelligence_config.is_some() {
state.serialize_entry("intelligenceConfig", &self.intelligence_config)?;
}
if self.update_mask.is_some() {
state.serialize_entry("updateMask", &self.update_mask)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct UpdateFolderIntelligenceConfigRequest {
pub intelligence_config: std::option::Option<crate::model::IntelligenceConfig>,
pub update_mask: std::option::Option<wkt::FieldMask>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl UpdateFolderIntelligenceConfigRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_intelligence_config<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::IntelligenceConfig>,
{
self.intelligence_config = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_intelligence_config<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::IntelligenceConfig>,
{
self.intelligence_config = v.map(|x| x.into());
self
}
pub fn set_update_mask<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for UpdateFolderIntelligenceConfigRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.UpdateFolderIntelligenceConfigRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for UpdateFolderIntelligenceConfigRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__intelligence_config,
__update_mask,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter
.write_str("a field name for UpdateFolderIntelligenceConfigRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"intelligenceConfig" => Ok(__FieldTag::__intelligence_config),
"intelligence_config" => Ok(__FieldTag::__intelligence_config),
"updateMask" => Ok(__FieldTag::__update_mask),
"update_mask" => Ok(__FieldTag::__update_mask),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = UpdateFolderIntelligenceConfigRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct UpdateFolderIntelligenceConfigRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__intelligence_config => {
if !fields.insert(__FieldTag::__intelligence_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for intelligence_config",
));
}
result.intelligence_config = map.next_value::<std::option::Option<crate::model::IntelligenceConfig>>()?
;
}
__FieldTag::__update_mask => {
if !fields.insert(__FieldTag::__update_mask) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_mask",
));
}
result.update_mask =
map.next_value::<std::option::Option<wkt::FieldMask>>()?;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for UpdateFolderIntelligenceConfigRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.intelligence_config.is_some() {
state.serialize_entry("intelligenceConfig", &self.intelligence_config)?;
}
if self.update_mask.is_some() {
state.serialize_entry("updateMask", &self.update_mask)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct UpdateProjectIntelligenceConfigRequest {
pub intelligence_config: std::option::Option<crate::model::IntelligenceConfig>,
pub update_mask: std::option::Option<wkt::FieldMask>,
pub request_id: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl UpdateProjectIntelligenceConfigRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_intelligence_config<T>(mut self, v: T) -> Self
where
T: std::convert::Into<crate::model::IntelligenceConfig>,
{
self.intelligence_config = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_intelligence_config<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<crate::model::IntelligenceConfig>,
{
self.intelligence_config = v.map(|x| x.into());
self
}
pub fn set_update_mask<T>(mut self, v: T) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = std::option::Option::Some(v.into());
self
}
pub fn set_or_clear_update_mask<T>(mut self, v: std::option::Option<T>) -> Self
where
T: std::convert::Into<wkt::FieldMask>,
{
self.update_mask = v.map(|x| x.into());
self
}
pub fn set_request_id<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.request_id = v.into();
self
}
}
impl wkt::message::Message for UpdateProjectIntelligenceConfigRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.UpdateProjectIntelligenceConfigRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for UpdateProjectIntelligenceConfigRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__intelligence_config,
__update_mask,
__request_id,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter
.write_str("a field name for UpdateProjectIntelligenceConfigRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"intelligenceConfig" => Ok(__FieldTag::__intelligence_config),
"intelligence_config" => Ok(__FieldTag::__intelligence_config),
"updateMask" => Ok(__FieldTag::__update_mask),
"update_mask" => Ok(__FieldTag::__update_mask),
"requestId" => Ok(__FieldTag::__request_id),
"request_id" => Ok(__FieldTag::__request_id),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = UpdateProjectIntelligenceConfigRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct UpdateProjectIntelligenceConfigRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__intelligence_config => {
if !fields.insert(__FieldTag::__intelligence_config) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for intelligence_config",
));
}
result.intelligence_config = map.next_value::<std::option::Option<crate::model::IntelligenceConfig>>()?
;
}
__FieldTag::__update_mask => {
if !fields.insert(__FieldTag::__update_mask) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for update_mask",
));
}
result.update_mask =
map.next_value::<std::option::Option<wkt::FieldMask>>()?;
}
__FieldTag::__request_id => {
if !fields.insert(__FieldTag::__request_id) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for request_id",
));
}
result.request_id = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for UpdateProjectIntelligenceConfigRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if self.intelligence_config.is_some() {
state.serialize_entry("intelligenceConfig", &self.intelligence_config)?;
}
if self.update_mask.is_some() {
state.serialize_entry("updateMask", &self.update_mask)?;
}
if !self.request_id.is_empty() {
state.serialize_entry("requestId", &self.request_id)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct GetOrganizationIntelligenceConfigRequest {
pub name: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl GetOrganizationIntelligenceConfigRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
}
impl wkt::message::Message for GetOrganizationIntelligenceConfigRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.GetOrganizationIntelligenceConfigRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for GetOrganizationIntelligenceConfigRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter
.write_str("a field name for GetOrganizationIntelligenceConfigRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = GetOrganizationIntelligenceConfigRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct GetOrganizationIntelligenceConfigRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for GetOrganizationIntelligenceConfigRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct GetFolderIntelligenceConfigRequest {
pub name: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl GetFolderIntelligenceConfigRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
}
impl wkt::message::Message for GetFolderIntelligenceConfigRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.GetFolderIntelligenceConfigRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for GetFolderIntelligenceConfigRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for GetFolderIntelligenceConfigRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = GetFolderIntelligenceConfigRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct GetFolderIntelligenceConfigRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for GetFolderIntelligenceConfigRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}
#[derive(Clone, Debug, Default, PartialEq)]
#[non_exhaustive]
pub struct GetProjectIntelligenceConfigRequest {
pub name: std::string::String,
_unknown_fields: serde_json::Map<std::string::String, serde_json::Value>,
}
impl GetProjectIntelligenceConfigRequest {
pub fn new() -> Self {
std::default::Default::default()
}
pub fn set_name<T: std::convert::Into<std::string::String>>(mut self, v: T) -> Self {
self.name = v.into();
self
}
}
impl wkt::message::Message for GetProjectIntelligenceConfigRequest {
fn typename() -> &'static str {
"type.googleapis.com/google.storage.control.v2.GetProjectIntelligenceConfigRequest"
}
}
#[doc(hidden)]
impl<'de> serde::de::Deserialize<'de> for GetProjectIntelligenceConfigRequest {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
#[allow(non_camel_case_types)]
#[doc(hidden)]
#[derive(PartialEq, Eq, Hash)]
enum __FieldTag {
__name,
Unknown(std::string::String),
}
impl<'de> serde::de::Deserialize<'de> for __FieldTag {
fn deserialize<D>(deserializer: D) -> std::result::Result<Self, D::Error>
where
D: serde::Deserializer<'de>,
{
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = __FieldTag;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("a field name for GetProjectIntelligenceConfigRequest")
}
fn visit_str<E>(self, value: &str) -> std::result::Result<Self::Value, E>
where
E: serde::de::Error,
{
use std::result::Result::Ok;
use std::string::ToString;
match value {
"name" => Ok(__FieldTag::__name),
_ => Ok(__FieldTag::Unknown(value.to_string())),
}
}
}
deserializer.deserialize_identifier(Visitor)
}
}
struct Visitor;
impl<'de> serde::de::Visitor<'de> for Visitor {
type Value = GetProjectIntelligenceConfigRequest;
fn expecting(&self, formatter: &mut std::fmt::Formatter) -> std::fmt::Result {
formatter.write_str("struct GetProjectIntelligenceConfigRequest")
}
fn visit_map<A>(self, mut map: A) -> std::result::Result<Self::Value, A::Error>
where
A: serde::de::MapAccess<'de>,
{
#[allow(unused_imports)]
use serde::de::Error;
use std::option::Option::Some;
let mut fields = std::collections::HashSet::new();
let mut result = Self::Value::new();
while let Some(tag) = map.next_key::<__FieldTag>()? {
#[allow(clippy::match_single_binding)]
match tag {
__FieldTag::__name => {
if !fields.insert(__FieldTag::__name) {
return std::result::Result::Err(A::Error::duplicate_field(
"multiple values for name",
));
}
result.name = map
.next_value::<std::option::Option<std::string::String>>()?
.unwrap_or_default();
}
__FieldTag::Unknown(key) => {
let value = map.next_value::<serde_json::Value>()?;
result._unknown_fields.insert(key, value);
}
}
}
std::result::Result::Ok(result)
}
}
deserializer.deserialize_any(Visitor)
}
}
#[doc(hidden)]
impl serde::ser::Serialize for GetProjectIntelligenceConfigRequest {
fn serialize<S>(&self, serializer: S) -> std::result::Result<S::Ok, S::Error>
where
S: serde::ser::Serializer,
{
use serde::ser::SerializeMap;
#[allow(unused_imports)]
use std::option::Option::Some;
let mut state = serializer.serialize_map(std::option::Option::None)?;
if !self.name.is_empty() {
state.serialize_entry("name", &self.name)?;
}
if !self._unknown_fields.is_empty() {
for (key, value) in self._unknown_fields.iter() {
state.serialize_entry(key, &value)?;
}
}
state.end()
}
}