#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(box_pointers)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_imports)]
#![allow(unused_results)]
#[derive(PartialEq,Clone,Default)]
pub struct RestoreInfo {
pub source_type: RestoreSourceType,
pub source_info: ::std::option::Option<RestoreInfo_oneof_source_info>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a RestoreInfo {
fn default() -> &'a RestoreInfo {
<RestoreInfo as ::protobuf::Message>::default_instance()
}
}
#[derive(Clone,PartialEq,Debug)]
pub enum RestoreInfo_oneof_source_info {
backup_info(BackupInfo),
}
impl RestoreInfo {
pub fn new() -> RestoreInfo {
::std::default::Default::default()
}
pub fn get_source_type(&self) -> RestoreSourceType {
self.source_type
}
pub fn clear_source_type(&mut self) {
self.source_type = RestoreSourceType::RESTORE_SOURCE_TYPE_UNSPECIFIED;
}
pub fn set_source_type(&mut self, v: RestoreSourceType) {
self.source_type = v;
}
pub fn get_backup_info(&self) -> &BackupInfo {
match self.source_info {
::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(ref v)) => v,
_ => <BackupInfo as ::protobuf::Message>::default_instance(),
}
}
pub fn clear_backup_info(&mut self) {
self.source_info = ::std::option::Option::None;
}
pub fn has_backup_info(&self) -> bool {
match self.source_info {
::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(..)) => true,
_ => false,
}
}
pub fn set_backup_info(&mut self, v: BackupInfo) {
self.source_info = ::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(v))
}
pub fn mut_backup_info(&mut self) -> &mut BackupInfo {
if let ::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(_)) = self.source_info {
} else {
self.source_info = ::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(BackupInfo::new()));
}
match self.source_info {
::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(ref mut v)) => v,
_ => panic!(),
}
}
pub fn take_backup_info(&mut self) -> BackupInfo {
if self.has_backup_info() {
match self.source_info.take() {
::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(v)) => v,
_ => panic!(),
}
} else {
BackupInfo::new()
}
}
}
impl ::protobuf::Message for RestoreInfo {
fn is_initialized(&self) -> bool {
if let Some(RestoreInfo_oneof_source_info::backup_info(ref v)) = self.source_info {
if !v.is_initialized() {
return false;
}
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.source_type, 1, &mut self.unknown_fields)?
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
self.source_info = ::std::option::Option::Some(RestoreInfo_oneof_source_info::backup_info(is.read_message()?));
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.source_type != RestoreSourceType::RESTORE_SOURCE_TYPE_UNSPECIFIED {
my_size += ::protobuf::rt::enum_size(1, self.source_type);
}
if let ::std::option::Option::Some(ref v) = self.source_info {
match v {
&RestoreInfo_oneof_source_info::backup_info(ref v) => {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
},
};
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if self.source_type != RestoreSourceType::RESTORE_SOURCE_TYPE_UNSPECIFIED {
os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.source_type))?;
}
if let ::std::option::Option::Some(ref v) = self.source_info {
match v {
&RestoreInfo_oneof_source_info::backup_info(ref v) => {
os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
},
};
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> RestoreInfo {
RestoreInfo::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<RestoreSourceType>>(
"source_type",
|m: &RestoreInfo| { &m.source_type },
|m: &mut RestoreInfo| { &mut m.source_type },
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, BackupInfo>(
"backup_info",
RestoreInfo::has_backup_info,
RestoreInfo::get_backup_info,
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<RestoreInfo>(
"RestoreInfo",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static RestoreInfo {
static instance: ::protobuf::rt::LazyV2<RestoreInfo> = ::protobuf::rt::LazyV2::INIT;
instance.get(RestoreInfo::new)
}
}
impl ::protobuf::Clear for RestoreInfo {
fn clear(&mut self) {
self.source_type = RestoreSourceType::RESTORE_SOURCE_TYPE_UNSPECIFIED;
self.source_info = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for RestoreInfo {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for RestoreInfo {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct ChangeStreamConfig {
pub retention_period: ::protobuf::SingularPtrField<::protobuf::well_known_types::Duration>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a ChangeStreamConfig {
fn default() -> &'a ChangeStreamConfig {
<ChangeStreamConfig as ::protobuf::Message>::default_instance()
}
}
impl ChangeStreamConfig {
pub fn new() -> ChangeStreamConfig {
::std::default::Default::default()
}
pub fn get_retention_period(&self) -> &::protobuf::well_known_types::Duration {
self.retention_period.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Duration as ::protobuf::Message>::default_instance())
}
pub fn clear_retention_period(&mut self) {
self.retention_period.clear();
}
pub fn has_retention_period(&self) -> bool {
self.retention_period.is_some()
}
pub fn set_retention_period(&mut self, v: ::protobuf::well_known_types::Duration) {
self.retention_period = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_retention_period(&mut self) -> &mut ::protobuf::well_known_types::Duration {
if self.retention_period.is_none() {
self.retention_period.set_default();
}
self.retention_period.as_mut().unwrap()
}
pub fn take_retention_period(&mut self) -> ::protobuf::well_known_types::Duration {
self.retention_period.take().unwrap_or_else(|| ::protobuf::well_known_types::Duration::new())
}
}
impl ::protobuf::Message for ChangeStreamConfig {
fn is_initialized(&self) -> bool {
for v in &self.retention_period {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.retention_period)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.retention_period.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.retention_period.as_ref() {
os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> ChangeStreamConfig {
ChangeStreamConfig::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Duration>>(
"retention_period",
|m: &ChangeStreamConfig| { &m.retention_period },
|m: &mut ChangeStreamConfig| { &mut m.retention_period },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<ChangeStreamConfig>(
"ChangeStreamConfig",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static ChangeStreamConfig {
static instance: ::protobuf::rt::LazyV2<ChangeStreamConfig> = ::protobuf::rt::LazyV2::INIT;
instance.get(ChangeStreamConfig::new)
}
}
impl ::protobuf::Clear for ChangeStreamConfig {
fn clear(&mut self) {
self.retention_period.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for ChangeStreamConfig {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for ChangeStreamConfig {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Table {
pub name: ::std::string::String,
pub cluster_states: ::std::collections::HashMap<::std::string::String, Table_ClusterState>,
pub column_families: ::std::collections::HashMap<::std::string::String, ColumnFamily>,
pub granularity: Table_TimestampGranularity,
pub restore_info: ::protobuf::SingularPtrField<RestoreInfo>,
pub change_stream_config: ::protobuf::SingularPtrField<ChangeStreamConfig>,
pub deletion_protection: bool,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Table {
fn default() -> &'a Table {
<Table as ::protobuf::Message>::default_instance()
}
}
impl Table {
pub fn new() -> Table {
::std::default::Default::default()
}
pub fn get_name(&self) -> &str {
&self.name
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = v;
}
pub fn mut_name(&mut self) -> &mut ::std::string::String {
&mut self.name
}
pub fn take_name(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.name, ::std::string::String::new())
}
pub fn get_cluster_states(&self) -> &::std::collections::HashMap<::std::string::String, Table_ClusterState> {
&self.cluster_states
}
pub fn clear_cluster_states(&mut self) {
self.cluster_states.clear();
}
pub fn set_cluster_states(&mut self, v: ::std::collections::HashMap<::std::string::String, Table_ClusterState>) {
self.cluster_states = v;
}
pub fn mut_cluster_states(&mut self) -> &mut ::std::collections::HashMap<::std::string::String, Table_ClusterState> {
&mut self.cluster_states
}
pub fn take_cluster_states(&mut self) -> ::std::collections::HashMap<::std::string::String, Table_ClusterState> {
::std::mem::replace(&mut self.cluster_states, ::std::collections::HashMap::new())
}
pub fn get_column_families(&self) -> &::std::collections::HashMap<::std::string::String, ColumnFamily> {
&self.column_families
}
pub fn clear_column_families(&mut self) {
self.column_families.clear();
}
pub fn set_column_families(&mut self, v: ::std::collections::HashMap<::std::string::String, ColumnFamily>) {
self.column_families = v;
}
pub fn mut_column_families(&mut self) -> &mut ::std::collections::HashMap<::std::string::String, ColumnFamily> {
&mut self.column_families
}
pub fn take_column_families(&mut self) -> ::std::collections::HashMap<::std::string::String, ColumnFamily> {
::std::mem::replace(&mut self.column_families, ::std::collections::HashMap::new())
}
pub fn get_granularity(&self) -> Table_TimestampGranularity {
self.granularity
}
pub fn clear_granularity(&mut self) {
self.granularity = Table_TimestampGranularity::TIMESTAMP_GRANULARITY_UNSPECIFIED;
}
pub fn set_granularity(&mut self, v: Table_TimestampGranularity) {
self.granularity = v;
}
pub fn get_restore_info(&self) -> &RestoreInfo {
self.restore_info.as_ref().unwrap_or_else(|| <RestoreInfo as ::protobuf::Message>::default_instance())
}
pub fn clear_restore_info(&mut self) {
self.restore_info.clear();
}
pub fn has_restore_info(&self) -> bool {
self.restore_info.is_some()
}
pub fn set_restore_info(&mut self, v: RestoreInfo) {
self.restore_info = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_restore_info(&mut self) -> &mut RestoreInfo {
if self.restore_info.is_none() {
self.restore_info.set_default();
}
self.restore_info.as_mut().unwrap()
}
pub fn take_restore_info(&mut self) -> RestoreInfo {
self.restore_info.take().unwrap_or_else(|| RestoreInfo::new())
}
pub fn get_change_stream_config(&self) -> &ChangeStreamConfig {
self.change_stream_config.as_ref().unwrap_or_else(|| <ChangeStreamConfig as ::protobuf::Message>::default_instance())
}
pub fn clear_change_stream_config(&mut self) {
self.change_stream_config.clear();
}
pub fn has_change_stream_config(&self) -> bool {
self.change_stream_config.is_some()
}
pub fn set_change_stream_config(&mut self, v: ChangeStreamConfig) {
self.change_stream_config = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_change_stream_config(&mut self) -> &mut ChangeStreamConfig {
if self.change_stream_config.is_none() {
self.change_stream_config.set_default();
}
self.change_stream_config.as_mut().unwrap()
}
pub fn take_change_stream_config(&mut self) -> ChangeStreamConfig {
self.change_stream_config.take().unwrap_or_else(|| ChangeStreamConfig::new())
}
pub fn get_deletion_protection(&self) -> bool {
self.deletion_protection
}
pub fn clear_deletion_protection(&mut self) {
self.deletion_protection = false;
}
pub fn set_deletion_protection(&mut self, v: bool) {
self.deletion_protection = v;
}
}
impl ::protobuf::Message for Table {
fn is_initialized(&self) -> bool {
for v in &self.restore_info {
if !v.is_initialized() {
return false;
}
};
for v in &self.change_stream_config {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
},
2 => {
::protobuf::rt::read_map_into::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Table_ClusterState>>(wire_type, is, &mut self.cluster_states)?;
},
3 => {
::protobuf::rt::read_map_into::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<ColumnFamily>>(wire_type, is, &mut self.column_families)?;
},
4 => {
::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.granularity, 4, &mut self.unknown_fields)?
},
6 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.restore_info)?;
},
8 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.change_stream_config)?;
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.deletion_protection = tmp;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if !self.name.is_empty() {
my_size += ::protobuf::rt::string_size(1, &self.name);
}
my_size += ::protobuf::rt::compute_map_size::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Table_ClusterState>>(2, &self.cluster_states);
my_size += ::protobuf::rt::compute_map_size::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<ColumnFamily>>(3, &self.column_families);
if self.granularity != Table_TimestampGranularity::TIMESTAMP_GRANULARITY_UNSPECIFIED {
my_size += ::protobuf::rt::enum_size(4, self.granularity);
}
if let Some(ref v) = self.restore_info.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if let Some(ref v) = self.change_stream_config.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if self.deletion_protection != false {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if !self.name.is_empty() {
os.write_string(1, &self.name)?;
}
::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Table_ClusterState>>(2, &self.cluster_states, os)?;
::protobuf::rt::write_map_with_cached_sizes::<::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<ColumnFamily>>(3, &self.column_families, os)?;
if self.granularity != Table_TimestampGranularity::TIMESTAMP_GRANULARITY_UNSPECIFIED {
os.write_enum(4, ::protobuf::ProtobufEnum::value(&self.granularity))?;
}
if let Some(ref v) = self.restore_info.as_ref() {
os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if let Some(ref v) = self.change_stream_config.as_ref() {
os.write_tag(8, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if self.deletion_protection != false {
os.write_bool(9, self.deletion_protection)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Table {
Table::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"name",
|m: &Table| { &m.name },
|m: &mut Table| { &mut m.name },
));
fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<Table_ClusterState>>(
"cluster_states",
|m: &Table| { &m.cluster_states },
|m: &mut Table| { &mut m.cluster_states },
));
fields.push(::protobuf::reflect::accessor::make_map_accessor::<_, ::protobuf::types::ProtobufTypeString, ::protobuf::types::ProtobufTypeMessage<ColumnFamily>>(
"column_families",
|m: &Table| { &m.column_families },
|m: &mut Table| { &mut m.column_families },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Table_TimestampGranularity>>(
"granularity",
|m: &Table| { &m.granularity },
|m: &mut Table| { &mut m.granularity },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<RestoreInfo>>(
"restore_info",
|m: &Table| { &m.restore_info },
|m: &mut Table| { &mut m.restore_info },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<ChangeStreamConfig>>(
"change_stream_config",
|m: &Table| { &m.change_stream_config },
|m: &mut Table| { &mut m.change_stream_config },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"deletion_protection",
|m: &Table| { &m.deletion_protection },
|m: &mut Table| { &mut m.deletion_protection },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Table>(
"Table",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Table {
static instance: ::protobuf::rt::LazyV2<Table> = ::protobuf::rt::LazyV2::INIT;
instance.get(Table::new)
}
}
impl ::protobuf::Clear for Table {
fn clear(&mut self) {
self.name.clear();
self.cluster_states.clear();
self.column_families.clear();
self.granularity = Table_TimestampGranularity::TIMESTAMP_GRANULARITY_UNSPECIFIED;
self.restore_info.clear();
self.change_stream_config.clear();
self.deletion_protection = false;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Table {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Table {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Table_ClusterState {
pub replication_state: Table_ClusterState_ReplicationState,
pub encryption_info: ::protobuf::RepeatedField<EncryptionInfo>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Table_ClusterState {
fn default() -> &'a Table_ClusterState {
<Table_ClusterState as ::protobuf::Message>::default_instance()
}
}
impl Table_ClusterState {
pub fn new() -> Table_ClusterState {
::std::default::Default::default()
}
pub fn get_replication_state(&self) -> Table_ClusterState_ReplicationState {
self.replication_state
}
pub fn clear_replication_state(&mut self) {
self.replication_state = Table_ClusterState_ReplicationState::STATE_NOT_KNOWN;
}
pub fn set_replication_state(&mut self, v: Table_ClusterState_ReplicationState) {
self.replication_state = v;
}
pub fn get_encryption_info(&self) -> &[EncryptionInfo] {
&self.encryption_info
}
pub fn clear_encryption_info(&mut self) {
self.encryption_info.clear();
}
pub fn set_encryption_info(&mut self, v: ::protobuf::RepeatedField<EncryptionInfo>) {
self.encryption_info = v;
}
pub fn mut_encryption_info(&mut self) -> &mut ::protobuf::RepeatedField<EncryptionInfo> {
&mut self.encryption_info
}
pub fn take_encryption_info(&mut self) -> ::protobuf::RepeatedField<EncryptionInfo> {
::std::mem::replace(&mut self.encryption_info, ::protobuf::RepeatedField::new())
}
}
impl ::protobuf::Message for Table_ClusterState {
fn is_initialized(&self) -> bool {
for v in &self.encryption_info {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.replication_state, 1, &mut self.unknown_fields)?
},
2 => {
::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.encryption_info)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.replication_state != Table_ClusterState_ReplicationState::STATE_NOT_KNOWN {
my_size += ::protobuf::rt::enum_size(1, self.replication_state);
}
for value in &self.encryption_info {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if self.replication_state != Table_ClusterState_ReplicationState::STATE_NOT_KNOWN {
os.write_enum(1, ::protobuf::ProtobufEnum::value(&self.replication_state))?;
}
for v in &self.encryption_info {
os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
};
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Table_ClusterState {
Table_ClusterState::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Table_ClusterState_ReplicationState>>(
"replication_state",
|m: &Table_ClusterState| { &m.replication_state },
|m: &mut Table_ClusterState| { &mut m.replication_state },
));
fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EncryptionInfo>>(
"encryption_info",
|m: &Table_ClusterState| { &m.encryption_info },
|m: &mut Table_ClusterState| { &mut m.encryption_info },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Table_ClusterState>(
"Table.ClusterState",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Table_ClusterState {
static instance: ::protobuf::rt::LazyV2<Table_ClusterState> = ::protobuf::rt::LazyV2::INIT;
instance.get(Table_ClusterState::new)
}
}
impl ::protobuf::Clear for Table_ClusterState {
fn clear(&mut self) {
self.replication_state = Table_ClusterState_ReplicationState::STATE_NOT_KNOWN;
self.encryption_info.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Table_ClusterState {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Table_ClusterState {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum Table_ClusterState_ReplicationState {
STATE_NOT_KNOWN = 0,
INITIALIZING = 1,
PLANNED_MAINTENANCE = 2,
UNPLANNED_MAINTENANCE = 3,
READY = 4,
READY_OPTIMIZING = 5,
}
impl ::protobuf::ProtobufEnum for Table_ClusterState_ReplicationState {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<Table_ClusterState_ReplicationState> {
match value {
0 => ::std::option::Option::Some(Table_ClusterState_ReplicationState::STATE_NOT_KNOWN),
1 => ::std::option::Option::Some(Table_ClusterState_ReplicationState::INITIALIZING),
2 => ::std::option::Option::Some(Table_ClusterState_ReplicationState::PLANNED_MAINTENANCE),
3 => ::std::option::Option::Some(Table_ClusterState_ReplicationState::UNPLANNED_MAINTENANCE),
4 => ::std::option::Option::Some(Table_ClusterState_ReplicationState::READY),
5 => ::std::option::Option::Some(Table_ClusterState_ReplicationState::READY_OPTIMIZING),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [Table_ClusterState_ReplicationState] = &[
Table_ClusterState_ReplicationState::STATE_NOT_KNOWN,
Table_ClusterState_ReplicationState::INITIALIZING,
Table_ClusterState_ReplicationState::PLANNED_MAINTENANCE,
Table_ClusterState_ReplicationState::UNPLANNED_MAINTENANCE,
Table_ClusterState_ReplicationState::READY,
Table_ClusterState_ReplicationState::READY_OPTIMIZING,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<Table_ClusterState_ReplicationState>("Table.ClusterState.ReplicationState", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for Table_ClusterState_ReplicationState {
}
impl ::std::default::Default for Table_ClusterState_ReplicationState {
fn default() -> Self {
Table_ClusterState_ReplicationState::STATE_NOT_KNOWN
}
}
impl ::protobuf::reflect::ProtobufValue for Table_ClusterState_ReplicationState {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum Table_TimestampGranularity {
TIMESTAMP_GRANULARITY_UNSPECIFIED = 0,
MILLIS = 1,
}
impl ::protobuf::ProtobufEnum for Table_TimestampGranularity {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<Table_TimestampGranularity> {
match value {
0 => ::std::option::Option::Some(Table_TimestampGranularity::TIMESTAMP_GRANULARITY_UNSPECIFIED),
1 => ::std::option::Option::Some(Table_TimestampGranularity::MILLIS),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [Table_TimestampGranularity] = &[
Table_TimestampGranularity::TIMESTAMP_GRANULARITY_UNSPECIFIED,
Table_TimestampGranularity::MILLIS,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<Table_TimestampGranularity>("Table.TimestampGranularity", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for Table_TimestampGranularity {
}
impl ::std::default::Default for Table_TimestampGranularity {
fn default() -> Self {
Table_TimestampGranularity::TIMESTAMP_GRANULARITY_UNSPECIFIED
}
}
impl ::protobuf::reflect::ProtobufValue for Table_TimestampGranularity {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum Table_View {
VIEW_UNSPECIFIED = 0,
NAME_ONLY = 1,
SCHEMA_VIEW = 2,
REPLICATION_VIEW = 3,
ENCRYPTION_VIEW = 5,
FULL = 4,
}
impl ::protobuf::ProtobufEnum for Table_View {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<Table_View> {
match value {
0 => ::std::option::Option::Some(Table_View::VIEW_UNSPECIFIED),
1 => ::std::option::Option::Some(Table_View::NAME_ONLY),
2 => ::std::option::Option::Some(Table_View::SCHEMA_VIEW),
3 => ::std::option::Option::Some(Table_View::REPLICATION_VIEW),
5 => ::std::option::Option::Some(Table_View::ENCRYPTION_VIEW),
4 => ::std::option::Option::Some(Table_View::FULL),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [Table_View] = &[
Table_View::VIEW_UNSPECIFIED,
Table_View::NAME_ONLY,
Table_View::SCHEMA_VIEW,
Table_View::REPLICATION_VIEW,
Table_View::ENCRYPTION_VIEW,
Table_View::FULL,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<Table_View>("Table.View", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for Table_View {
}
impl ::std::default::Default for Table_View {
fn default() -> Self {
Table_View::VIEW_UNSPECIFIED
}
}
impl ::protobuf::reflect::ProtobufValue for Table_View {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct ColumnFamily {
pub gc_rule: ::protobuf::SingularPtrField<GcRule>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a ColumnFamily {
fn default() -> &'a ColumnFamily {
<ColumnFamily as ::protobuf::Message>::default_instance()
}
}
impl ColumnFamily {
pub fn new() -> ColumnFamily {
::std::default::Default::default()
}
pub fn get_gc_rule(&self) -> &GcRule {
self.gc_rule.as_ref().unwrap_or_else(|| <GcRule as ::protobuf::Message>::default_instance())
}
pub fn clear_gc_rule(&mut self) {
self.gc_rule.clear();
}
pub fn has_gc_rule(&self) -> bool {
self.gc_rule.is_some()
}
pub fn set_gc_rule(&mut self, v: GcRule) {
self.gc_rule = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_gc_rule(&mut self) -> &mut GcRule {
if self.gc_rule.is_none() {
self.gc_rule.set_default();
}
self.gc_rule.as_mut().unwrap()
}
pub fn take_gc_rule(&mut self) -> GcRule {
self.gc_rule.take().unwrap_or_else(|| GcRule::new())
}
}
impl ::protobuf::Message for ColumnFamily {
fn is_initialized(&self) -> bool {
for v in &self.gc_rule {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.gc_rule)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.gc_rule.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.gc_rule.as_ref() {
os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> ColumnFamily {
ColumnFamily::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<GcRule>>(
"gc_rule",
|m: &ColumnFamily| { &m.gc_rule },
|m: &mut ColumnFamily| { &mut m.gc_rule },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<ColumnFamily>(
"ColumnFamily",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static ColumnFamily {
static instance: ::protobuf::rt::LazyV2<ColumnFamily> = ::protobuf::rt::LazyV2::INIT;
instance.get(ColumnFamily::new)
}
}
impl ::protobuf::Clear for ColumnFamily {
fn clear(&mut self) {
self.gc_rule.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for ColumnFamily {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for ColumnFamily {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct GcRule {
pub rule: ::std::option::Option<GcRule_oneof_rule>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a GcRule {
fn default() -> &'a GcRule {
<GcRule as ::protobuf::Message>::default_instance()
}
}
#[derive(Clone,PartialEq,Debug)]
pub enum GcRule_oneof_rule {
max_num_versions(i32),
max_age(::protobuf::well_known_types::Duration),
intersection(GcRule_Intersection),
union(GcRule_Union),
}
impl GcRule {
pub fn new() -> GcRule {
::std::default::Default::default()
}
pub fn get_max_num_versions(&self) -> i32 {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::max_num_versions(v)) => v,
_ => 0,
}
}
pub fn clear_max_num_versions(&mut self) {
self.rule = ::std::option::Option::None;
}
pub fn has_max_num_versions(&self) -> bool {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::max_num_versions(..)) => true,
_ => false,
}
}
pub fn set_max_num_versions(&mut self, v: i32) {
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::max_num_versions(v))
}
pub fn get_max_age(&self) -> &::protobuf::well_known_types::Duration {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::max_age(ref v)) => v,
_ => <::protobuf::well_known_types::Duration as ::protobuf::Message>::default_instance(),
}
}
pub fn clear_max_age(&mut self) {
self.rule = ::std::option::Option::None;
}
pub fn has_max_age(&self) -> bool {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::max_age(..)) => true,
_ => false,
}
}
pub fn set_max_age(&mut self, v: ::protobuf::well_known_types::Duration) {
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::max_age(v))
}
pub fn mut_max_age(&mut self) -> &mut ::protobuf::well_known_types::Duration {
if let ::std::option::Option::Some(GcRule_oneof_rule::max_age(_)) = self.rule {
} else {
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::max_age(::protobuf::well_known_types::Duration::new()));
}
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::max_age(ref mut v)) => v,
_ => panic!(),
}
}
pub fn take_max_age(&mut self) -> ::protobuf::well_known_types::Duration {
if self.has_max_age() {
match self.rule.take() {
::std::option::Option::Some(GcRule_oneof_rule::max_age(v)) => v,
_ => panic!(),
}
} else {
::protobuf::well_known_types::Duration::new()
}
}
pub fn get_intersection(&self) -> &GcRule_Intersection {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::intersection(ref v)) => v,
_ => <GcRule_Intersection as ::protobuf::Message>::default_instance(),
}
}
pub fn clear_intersection(&mut self) {
self.rule = ::std::option::Option::None;
}
pub fn has_intersection(&self) -> bool {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::intersection(..)) => true,
_ => false,
}
}
pub fn set_intersection(&mut self, v: GcRule_Intersection) {
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::intersection(v))
}
pub fn mut_intersection(&mut self) -> &mut GcRule_Intersection {
if let ::std::option::Option::Some(GcRule_oneof_rule::intersection(_)) = self.rule {
} else {
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::intersection(GcRule_Intersection::new()));
}
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::intersection(ref mut v)) => v,
_ => panic!(),
}
}
pub fn take_intersection(&mut self) -> GcRule_Intersection {
if self.has_intersection() {
match self.rule.take() {
::std::option::Option::Some(GcRule_oneof_rule::intersection(v)) => v,
_ => panic!(),
}
} else {
GcRule_Intersection::new()
}
}
pub fn get_union(&self) -> &GcRule_Union {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::union(ref v)) => v,
_ => <GcRule_Union as ::protobuf::Message>::default_instance(),
}
}
pub fn clear_union(&mut self) {
self.rule = ::std::option::Option::None;
}
pub fn has_union(&self) -> bool {
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::union(..)) => true,
_ => false,
}
}
pub fn set_union(&mut self, v: GcRule_Union) {
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::union(v))
}
pub fn mut_union(&mut self) -> &mut GcRule_Union {
if let ::std::option::Option::Some(GcRule_oneof_rule::union(_)) = self.rule {
} else {
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::union(GcRule_Union::new()));
}
match self.rule {
::std::option::Option::Some(GcRule_oneof_rule::union(ref mut v)) => v,
_ => panic!(),
}
}
pub fn take_union(&mut self) -> GcRule_Union {
if self.has_union() {
match self.rule.take() {
::std::option::Option::Some(GcRule_oneof_rule::union(v)) => v,
_ => panic!(),
}
} else {
GcRule_Union::new()
}
}
}
impl ::protobuf::Message for GcRule {
fn is_initialized(&self) -> bool {
if let Some(GcRule_oneof_rule::max_age(ref v)) = self.rule {
if !v.is_initialized() {
return false;
}
}
if let Some(GcRule_oneof_rule::intersection(ref v)) = self.rule {
if !v.is_initialized() {
return false;
}
}
if let Some(GcRule_oneof_rule::union(ref v)) = self.rule {
if !v.is_initialized() {
return false;
}
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::max_num_versions(is.read_int32()?));
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::max_age(is.read_message()?));
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::intersection(is.read_message()?));
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeLengthDelimited {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
self.rule = ::std::option::Option::Some(GcRule_oneof_rule::union(is.read_message()?));
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let ::std::option::Option::Some(ref v) = self.rule {
match v {
&GcRule_oneof_rule::max_num_versions(v) => {
my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
},
&GcRule_oneof_rule::max_age(ref v) => {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
},
&GcRule_oneof_rule::intersection(ref v) => {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
},
&GcRule_oneof_rule::union(ref v) => {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
},
};
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let ::std::option::Option::Some(ref v) = self.rule {
match v {
&GcRule_oneof_rule::max_num_versions(v) => {
os.write_int32(1, v)?;
},
&GcRule_oneof_rule::max_age(ref v) => {
os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
},
&GcRule_oneof_rule::intersection(ref v) => {
os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
},
&GcRule_oneof_rule::union(ref v) => {
os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
},
};
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> GcRule {
GcRule::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_i32_accessor::<_>(
"max_num_versions",
GcRule::has_max_num_versions,
GcRule::get_max_num_versions,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, ::protobuf::well_known_types::Duration>(
"max_age",
GcRule::has_max_age,
GcRule::get_max_age,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, GcRule_Intersection>(
"intersection",
GcRule::has_intersection,
GcRule::get_intersection,
));
fields.push(::protobuf::reflect::accessor::make_singular_message_accessor::<_, GcRule_Union>(
"union",
GcRule::has_union,
GcRule::get_union,
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<GcRule>(
"GcRule",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static GcRule {
static instance: ::protobuf::rt::LazyV2<GcRule> = ::protobuf::rt::LazyV2::INIT;
instance.get(GcRule::new)
}
}
impl ::protobuf::Clear for GcRule {
fn clear(&mut self) {
self.rule = ::std::option::Option::None;
self.rule = ::std::option::Option::None;
self.rule = ::std::option::Option::None;
self.rule = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for GcRule {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for GcRule {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct GcRule_Intersection {
pub rules: ::protobuf::RepeatedField<GcRule>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a GcRule_Intersection {
fn default() -> &'a GcRule_Intersection {
<GcRule_Intersection as ::protobuf::Message>::default_instance()
}
}
impl GcRule_Intersection {
pub fn new() -> GcRule_Intersection {
::std::default::Default::default()
}
pub fn get_rules(&self) -> &[GcRule] {
&self.rules
}
pub fn clear_rules(&mut self) {
self.rules.clear();
}
pub fn set_rules(&mut self, v: ::protobuf::RepeatedField<GcRule>) {
self.rules = v;
}
pub fn mut_rules(&mut self) -> &mut ::protobuf::RepeatedField<GcRule> {
&mut self.rules
}
pub fn take_rules(&mut self) -> ::protobuf::RepeatedField<GcRule> {
::std::mem::replace(&mut self.rules, ::protobuf::RepeatedField::new())
}
}
impl ::protobuf::Message for GcRule_Intersection {
fn is_initialized(&self) -> bool {
for v in &self.rules {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.rules)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in &self.rules {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
for v in &self.rules {
os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
};
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> GcRule_Intersection {
GcRule_Intersection::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<GcRule>>(
"rules",
|m: &GcRule_Intersection| { &m.rules },
|m: &mut GcRule_Intersection| { &mut m.rules },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<GcRule_Intersection>(
"GcRule.Intersection",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static GcRule_Intersection {
static instance: ::protobuf::rt::LazyV2<GcRule_Intersection> = ::protobuf::rt::LazyV2::INIT;
instance.get(GcRule_Intersection::new)
}
}
impl ::protobuf::Clear for GcRule_Intersection {
fn clear(&mut self) {
self.rules.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for GcRule_Intersection {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for GcRule_Intersection {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct GcRule_Union {
pub rules: ::protobuf::RepeatedField<GcRule>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a GcRule_Union {
fn default() -> &'a GcRule_Union {
<GcRule_Union as ::protobuf::Message>::default_instance()
}
}
impl GcRule_Union {
pub fn new() -> GcRule_Union {
::std::default::Default::default()
}
pub fn get_rules(&self) -> &[GcRule] {
&self.rules
}
pub fn clear_rules(&mut self) {
self.rules.clear();
}
pub fn set_rules(&mut self, v: ::protobuf::RepeatedField<GcRule>) {
self.rules = v;
}
pub fn mut_rules(&mut self) -> &mut ::protobuf::RepeatedField<GcRule> {
&mut self.rules
}
pub fn take_rules(&mut self) -> ::protobuf::RepeatedField<GcRule> {
::std::mem::replace(&mut self.rules, ::protobuf::RepeatedField::new())
}
}
impl ::protobuf::Message for GcRule_Union {
fn is_initialized(&self) -> bool {
for v in &self.rules {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.rules)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in &self.rules {
let len = value.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
};
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
for v in &self.rules {
os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
};
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> GcRule_Union {
GcRule_Union::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<GcRule>>(
"rules",
|m: &GcRule_Union| { &m.rules },
|m: &mut GcRule_Union| { &mut m.rules },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<GcRule_Union>(
"GcRule.Union",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static GcRule_Union {
static instance: ::protobuf::rt::LazyV2<GcRule_Union> = ::protobuf::rt::LazyV2::INIT;
instance.get(GcRule_Union::new)
}
}
impl ::protobuf::Clear for GcRule_Union {
fn clear(&mut self) {
self.rules.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for GcRule_Union {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for GcRule_Union {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct EncryptionInfo {
pub encryption_type: EncryptionInfo_EncryptionType,
pub encryption_status: ::protobuf::SingularPtrField<super::status::Status>,
pub kms_key_version: ::std::string::String,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a EncryptionInfo {
fn default() -> &'a EncryptionInfo {
<EncryptionInfo as ::protobuf::Message>::default_instance()
}
}
impl EncryptionInfo {
pub fn new() -> EncryptionInfo {
::std::default::Default::default()
}
pub fn get_encryption_type(&self) -> EncryptionInfo_EncryptionType {
self.encryption_type
}
pub fn clear_encryption_type(&mut self) {
self.encryption_type = EncryptionInfo_EncryptionType::ENCRYPTION_TYPE_UNSPECIFIED;
}
pub fn set_encryption_type(&mut self, v: EncryptionInfo_EncryptionType) {
self.encryption_type = v;
}
pub fn get_encryption_status(&self) -> &super::status::Status {
self.encryption_status.as_ref().unwrap_or_else(|| <super::status::Status as ::protobuf::Message>::default_instance())
}
pub fn clear_encryption_status(&mut self) {
self.encryption_status.clear();
}
pub fn has_encryption_status(&self) -> bool {
self.encryption_status.is_some()
}
pub fn set_encryption_status(&mut self, v: super::status::Status) {
self.encryption_status = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_encryption_status(&mut self) -> &mut super::status::Status {
if self.encryption_status.is_none() {
self.encryption_status.set_default();
}
self.encryption_status.as_mut().unwrap()
}
pub fn take_encryption_status(&mut self) -> super::status::Status {
self.encryption_status.take().unwrap_or_else(|| super::status::Status::new())
}
pub fn get_kms_key_version(&self) -> &str {
&self.kms_key_version
}
pub fn clear_kms_key_version(&mut self) {
self.kms_key_version.clear();
}
pub fn set_kms_key_version(&mut self, v: ::std::string::String) {
self.kms_key_version = v;
}
pub fn mut_kms_key_version(&mut self) -> &mut ::std::string::String {
&mut self.kms_key_version
}
pub fn take_kms_key_version(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.kms_key_version, ::std::string::String::new())
}
}
impl ::protobuf::Message for EncryptionInfo {
fn is_initialized(&self) -> bool {
for v in &self.encryption_status {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
3 => {
::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.encryption_type, 3, &mut self.unknown_fields)?
},
4 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.encryption_status)?;
},
2 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.kms_key_version)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if self.encryption_type != EncryptionInfo_EncryptionType::ENCRYPTION_TYPE_UNSPECIFIED {
my_size += ::protobuf::rt::enum_size(3, self.encryption_type);
}
if let Some(ref v) = self.encryption_status.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if !self.kms_key_version.is_empty() {
my_size += ::protobuf::rt::string_size(2, &self.kms_key_version);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if self.encryption_type != EncryptionInfo_EncryptionType::ENCRYPTION_TYPE_UNSPECIFIED {
os.write_enum(3, ::protobuf::ProtobufEnum::value(&self.encryption_type))?;
}
if let Some(ref v) = self.encryption_status.as_ref() {
os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if !self.kms_key_version.is_empty() {
os.write_string(2, &self.kms_key_version)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> EncryptionInfo {
EncryptionInfo::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<EncryptionInfo_EncryptionType>>(
"encryption_type",
|m: &EncryptionInfo| { &m.encryption_type },
|m: &mut EncryptionInfo| { &mut m.encryption_type },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<super::status::Status>>(
"encryption_status",
|m: &EncryptionInfo| { &m.encryption_status },
|m: &mut EncryptionInfo| { &mut m.encryption_status },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"kms_key_version",
|m: &EncryptionInfo| { &m.kms_key_version },
|m: &mut EncryptionInfo| { &mut m.kms_key_version },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<EncryptionInfo>(
"EncryptionInfo",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static EncryptionInfo {
static instance: ::protobuf::rt::LazyV2<EncryptionInfo> = ::protobuf::rt::LazyV2::INIT;
instance.get(EncryptionInfo::new)
}
}
impl ::protobuf::Clear for EncryptionInfo {
fn clear(&mut self) {
self.encryption_type = EncryptionInfo_EncryptionType::ENCRYPTION_TYPE_UNSPECIFIED;
self.encryption_status.clear();
self.kms_key_version.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for EncryptionInfo {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for EncryptionInfo {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum EncryptionInfo_EncryptionType {
ENCRYPTION_TYPE_UNSPECIFIED = 0,
GOOGLE_DEFAULT_ENCRYPTION = 1,
CUSTOMER_MANAGED_ENCRYPTION = 2,
}
impl ::protobuf::ProtobufEnum for EncryptionInfo_EncryptionType {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<EncryptionInfo_EncryptionType> {
match value {
0 => ::std::option::Option::Some(EncryptionInfo_EncryptionType::ENCRYPTION_TYPE_UNSPECIFIED),
1 => ::std::option::Option::Some(EncryptionInfo_EncryptionType::GOOGLE_DEFAULT_ENCRYPTION),
2 => ::std::option::Option::Some(EncryptionInfo_EncryptionType::CUSTOMER_MANAGED_ENCRYPTION),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [EncryptionInfo_EncryptionType] = &[
EncryptionInfo_EncryptionType::ENCRYPTION_TYPE_UNSPECIFIED,
EncryptionInfo_EncryptionType::GOOGLE_DEFAULT_ENCRYPTION,
EncryptionInfo_EncryptionType::CUSTOMER_MANAGED_ENCRYPTION,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<EncryptionInfo_EncryptionType>("EncryptionInfo.EncryptionType", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for EncryptionInfo_EncryptionType {
}
impl ::std::default::Default for EncryptionInfo_EncryptionType {
fn default() -> Self {
EncryptionInfo_EncryptionType::ENCRYPTION_TYPE_UNSPECIFIED
}
}
impl ::protobuf::reflect::ProtobufValue for EncryptionInfo_EncryptionType {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Snapshot {
pub name: ::std::string::String,
pub source_table: ::protobuf::SingularPtrField<Table>,
pub data_size_bytes: i64,
pub create_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
pub delete_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
pub state: Snapshot_State,
pub description: ::std::string::String,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Snapshot {
fn default() -> &'a Snapshot {
<Snapshot as ::protobuf::Message>::default_instance()
}
}
impl Snapshot {
pub fn new() -> Snapshot {
::std::default::Default::default()
}
pub fn get_name(&self) -> &str {
&self.name
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = v;
}
pub fn mut_name(&mut self) -> &mut ::std::string::String {
&mut self.name
}
pub fn take_name(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.name, ::std::string::String::new())
}
pub fn get_source_table(&self) -> &Table {
self.source_table.as_ref().unwrap_or_else(|| <Table as ::protobuf::Message>::default_instance())
}
pub fn clear_source_table(&mut self) {
self.source_table.clear();
}
pub fn has_source_table(&self) -> bool {
self.source_table.is_some()
}
pub fn set_source_table(&mut self, v: Table) {
self.source_table = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_source_table(&mut self) -> &mut Table {
if self.source_table.is_none() {
self.source_table.set_default();
}
self.source_table.as_mut().unwrap()
}
pub fn take_source_table(&mut self) -> Table {
self.source_table.take().unwrap_or_else(|| Table::new())
}
pub fn get_data_size_bytes(&self) -> i64 {
self.data_size_bytes
}
pub fn clear_data_size_bytes(&mut self) {
self.data_size_bytes = 0;
}
pub fn set_data_size_bytes(&mut self, v: i64) {
self.data_size_bytes = v;
}
pub fn get_create_time(&self) -> &::protobuf::well_known_types::Timestamp {
self.create_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
}
pub fn clear_create_time(&mut self) {
self.create_time.clear();
}
pub fn has_create_time(&self) -> bool {
self.create_time.is_some()
}
pub fn set_create_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
self.create_time = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_create_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
if self.create_time.is_none() {
self.create_time.set_default();
}
self.create_time.as_mut().unwrap()
}
pub fn take_create_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
self.create_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
}
pub fn get_delete_time(&self) -> &::protobuf::well_known_types::Timestamp {
self.delete_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
}
pub fn clear_delete_time(&mut self) {
self.delete_time.clear();
}
pub fn has_delete_time(&self) -> bool {
self.delete_time.is_some()
}
pub fn set_delete_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
self.delete_time = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_delete_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
if self.delete_time.is_none() {
self.delete_time.set_default();
}
self.delete_time.as_mut().unwrap()
}
pub fn take_delete_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
self.delete_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
}
pub fn get_state(&self) -> Snapshot_State {
self.state
}
pub fn clear_state(&mut self) {
self.state = Snapshot_State::STATE_NOT_KNOWN;
}
pub fn set_state(&mut self, v: Snapshot_State) {
self.state = v;
}
pub fn get_description(&self) -> &str {
&self.description
}
pub fn clear_description(&mut self) {
self.description.clear();
}
pub fn set_description(&mut self, v: ::std::string::String) {
self.description = v;
}
pub fn mut_description(&mut self) -> &mut ::std::string::String {
&mut self.description
}
pub fn take_description(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.description, ::std::string::String::new())
}
}
impl ::protobuf::Message for Snapshot {
fn is_initialized(&self) -> bool {
for v in &self.source_table {
if !v.is_initialized() {
return false;
}
};
for v in &self.create_time {
if !v.is_initialized() {
return false;
}
};
for v in &self.delete_time {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
},
2 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.source_table)?;
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_int64()?;
self.data_size_bytes = tmp;
},
4 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.create_time)?;
},
5 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.delete_time)?;
},
6 => {
::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.state, 6, &mut self.unknown_fields)?
},
7 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.description)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if !self.name.is_empty() {
my_size += ::protobuf::rt::string_size(1, &self.name);
}
if let Some(ref v) = self.source_table.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if self.data_size_bytes != 0 {
my_size += ::protobuf::rt::value_size(3, self.data_size_bytes, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(ref v) = self.create_time.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if let Some(ref v) = self.delete_time.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if self.state != Snapshot_State::STATE_NOT_KNOWN {
my_size += ::protobuf::rt::enum_size(6, self.state);
}
if !self.description.is_empty() {
my_size += ::protobuf::rt::string_size(7, &self.description);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if !self.name.is_empty() {
os.write_string(1, &self.name)?;
}
if let Some(ref v) = self.source_table.as_ref() {
os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if self.data_size_bytes != 0 {
os.write_int64(3, self.data_size_bytes)?;
}
if let Some(ref v) = self.create_time.as_ref() {
os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if let Some(ref v) = self.delete_time.as_ref() {
os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if self.state != Snapshot_State::STATE_NOT_KNOWN {
os.write_enum(6, ::protobuf::ProtobufEnum::value(&self.state))?;
}
if !self.description.is_empty() {
os.write_string(7, &self.description)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Snapshot {
Snapshot::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"name",
|m: &Snapshot| { &m.name },
|m: &mut Snapshot| { &mut m.name },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<Table>>(
"source_table",
|m: &Snapshot| { &m.source_table },
|m: &mut Snapshot| { &mut m.source_table },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
"data_size_bytes",
|m: &Snapshot| { &m.data_size_bytes },
|m: &mut Snapshot| { &mut m.data_size_bytes },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
"create_time",
|m: &Snapshot| { &m.create_time },
|m: &mut Snapshot| { &mut m.create_time },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
"delete_time",
|m: &Snapshot| { &m.delete_time },
|m: &mut Snapshot| { &mut m.delete_time },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Snapshot_State>>(
"state",
|m: &Snapshot| { &m.state },
|m: &mut Snapshot| { &mut m.state },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"description",
|m: &Snapshot| { &m.description },
|m: &mut Snapshot| { &mut m.description },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Snapshot>(
"Snapshot",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Snapshot {
static instance: ::protobuf::rt::LazyV2<Snapshot> = ::protobuf::rt::LazyV2::INIT;
instance.get(Snapshot::new)
}
}
impl ::protobuf::Clear for Snapshot {
fn clear(&mut self) {
self.name.clear();
self.source_table.clear();
self.data_size_bytes = 0;
self.create_time.clear();
self.delete_time.clear();
self.state = Snapshot_State::STATE_NOT_KNOWN;
self.description.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Snapshot {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Snapshot {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum Snapshot_State {
STATE_NOT_KNOWN = 0,
READY = 1,
CREATING = 2,
}
impl ::protobuf::ProtobufEnum for Snapshot_State {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<Snapshot_State> {
match value {
0 => ::std::option::Option::Some(Snapshot_State::STATE_NOT_KNOWN),
1 => ::std::option::Option::Some(Snapshot_State::READY),
2 => ::std::option::Option::Some(Snapshot_State::CREATING),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [Snapshot_State] = &[
Snapshot_State::STATE_NOT_KNOWN,
Snapshot_State::READY,
Snapshot_State::CREATING,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<Snapshot_State>("Snapshot.State", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for Snapshot_State {
}
impl ::std::default::Default for Snapshot_State {
fn default() -> Self {
Snapshot_State::STATE_NOT_KNOWN
}
}
impl ::protobuf::reflect::ProtobufValue for Snapshot_State {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Backup {
pub name: ::std::string::String,
pub source_table: ::std::string::String,
pub source_backup: ::std::string::String,
pub expire_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
pub start_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
pub end_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
pub size_bytes: i64,
pub state: Backup_State,
pub encryption_info: ::protobuf::SingularPtrField<EncryptionInfo>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Backup {
fn default() -> &'a Backup {
<Backup as ::protobuf::Message>::default_instance()
}
}
impl Backup {
pub fn new() -> Backup {
::std::default::Default::default()
}
pub fn get_name(&self) -> &str {
&self.name
}
pub fn clear_name(&mut self) {
self.name.clear();
}
pub fn set_name(&mut self, v: ::std::string::String) {
self.name = v;
}
pub fn mut_name(&mut self) -> &mut ::std::string::String {
&mut self.name
}
pub fn take_name(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.name, ::std::string::String::new())
}
pub fn get_source_table(&self) -> &str {
&self.source_table
}
pub fn clear_source_table(&mut self) {
self.source_table.clear();
}
pub fn set_source_table(&mut self, v: ::std::string::String) {
self.source_table = v;
}
pub fn mut_source_table(&mut self) -> &mut ::std::string::String {
&mut self.source_table
}
pub fn take_source_table(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.source_table, ::std::string::String::new())
}
pub fn get_source_backup(&self) -> &str {
&self.source_backup
}
pub fn clear_source_backup(&mut self) {
self.source_backup.clear();
}
pub fn set_source_backup(&mut self, v: ::std::string::String) {
self.source_backup = v;
}
pub fn mut_source_backup(&mut self) -> &mut ::std::string::String {
&mut self.source_backup
}
pub fn take_source_backup(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.source_backup, ::std::string::String::new())
}
pub fn get_expire_time(&self) -> &::protobuf::well_known_types::Timestamp {
self.expire_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
}
pub fn clear_expire_time(&mut self) {
self.expire_time.clear();
}
pub fn has_expire_time(&self) -> bool {
self.expire_time.is_some()
}
pub fn set_expire_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
self.expire_time = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_expire_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
if self.expire_time.is_none() {
self.expire_time.set_default();
}
self.expire_time.as_mut().unwrap()
}
pub fn take_expire_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
self.expire_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
}
pub fn get_start_time(&self) -> &::protobuf::well_known_types::Timestamp {
self.start_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
}
pub fn clear_start_time(&mut self) {
self.start_time.clear();
}
pub fn has_start_time(&self) -> bool {
self.start_time.is_some()
}
pub fn set_start_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
self.start_time = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_start_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
if self.start_time.is_none() {
self.start_time.set_default();
}
self.start_time.as_mut().unwrap()
}
pub fn take_start_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
self.start_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
}
pub fn get_end_time(&self) -> &::protobuf::well_known_types::Timestamp {
self.end_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
}
pub fn clear_end_time(&mut self) {
self.end_time.clear();
}
pub fn has_end_time(&self) -> bool {
self.end_time.is_some()
}
pub fn set_end_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
self.end_time = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_end_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
if self.end_time.is_none() {
self.end_time.set_default();
}
self.end_time.as_mut().unwrap()
}
pub fn take_end_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
self.end_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
}
pub fn get_size_bytes(&self) -> i64 {
self.size_bytes
}
pub fn clear_size_bytes(&mut self) {
self.size_bytes = 0;
}
pub fn set_size_bytes(&mut self, v: i64) {
self.size_bytes = v;
}
pub fn get_state(&self) -> Backup_State {
self.state
}
pub fn clear_state(&mut self) {
self.state = Backup_State::STATE_UNSPECIFIED;
}
pub fn set_state(&mut self, v: Backup_State) {
self.state = v;
}
pub fn get_encryption_info(&self) -> &EncryptionInfo {
self.encryption_info.as_ref().unwrap_or_else(|| <EncryptionInfo as ::protobuf::Message>::default_instance())
}
pub fn clear_encryption_info(&mut self) {
self.encryption_info.clear();
}
pub fn has_encryption_info(&self) -> bool {
self.encryption_info.is_some()
}
pub fn set_encryption_info(&mut self, v: EncryptionInfo) {
self.encryption_info = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_encryption_info(&mut self) -> &mut EncryptionInfo {
if self.encryption_info.is_none() {
self.encryption_info.set_default();
}
self.encryption_info.as_mut().unwrap()
}
pub fn take_encryption_info(&mut self) -> EncryptionInfo {
self.encryption_info.take().unwrap_or_else(|| EncryptionInfo::new())
}
}
impl ::protobuf::Message for Backup {
fn is_initialized(&self) -> bool {
for v in &self.expire_time {
if !v.is_initialized() {
return false;
}
};
for v in &self.start_time {
if !v.is_initialized() {
return false;
}
};
for v in &self.end_time {
if !v.is_initialized() {
return false;
}
};
for v in &self.encryption_info {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.name)?;
},
2 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.source_table)?;
},
10 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.source_backup)?;
},
3 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.expire_time)?;
},
4 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.start_time)?;
},
5 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.end_time)?;
},
6 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_int64()?;
self.size_bytes = tmp;
},
7 => {
::protobuf::rt::read_proto3_enum_with_unknown_fields_into(wire_type, is, &mut self.state, 7, &mut self.unknown_fields)?
},
9 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.encryption_info)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if !self.name.is_empty() {
my_size += ::protobuf::rt::string_size(1, &self.name);
}
if !self.source_table.is_empty() {
my_size += ::protobuf::rt::string_size(2, &self.source_table);
}
if !self.source_backup.is_empty() {
my_size += ::protobuf::rt::string_size(10, &self.source_backup);
}
if let Some(ref v) = self.expire_time.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if let Some(ref v) = self.start_time.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if let Some(ref v) = self.end_time.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if self.size_bytes != 0 {
my_size += ::protobuf::rt::value_size(6, self.size_bytes, ::protobuf::wire_format::WireTypeVarint);
}
if self.state != Backup_State::STATE_UNSPECIFIED {
my_size += ::protobuf::rt::enum_size(7, self.state);
}
if let Some(ref v) = self.encryption_info.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if !self.name.is_empty() {
os.write_string(1, &self.name)?;
}
if !self.source_table.is_empty() {
os.write_string(2, &self.source_table)?;
}
if !self.source_backup.is_empty() {
os.write_string(10, &self.source_backup)?;
}
if let Some(ref v) = self.expire_time.as_ref() {
os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if let Some(ref v) = self.start_time.as_ref() {
os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if let Some(ref v) = self.end_time.as_ref() {
os.write_tag(5, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if self.size_bytes != 0 {
os.write_int64(6, self.size_bytes)?;
}
if self.state != Backup_State::STATE_UNSPECIFIED {
os.write_enum(7, ::protobuf::ProtobufEnum::value(&self.state))?;
}
if let Some(ref v) = self.encryption_info.as_ref() {
os.write_tag(9, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Backup {
Backup::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"name",
|m: &Backup| { &m.name },
|m: &mut Backup| { &mut m.name },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"source_table",
|m: &Backup| { &m.source_table },
|m: &mut Backup| { &mut m.source_table },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"source_backup",
|m: &Backup| { &m.source_backup },
|m: &mut Backup| { &mut m.source_backup },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
"expire_time",
|m: &Backup| { &m.expire_time },
|m: &mut Backup| { &mut m.expire_time },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
"start_time",
|m: &Backup| { &m.start_time },
|m: &mut Backup| { &mut m.start_time },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
"end_time",
|m: &Backup| { &m.end_time },
|m: &mut Backup| { &mut m.end_time },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeInt64>(
"size_bytes",
|m: &Backup| { &m.size_bytes },
|m: &mut Backup| { &mut m.size_bytes },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Backup_State>>(
"state",
|m: &Backup| { &m.state },
|m: &mut Backup| { &mut m.state },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<EncryptionInfo>>(
"encryption_info",
|m: &Backup| { &m.encryption_info },
|m: &mut Backup| { &mut m.encryption_info },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Backup>(
"Backup",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Backup {
static instance: ::protobuf::rt::LazyV2<Backup> = ::protobuf::rt::LazyV2::INIT;
instance.get(Backup::new)
}
}
impl ::protobuf::Clear for Backup {
fn clear(&mut self) {
self.name.clear();
self.source_table.clear();
self.source_backup.clear();
self.expire_time.clear();
self.start_time.clear();
self.end_time.clear();
self.size_bytes = 0;
self.state = Backup_State::STATE_UNSPECIFIED;
self.encryption_info.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Backup {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Backup {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum Backup_State {
STATE_UNSPECIFIED = 0,
CREATING = 1,
READY = 2,
}
impl ::protobuf::ProtobufEnum for Backup_State {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<Backup_State> {
match value {
0 => ::std::option::Option::Some(Backup_State::STATE_UNSPECIFIED),
1 => ::std::option::Option::Some(Backup_State::CREATING),
2 => ::std::option::Option::Some(Backup_State::READY),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [Backup_State] = &[
Backup_State::STATE_UNSPECIFIED,
Backup_State::CREATING,
Backup_State::READY,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<Backup_State>("Backup.State", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for Backup_State {
}
impl ::std::default::Default for Backup_State {
fn default() -> Self {
Backup_State::STATE_UNSPECIFIED
}
}
impl ::protobuf::reflect::ProtobufValue for Backup_State {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct BackupInfo {
pub backup: ::std::string::String,
pub start_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
pub end_time: ::protobuf::SingularPtrField<::protobuf::well_known_types::Timestamp>,
pub source_table: ::std::string::String,
pub source_backup: ::std::string::String,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a BackupInfo {
fn default() -> &'a BackupInfo {
<BackupInfo as ::protobuf::Message>::default_instance()
}
}
impl BackupInfo {
pub fn new() -> BackupInfo {
::std::default::Default::default()
}
pub fn get_backup(&self) -> &str {
&self.backup
}
pub fn clear_backup(&mut self) {
self.backup.clear();
}
pub fn set_backup(&mut self, v: ::std::string::String) {
self.backup = v;
}
pub fn mut_backup(&mut self) -> &mut ::std::string::String {
&mut self.backup
}
pub fn take_backup(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.backup, ::std::string::String::new())
}
pub fn get_start_time(&self) -> &::protobuf::well_known_types::Timestamp {
self.start_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
}
pub fn clear_start_time(&mut self) {
self.start_time.clear();
}
pub fn has_start_time(&self) -> bool {
self.start_time.is_some()
}
pub fn set_start_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
self.start_time = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_start_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
if self.start_time.is_none() {
self.start_time.set_default();
}
self.start_time.as_mut().unwrap()
}
pub fn take_start_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
self.start_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
}
pub fn get_end_time(&self) -> &::protobuf::well_known_types::Timestamp {
self.end_time.as_ref().unwrap_or_else(|| <::protobuf::well_known_types::Timestamp as ::protobuf::Message>::default_instance())
}
pub fn clear_end_time(&mut self) {
self.end_time.clear();
}
pub fn has_end_time(&self) -> bool {
self.end_time.is_some()
}
pub fn set_end_time(&mut self, v: ::protobuf::well_known_types::Timestamp) {
self.end_time = ::protobuf::SingularPtrField::some(v);
}
pub fn mut_end_time(&mut self) -> &mut ::protobuf::well_known_types::Timestamp {
if self.end_time.is_none() {
self.end_time.set_default();
}
self.end_time.as_mut().unwrap()
}
pub fn take_end_time(&mut self) -> ::protobuf::well_known_types::Timestamp {
self.end_time.take().unwrap_or_else(|| ::protobuf::well_known_types::Timestamp::new())
}
pub fn get_source_table(&self) -> &str {
&self.source_table
}
pub fn clear_source_table(&mut self) {
self.source_table.clear();
}
pub fn set_source_table(&mut self, v: ::std::string::String) {
self.source_table = v;
}
pub fn mut_source_table(&mut self) -> &mut ::std::string::String {
&mut self.source_table
}
pub fn take_source_table(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.source_table, ::std::string::String::new())
}
pub fn get_source_backup(&self) -> &str {
&self.source_backup
}
pub fn clear_source_backup(&mut self) {
self.source_backup.clear();
}
pub fn set_source_backup(&mut self, v: ::std::string::String) {
self.source_backup = v;
}
pub fn mut_source_backup(&mut self) -> &mut ::std::string::String {
&mut self.source_backup
}
pub fn take_source_backup(&mut self) -> ::std::string::String {
::std::mem::replace(&mut self.source_backup, ::std::string::String::new())
}
}
impl ::protobuf::Message for BackupInfo {
fn is_initialized(&self) -> bool {
for v in &self.start_time {
if !v.is_initialized() {
return false;
}
};
for v in &self.end_time {
if !v.is_initialized() {
return false;
}
};
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.backup)?;
},
2 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.start_time)?;
},
3 => {
::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.end_time)?;
},
4 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.source_table)?;
},
10 => {
::protobuf::rt::read_singular_proto3_string_into(wire_type, is, &mut self.source_backup)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if !self.backup.is_empty() {
my_size += ::protobuf::rt::string_size(1, &self.backup);
}
if let Some(ref v) = self.start_time.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if let Some(ref v) = self.end_time.as_ref() {
let len = v.compute_size();
my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len;
}
if !self.source_table.is_empty() {
my_size += ::protobuf::rt::string_size(4, &self.source_table);
}
if !self.source_backup.is_empty() {
my_size += ::protobuf::rt::string_size(10, &self.source_backup);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if !self.backup.is_empty() {
os.write_string(1, &self.backup)?;
}
if let Some(ref v) = self.start_time.as_ref() {
os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if let Some(ref v) = self.end_time.as_ref() {
os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?;
os.write_raw_varint32(v.get_cached_size())?;
v.write_to_with_cached_sizes(os)?;
}
if !self.source_table.is_empty() {
os.write_string(4, &self.source_table)?;
}
if !self.source_backup.is_empty() {
os.write_string(10, &self.source_backup)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> BackupInfo {
BackupInfo::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"backup",
|m: &BackupInfo| { &m.backup },
|m: &mut BackupInfo| { &mut m.backup },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
"start_time",
|m: &BackupInfo| { &m.start_time },
|m: &mut BackupInfo| { &mut m.start_time },
));
fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage<::protobuf::well_known_types::Timestamp>>(
"end_time",
|m: &BackupInfo| { &m.end_time },
|m: &mut BackupInfo| { &mut m.end_time },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"source_table",
|m: &BackupInfo| { &m.source_table },
|m: &mut BackupInfo| { &mut m.source_table },
));
fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"source_backup",
|m: &BackupInfo| { &m.source_backup },
|m: &mut BackupInfo| { &mut m.source_backup },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<BackupInfo>(
"BackupInfo",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static BackupInfo {
static instance: ::protobuf::rt::LazyV2<BackupInfo> = ::protobuf::rt::LazyV2::INIT;
instance.get(BackupInfo::new)
}
}
impl ::protobuf::Clear for BackupInfo {
fn clear(&mut self) {
self.backup.clear();
self.start_time.clear();
self.end_time.clear();
self.source_table.clear();
self.source_backup.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for BackupInfo {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for BackupInfo {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum RestoreSourceType {
RESTORE_SOURCE_TYPE_UNSPECIFIED = 0,
BACKUP = 1,
}
impl ::protobuf::ProtobufEnum for RestoreSourceType {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<RestoreSourceType> {
match value {
0 => ::std::option::Option::Some(RestoreSourceType::RESTORE_SOURCE_TYPE_UNSPECIFIED),
1 => ::std::option::Option::Some(RestoreSourceType::BACKUP),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [RestoreSourceType] = &[
RestoreSourceType::RESTORE_SOURCE_TYPE_UNSPECIFIED,
RestoreSourceType::BACKUP,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<RestoreSourceType>("RestoreSourceType", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for RestoreSourceType {
}
impl ::std::default::Default for RestoreSourceType {
fn default() -> Self {
RestoreSourceType::RESTORE_SOURCE_TYPE_UNSPECIFIED
}
}
impl ::protobuf::reflect::ProtobufValue for RestoreSourceType {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
static file_descriptor_proto_data: &'static [u8] = b"\
\n$google/bigtable/admin/v2/table.proto\x12\x18google.bigtable.admin.v2\
\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\
\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.\
proto\x1a\x17google/rpc/status.proto\"\xb3\x01\n\x0bRestoreInfo\x12L\n\
\x0bsource_type\x18\x01\x20\x01(\x0e2+.google.bigtable.admin.v2.RestoreS\
ourceTypeR\nsourceType\x12G\n\x0bbackup_info\x18\x02\x20\x01(\x0b2$.goog\
le.bigtable.admin.v2.BackupInfoH\0R\nbackupInfoB\r\n\x0bsource_info\"Z\n\
\x12ChangeStreamConfig\x12D\n\x10retention_period\x18\x01\x20\x01(\x0b2\
\x19.google.protobuf.DurationR\x0fretentionPeriod\"\xfb\n\n\x05Table\x12\
\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12^\n\x0ecluster_states\x18\
\x02\x20\x03(\x0b22.google.bigtable.admin.v2.Table.ClusterStatesEntryR\r\
clusterStatesB\x03\xe0A\x03\x12\\\n\x0fcolumn_families\x18\x03\x20\x03(\
\x0b23.google.bigtable.admin.v2.Table.ColumnFamiliesEntryR\x0ecolumnFami\
lies\x12[\n\x0bgranularity\x18\x04\x20\x01(\x0e24.google.bigtable.admin.\
v2.Table.TimestampGranularityR\x0bgranularityB\x03\xe0A\x05\x12M\n\x0cre\
store_info\x18\x06\x20\x01(\x0b2%.google.bigtable.admin.v2.RestoreInfoR\
\x0brestoreInfoB\x03\xe0A\x03\x12^\n\x14change_stream_config\x18\x08\x20\
\x01(\x0b2,.google.bigtable.admin.v2.ChangeStreamConfigR\x12changeStream\
Config\x12/\n\x13deletion_protection\x18\t\x20\x01(\x08R\x12deletionProt\
ection\x1a\xe8\x02\n\x0cClusterState\x12o\n\x11replication_state\x18\x01\
\x20\x01(\x0e2=.google.bigtable.admin.v2.Table.ClusterState.ReplicationS\
tateR\x10replicationStateB\x03\xe0A\x03\x12V\n\x0fencryption_info\x18\
\x02\x20\x03(\x0b2(.google.bigtable.admin.v2.EncryptionInfoR\x0eencrypti\
onInfoB\x03\xe0A\x03\"\x8e\x01\n\x10ReplicationState\x12\x13\n\x0fSTATE_\
NOT_KNOWN\x10\0\x12\x10\n\x0cINITIALIZING\x10\x01\x12\x17\n\x13PLANNED_M\
AINTENANCE\x10\x02\x12\x19\n\x15UNPLANNED_MAINTENANCE\x10\x03\x12\t\n\
\x05READY\x10\x04\x12\x14\n\x10READY_OPTIMIZING\x10\x05\x1an\n\x12Cluste\
rStatesEntry\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03key\x12B\n\x05value\
\x18\x02\x20\x01(\x0b2,.google.bigtable.admin.v2.Table.ClusterStateR\x05\
value:\x028\x01\x1ai\n\x13ColumnFamiliesEntry\x12\x10\n\x03key\x18\x01\
\x20\x01(\tR\x03key\x12<\n\x05value\x18\x02\x20\x01(\x0b2&.google.bigtab\
le.admin.v2.ColumnFamilyR\x05value:\x028\x01\"I\n\x14TimestampGranularit\
y\x12%\n!TIMESTAMP_GRANULARITY_UNSPECIFIED\x10\0\x12\n\n\x06MILLIS\x10\
\x01\"q\n\x04View\x12\x14\n\x10VIEW_UNSPECIFIED\x10\0\x12\r\n\tNAME_ONLY\
\x10\x01\x12\x0f\n\x0bSCHEMA_VIEW\x10\x02\x12\x14\n\x10REPLICATION_VIEW\
\x10\x03\x12\x13\n\x0fENCRYPTION_VIEW\x10\x05\x12\x08\n\x04FULL\x10\x04:\
_\xeaA\\\n\"bigtableadmin.googleapis.com/Table\x126projects/{project}/in\
stances/{instance}/tables/{table}\"I\n\x0cColumnFamily\x129\n\x07gc_rule\
\x18\x01\x20\x01(\x0b2\x20.google.bigtable.admin.v2.GcRuleR\x06gcRule\"\
\x90\x03\n\x06GcRule\x12*\n\x10max_num_versions\x18\x01\x20\x01(\x05H\0R\
\x0emaxNumVersions\x124\n\x07max_age\x18\x02\x20\x01(\x0b2\x19.google.pr\
otobuf.DurationH\0R\x06maxAge\x12S\n\x0cintersection\x18\x03\x20\x01(\
\x0b2-.google.bigtable.admin.v2.GcRule.IntersectionH\0R\x0cintersection\
\x12>\n\x05union\x18\x04\x20\x01(\x0b2&.google.bigtable.admin.v2.GcRule.\
UnionH\0R\x05union\x1aF\n\x0cIntersection\x126\n\x05rules\x18\x01\x20\
\x03(\x0b2\x20.google.bigtable.admin.v2.GcRuleR\x05rules\x1a?\n\x05Union\
\x126\n\x05rules\x18\x01\x20\x03(\x0b2\x20.google.bigtable.admin.v2.GcRu\
leR\x05rulesB\x06\n\x04rule\"\x8a\x03\n\x0eEncryptionInfo\x12e\n\x0fencr\
yption_type\x18\x03\x20\x01(\x0e27.google.bigtable.admin.v2.EncryptionIn\
fo.EncryptionTypeR\x0eencryptionTypeB\x03\xe0A\x03\x12D\n\x11encryption_\
status\x18\x04\x20\x01(\x0b2\x12.google.rpc.StatusR\x10encryptionStatusB\
\x03\xe0A\x03\x12X\n\x0fkms_key_version\x18\x02\x20\x01(\tR\rkmsKeyVersi\
onB0\xfaA*\n(cloudkms.googleapis.com/CryptoKeyVersion\xe0A\x03\"q\n\x0eE\
ncryptionType\x12\x1f\n\x1bENCRYPTION_TYPE_UNSPECIFIED\x10\0\x12\x1d\n\
\x19GOOGLE_DEFAULT_ENCRYPTION\x10\x01\x12\x1f\n\x1bCUSTOMER_MANAGED_ENCR\
YPTION\x10\x02\"\xae\x04\n\x08Snapshot\x12\x12\n\x04name\x18\x01\x20\x01\
(\tR\x04name\x12G\n\x0csource_table\x18\x02\x20\x01(\x0b2\x1f.google.big\
table.admin.v2.TableR\x0bsourceTableB\x03\xe0A\x03\x12+\n\x0fdata_size_b\
ytes\x18\x03\x20\x01(\x03R\rdataSizeBytesB\x03\xe0A\x03\x12@\n\x0bcreate\
_time\x18\x04\x20\x01(\x0b2\x1a.google.protobuf.TimestampR\ncreateTimeB\
\x03\xe0A\x03\x12;\n\x0bdelete_time\x18\x05\x20\x01(\x0b2\x1a.google.pro\
tobuf.TimestampR\ndeleteTime\x12C\n\x05state\x18\x06\x20\x01(\x0e2(.goog\
le.bigtable.admin.v2.Snapshot.StateR\x05stateB\x03\xe0A\x03\x12\x20\n\
\x0bdescription\x18\x07\x20\x01(\tR\x0bdescription\"5\n\x05State\x12\x13\
\n\x0fSTATE_NOT_KNOWN\x10\0\x12\t\n\x05READY\x10\x01\x12\x0c\n\x08CREATI\
NG\x10\x02:{\xeaAx\n%bigtableadmin.googleapis.com/Snapshot\x12Oprojects/\
{project}/instances/{instance}/clusters/{cluster}/snapshots/{snapshot}\"\
\x9e\x05\n\x06Backup\x12\x12\n\x04name\x18\x01\x20\x01(\tR\x04name\x12)\
\n\x0csource_table\x18\x02\x20\x01(\tR\x0bsourceTableB\x06\xe0A\x05\xe0A\
\x02\x12(\n\rsource_backup\x18\n\x20\x01(\tR\x0csourceBackupB\x03\xe0A\
\x03\x12@\n\x0bexpire_time\x18\x03\x20\x01(\x0b2\x1a.google.protobuf.Tim\
estampR\nexpireTimeB\x03\xe0A\x02\x12>\n\nstart_time\x18\x04\x20\x01(\
\x0b2\x1a.google.protobuf.TimestampR\tstartTimeB\x03\xe0A\x03\x12:\n\x08\
end_time\x18\x05\x20\x01(\x0b2\x1a.google.protobuf.TimestampR\x07endTime\
B\x03\xe0A\x03\x12\"\n\nsize_bytes\x18\x06\x20\x01(\x03R\tsizeBytesB\x03\
\xe0A\x03\x12A\n\x05state\x18\x07\x20\x01(\x0e2&.google.bigtable.admin.v\
2.Backup.StateR\x05stateB\x03\xe0A\x03\x12V\n\x0fencryption_info\x18\t\
\x20\x01(\x0b2(.google.bigtable.admin.v2.EncryptionInfoR\x0eencryptionIn\
foB\x03\xe0A\x03\"7\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\0\x12\
\x0c\n\x08CREATING\x10\x01\x12\t\n\x05READY\x10\x02:u\xeaAr\n#bigtablead\
min.googleapis.com/Backup\x12Kprojects/{project}/instances/{instance}/cl\
usters/{cluster}/backups/{backup}\"\xf7\x01\n\nBackupInfo\x12\x1b\n\x06b\
ackup\x18\x01\x20\x01(\tR\x06backupB\x03\xe0A\x03\x12>\n\nstart_time\x18\
\x02\x20\x01(\x0b2\x1a.google.protobuf.TimestampR\tstartTimeB\x03\xe0A\
\x03\x12:\n\x08end_time\x18\x03\x20\x01(\x0b2\x1a.google.protobuf.Timest\
ampR\x07endTimeB\x03\xe0A\x03\x12&\n\x0csource_table\x18\x04\x20\x01(\tR\
\x0bsourceTableB\x03\xe0A\x03\x12(\n\rsource_backup\x18\n\x20\x01(\tR\
\x0csourceBackupB\x03\xe0A\x03*D\n\x11RestoreSourceType\x12#\n\x1fRESTOR\
E_SOURCE_TYPE_UNSPECIFIED\x10\0\x12\n\n\x06BACKUP\x10\x01B\xfc\x02\n\x1c\
com.google.bigtable.admin.v2B\nTableProtoP\x01Z=google.golang.org/genpro\
to/googleapis/bigtable/admin/v2;admin\xaa\x02\x1eGoogle.Cloud.Bigtable.A\
dmin.V2\xca\x02\x1eGoogle\\Cloud\\Bigtable\\Admin\\V2\xea\x02\"Google::C\
loud::Bigtable::Admin::V2\xeaA\xa6\x01\n(cloudkms.googleapis.com/CryptoK\
eyVersion\x12zprojects/{project}/locations/{location}/keyRings/{key_ring\
}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}J\xa3\
\x85\x01\n\x07\x12\x05\x0e\0\xb9\x03\x01\n\xbc\x04\n\x01\x0c\x12\x03\x0e\
\0\x122\xb1\x04\x20Copyright\x202023\x20Google\x20LLC\n\n\x20Licensed\
\x20under\x20the\x20Apache\x20License,\x20Version\x202.0\x20(the\x20\"Li\
cense\");\n\x20you\x20may\x20not\x20use\x20this\x20file\x20except\x20in\
\x20compliance\x20with\x20the\x20License.\n\x20You\x20may\x20obtain\x20a\
\x20copy\x20of\x20the\x20License\x20at\n\n\x20\x20\x20\x20\x20http://www\
.apache.org/licenses/LICENSE-2.0\n\n\x20Unless\x20required\x20by\x20appl\
icable\x20law\x20or\x20agreed\x20to\x20in\x20writing,\x20software\n\x20d\
istributed\x20under\x20the\x20License\x20is\x20distributed\x20on\x20an\
\x20\"AS\x20IS\"\x20BASIS,\n\x20WITHOUT\x20WARRANTIES\x20OR\x20CONDITION\
S\x20OF\x20ANY\x20KIND,\x20either\x20express\x20or\x20implied.\n\x20See\
\x20the\x20License\x20for\x20the\x20specific\x20language\x20governing\
\x20permissions\x20and\n\x20limitations\x20under\x20the\x20License.\n\n\
\x08\n\x01\x02\x12\x03\x10\0!\n\t\n\x02\x03\0\x12\x03\x12\0)\n\t\n\x02\
\x03\x01\x12\x03\x13\0#\n\t\n\x02\x03\x02\x12\x03\x14\0(\n\t\n\x02\x03\
\x03\x12\x03\x15\0)\n\t\n\x02\x03\x04\x12\x03\x16\0!\n\x08\n\x01\x08\x12\
\x03\x18\0;\n\t\n\x02\x08%\x12\x03\x18\0;\n\x08\n\x01\x08\x12\x03\x19\0T\
\n\t\n\x02\x08\x0b\x12\x03\x19\0T\n\x08\n\x01\x08\x12\x03\x1a\0\"\n\t\n\
\x02\x08\n\x12\x03\x1a\0\"\n\x08\n\x01\x08\x12\x03\x1b\0+\n\t\n\x02\x08\
\x08\x12\x03\x1b\0+\n\x08\n\x01\x08\x12\x03\x1c\05\n\t\n\x02\x08\x01\x12\
\x03\x1c\05\n\x08\n\x01\x08\x12\x03\x1d\0<\n\t\n\x02\x08)\x12\x03\x1d\0<\
\n\x08\n\x01\x08\x12\x03\x1e\0;\n\t\n\x02\x08-\x12\x03\x1e\0;\n\t\n\x01\
\x08\x12\x04\x1f\0\"\x02\n\x0c\n\x04\x08\x9d\x08\0\x12\x04\x1f\0\"\x02\n\
0\n\x02\x04\0\x12\x04%\0/\x01\x1a$\x20Information\x20about\x20a\x20table\
\x20restore.\n\n\n\n\x03\x04\0\x01\x12\x03%\x08\x13\n.\n\x04\x04\0\x02\0\
\x12\x03'\x02$\x1a!\x20The\x20type\x20of\x20the\x20restore\x20source.\n\
\n\x0c\n\x05\x04\0\x02\0\x06\x12\x03'\x02\x13\n\x0c\n\x05\x04\0\x02\0\
\x01\x12\x03'\x14\x1f\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03'\"#\nG\n\x04\
\x04\0\x08\0\x12\x04*\x02.\x03\x1a9\x20Information\x20about\x20the\x20so\
urce\x20used\x20to\x20restore\x20the\x20table.\n\n\x0c\n\x05\x04\0\x08\0\
\x01\x12\x03*\x08\x13\ng\n\x04\x04\0\x02\x01\x12\x03-\x04\x1f\x1aZ\x20In\
formation\x20about\x20the\x20backup\x20used\x20to\x20restore\x20the\x20t\
able.\x20The\x20backup\n\x20may\x20no\x20longer\x20exist.\n\n\x0c\n\x05\
\x04\0\x02\x01\x06\x12\x03-\x04\x0e\n\x0c\n\x05\x04\0\x02\x01\x01\x12\
\x03-\x0f\x1a\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03-\x1d\x1e\n*\n\x02\
\x04\x01\x12\x042\09\x01\x1a\x1e\x20Change\x20stream\x20configuration.\n\
\n\n\n\x03\x04\x01\x01\x12\x032\x08\x1a\n\x9d\x02\n\x04\x04\x01\x02\0\
\x12\x038\x020\x1a\x8f\x02\x20How\x20long\x20the\x20change\x20stream\x20\
should\x20be\x20retained.\x20Change\x20stream\x20data\x20older\n\x20than\
\x20the\x20retention\x20period\x20will\x20not\x20be\x20returned\x20when\
\x20reading\x20the\x20change\n\x20stream\x20from\x20the\x20table.\n\x20V\
alues\x20must\x20be\x20at\x20least\x201\x20day\x20and\x20at\x20most\x207\
\x20days,\x20and\x20will\x20be\x20truncated\x20to\n\x20microsecond\x20gr\
anularity.\n\n\x0c\n\x05\x04\x01\x02\0\x06\x12\x038\x02\x1a\n\x0c\n\x05\
\x04\x01\x02\0\x01\x12\x038\x1b+\n\x0c\n\x05\x04\x01\x02\0\x03\x12\x038.\
/\n\x91\x01\n\x02\x04\x02\x12\x05=\0\xba\x01\x01\x1a\x83\x01\x20A\x20col\
lection\x20of\x20user\x20data\x20indexed\x20by\x20row,\x20column,\x20and\
\x20timestamp.\n\x20Each\x20table\x20is\x20served\x20using\x20the\x20res\
ources\x20of\x20its\x20parent\x20cluster.\n\n\n\n\x03\x04\x02\x01\x12\
\x03=\x08\r\n\x0b\n\x03\x04\x02\x07\x12\x04>\x02A\x04\n\r\n\x05\x04\x02\
\x07\x9d\x08\x12\x04>\x02A\x04\nD\n\x04\x04\x02\x03\0\x12\x04D\x02m\x03\
\x1a6\x20The\x20state\x20of\x20a\x20table's\x20data\x20in\x20a\x20partic\
ular\x20cluster.\n\n\x0c\n\x05\x04\x02\x03\0\x01\x12\x03D\n\x16\n+\n\x06\
\x04\x02\x03\0\x04\0\x12\x04F\x04`\x05\x1a\x1b\x20Table\x20replication\
\x20states.\n\n\x0e\n\x07\x04\x02\x03\0\x04\0\x01\x12\x03F\t\x19\nQ\n\
\x08\x04\x02\x03\0\x04\0\x02\0\x12\x03H\x06\x1a\x1a@\x20The\x20replicati\
on\x20state\x20of\x20the\x20table\x20is\x20unknown\x20in\x20this\x20clus\
ter.\n\n\x10\n\t\x04\x02\x03\0\x04\0\x02\0\x01\x12\x03H\x06\x15\n\x10\n\
\t\x04\x02\x03\0\x04\0\x02\0\x02\x12\x03H\x18\x19\n\xda\x01\n\x08\x04\
\x02\x03\0\x04\0\x02\x01\x12\x03M\x06\x17\x1a\xc8\x01\x20The\x20cluster\
\x20was\x20recently\x20created,\x20and\x20the\x20table\x20must\x20finish\
\x20copying\n\x20over\x20pre-existing\x20data\x20from\x20other\x20cluste\
rs\x20before\x20it\x20can\x20begin\n\x20receiving\x20live\x20replication\
\x20updates\x20and\x20serving\x20Data\x20API\x20requests.\n\n\x10\n\t\
\x04\x02\x03\0\x04\0\x02\x01\x01\x12\x03M\x06\x12\n\x10\n\t\x04\x02\x03\
\0\x04\0\x02\x01\x02\x12\x03M\x15\x16\n\x85\x01\n\x08\x04\x02\x03\0\x04\
\0\x02\x02\x12\x03Q\x06\x1e\x1at\x20The\x20table\x20is\x20temporarily\
\x20unable\x20to\x20serve\x20Data\x20API\x20requests\x20from\x20this\n\
\x20cluster\x20due\x20to\x20planned\x20internal\x20maintenance.\n\n\x10\
\n\t\x04\x02\x03\0\x04\0\x02\x02\x01\x12\x03Q\x06\x19\n\x10\n\t\x04\x02\
\x03\0\x04\0\x02\x02\x02\x12\x03Q\x1c\x1d\n\x8b\x01\n\x08\x04\x02\x03\0\
\x04\0\x02\x03\x12\x03U\x06\x20\x1az\x20The\x20table\x20is\x20temporaril\
y\x20unable\x20to\x20serve\x20Data\x20API\x20requests\x20from\x20this\n\
\x20cluster\x20due\x20to\x20unplanned\x20or\x20emergency\x20maintenance.\
\n\n\x10\n\t\x04\x02\x03\0\x04\0\x02\x03\x01\x12\x03U\x06\x1b\n\x10\n\t\
\x04\x02\x03\0\x04\0\x02\x03\x02\x12\x03U\x1e\x1f\n\xba\x01\n\x08\x04\
\x02\x03\0\x04\0\x02\x04\x12\x03Z\x06\x10\x1a\xa8\x01\x20The\x20table\
\x20can\x20serve\x20Data\x20API\x20requests\x20from\x20this\x20cluster.\
\x20Depending\x20on\n\x20replication\x20delay,\x20reads\x20may\x20not\
\x20immediately\x20reflect\x20the\x20state\x20of\x20the\n\x20table\x20in\
\x20other\x20clusters.\n\n\x10\n\t\x04\x02\x03\0\x04\0\x02\x04\x01\x12\
\x03Z\x06\x0b\n\x10\n\t\x04\x02\x03\0\x04\0\x02\x04\x02\x12\x03Z\x0e\x0f\
\n\xc8\x01\n\x08\x04\x02\x03\0\x04\0\x02\x05\x12\x03_\x06\x1b\x1a\xb6\
\x01\x20The\x20table\x20is\x20fully\x20created\x20and\x20ready\x20for\
\x20use\x20after\x20a\x20restore,\x20and\x20is\n\x20being\x20optimized\
\x20for\x20performance.\x20When\x20optimizations\x20are\x20complete,\x20\
the\n\x20table\x20will\x20transition\x20to\x20`READY`\x20state.\n\n\x10\
\n\t\x04\x02\x03\0\x04\0\x02\x05\x01\x12\x03_\x06\x16\n\x10\n\t\x04\x02\
\x03\0\x04\0\x02\x05\x02\x12\x03_\x19\x1a\nV\n\x06\x04\x02\x03\0\x02\0\
\x12\x04c\x04d4\x1aF\x20Output\x20only.\x20The\x20state\x20of\x20replica\
tion\x20for\x20the\x20table\x20in\x20this\x20cluster.\n\n\x0e\n\x07\x04\
\x02\x03\0\x02\0\x06\x12\x03c\x04\x14\n\x0e\n\x07\x04\x02\x03\0\x02\0\
\x01\x12\x03c\x15&\n\x0e\n\x07\x04\x02\x03\0\x02\0\x03\x12\x03c)*\n\x0e\
\n\x07\x04\x02\x03\0\x02\0\x08\x12\x03d\x083\n\x11\n\n\x04\x02\x03\0\x02\
\0\x08\x9c\x08\0\x12\x03d\t2\n\xda\x02\n\x06\x04\x02\x03\0\x02\x01\x12\
\x04k\x04l4\x1a\xc9\x02\x20Output\x20only.\x20The\x20encryption\x20infor\
mation\x20for\x20the\x20table\x20in\x20this\x20cluster.\n\x20If\x20the\
\x20encryption\x20key\x20protecting\x20this\x20resource\x20is\x20custome\
r\x20managed,\x20then\n\x20its\x20version\x20can\x20be\x20rotated\x20in\
\x20Cloud\x20Key\x20Management\x20Service\x20(Cloud\x20KMS).\n\x20The\
\x20primary\x20version\x20of\x20the\x20key\x20and\x20its\x20status\x20wi\
ll\x20be\x20reflected\x20here\x20when\n\x20changes\x20propagate\x20from\
\x20Cloud\x20KMS.\n\n\x0e\n\x07\x04\x02\x03\0\x02\x01\x04\x12\x03k\x04\
\x0c\n\x0e\n\x07\x04\x02\x03\0\x02\x01\x06\x12\x03k\r\x1b\n\x0e\n\x07\
\x04\x02\x03\0\x02\x01\x01\x12\x03k\x1c+\n\x0e\n\x07\x04\x02\x03\0\x02\
\x01\x03\x12\x03k./\n\x0e\n\x07\x04\x02\x03\0\x02\x01\x08\x12\x03l\x083\
\n\x11\n\n\x04\x02\x03\0\x02\x01\x08\x9c\x08\0\x12\x03l\t2\nk\n\x04\x04\
\x02\x04\0\x12\x04q\x02x\x03\x1a]\x20Possible\x20timestamp\x20granularit\
ies\x20to\x20use\x20when\x20keeping\x20multiple\x20versions\n\x20of\x20d\
ata\x20in\x20a\x20table.\n\n\x0c\n\x05\x04\x02\x04\0\x01\x12\x03q\x07\
\x1b\n\x8c\x01\n\x06\x04\x02\x04\0\x02\0\x12\x03t\x04*\x1a}\x20The\x20us\
er\x20did\x20not\x20specify\x20a\x20granularity.\x20Should\x20not\x20be\
\x20returned.\n\x20When\x20specified\x20during\x20table\x20creation,\x20\
MILLIS\x20will\x20be\x20used.\n\n\x0e\n\x07\x04\x02\x04\0\x02\0\x01\x12\
\x03t\x04%\n\x0e\n\x07\x04\x02\x04\0\x02\0\x02\x12\x03t()\nH\n\x06\x04\
\x02\x04\0\x02\x01\x12\x03w\x04\x0f\x1a9\x20The\x20table\x20keeps\x20dat\
a\x20versioned\x20at\x20a\x20granularity\x20of\x201ms.\n\n\x0e\n\x07\x04\
\x02\x04\0\x02\x01\x01\x12\x03w\x04\n\n\x0e\n\x07\x04\x02\x04\0\x02\x01\
\x02\x12\x03w\r\x0e\n6\n\x04\x04\x02\x04\x01\x12\x05{\x02\x8e\x01\x03\
\x1a'\x20Defines\x20a\x20view\x20over\x20a\x20table's\x20fields.\n\n\x0c\
\n\x05\x04\x02\x04\x01\x01\x12\x03{\x07\x0b\nT\n\x06\x04\x02\x04\x01\x02\
\0\x12\x03}\x04\x19\x1aE\x20Uses\x20the\x20default\x20view\x20for\x20eac\
h\x20method\x20as\x20documented\x20in\x20its\x20request.\n\n\x0e\n\x07\
\x04\x02\x04\x01\x02\0\x01\x12\x03}\x04\x14\n\x0e\n\x07\x04\x02\x04\x01\
\x02\0\x02\x12\x03}\x17\x18\n(\n\x06\x04\x02\x04\x01\x02\x01\x12\x04\x80\
\x01\x04\x12\x1a\x18\x20Only\x20populates\x20`name`.\n\n\x0f\n\x07\x04\
\x02\x04\x01\x02\x01\x01\x12\x04\x80\x01\x04\r\n\x0f\n\x07\x04\x02\x04\
\x01\x02\x01\x02\x12\x04\x80\x01\x10\x11\nQ\n\x06\x04\x02\x04\x01\x02\
\x02\x12\x04\x83\x01\x04\x14\x1aA\x20Only\x20populates\x20`name`\x20and\
\x20fields\x20related\x20to\x20the\x20table's\x20schema.\n\n\x0f\n\x07\
\x04\x02\x04\x01\x02\x02\x01\x12\x04\x83\x01\x04\x0f\n\x0f\n\x07\x04\x02\
\x04\x01\x02\x02\x02\x12\x04\x83\x01\x12\x13\n]\n\x06\x04\x02\x04\x01\
\x02\x03\x12\x04\x87\x01\x04\x19\x1aM\x20Only\x20populates\x20`name`\x20\
and\x20fields\x20related\x20to\x20the\x20table's\x20replication\n\x20sta\
te.\n\n\x0f\n\x07\x04\x02\x04\x01\x02\x03\x01\x12\x04\x87\x01\x04\x14\n\
\x0f\n\x07\x04\x02\x04\x01\x02\x03\x02\x12\x04\x87\x01\x17\x18\n[\n\x06\
\x04\x02\x04\x01\x02\x04\x12\x04\x8a\x01\x04\x18\x1aK\x20Only\x20populat\
es\x20`name`\x20and\x20fields\x20related\x20to\x20the\x20table's\x20encr\
yption\x20state.\n\n\x0f\n\x07\x04\x02\x04\x01\x02\x04\x01\x12\x04\x8a\
\x01\x04\x13\n\x0f\n\x07\x04\x02\x04\x01\x02\x04\x02\x12\x04\x8a\x01\x16\
\x17\n'\n\x06\x04\x02\x04\x01\x02\x05\x12\x04\x8d\x01\x04\r\x1a\x17\x20P\
opulates\x20all\x20fields.\n\n\x0f\n\x07\x04\x02\x04\x01\x02\x05\x01\x12\
\x04\x8d\x01\x04\x08\n\x0f\n\x07\x04\x02\x04\x01\x02\x05\x02\x12\x04\x8d\
\x01\x0b\x0c\n\xd3\x01\n\x04\x04\x02\x02\0\x12\x04\x93\x01\x02\x12\x1a\
\xc4\x01\x20The\x20unique\x20name\x20of\x20the\x20table.\x20Values\x20ar\
e\x20of\x20the\x20form\n\x20`projects/{project}/instances/{instance}/tab\
les/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`.\n\x20Views:\x20`NAME_ONLY`,\x20`SCHEMA\
_VIEW`,\x20`REPLICATION_VIEW`,\x20`FULL`\n\n\r\n\x05\x04\x02\x02\0\x05\
\x12\x04\x93\x01\x02\x08\n\r\n\x05\x04\x02\x02\0\x01\x12\x04\x93\x01\t\r\
\n\r\n\x05\x04\x02\x02\0\x03\x12\x04\x93\x01\x10\x11\n\xda\x02\n\x04\x04\
\x02\x02\x01\x12\x06\x9a\x01\x02\x9b\x012\x1a\xc9\x02\x20Output\x20only.\
\x20Map\x20from\x20cluster\x20ID\x20to\x20per-cluster\x20table\x20state.\
\n\x20If\x20it\x20could\x20not\x20be\x20determined\x20whether\x20or\x20n\
ot\x20the\x20table\x20has\x20data\x20in\x20a\n\x20particular\x20cluster\
\x20(for\x20example,\x20if\x20its\x20zone\x20is\x20unavailable),\x20then\
\n\x20there\x20will\x20be\x20an\x20entry\x20for\x20the\x20cluster\x20wit\
h\x20UNKNOWN\x20`replication_status`.\n\x20Views:\x20`REPLICATION_VIEW`,\
\x20`ENCRYPTION_VIEW`,\x20`FULL`\n\n\r\n\x05\x04\x02\x02\x01\x06\x12\x04\
\x9a\x01\x02\x1b\n\r\n\x05\x04\x02\x02\x01\x01\x12\x04\x9a\x01\x1c*\n\r\
\n\x05\x04\x02\x02\x01\x03\x12\x04\x9a\x01-.\n\r\n\x05\x04\x02\x02\x01\
\x08\x12\x04\x9b\x01\x061\n\x10\n\x08\x04\x02\x02\x01\x08\x9c\x08\0\x12\
\x04\x9b\x01\x070\n\x86\x01\n\x04\x04\x02\x02\x02\x12\x04\x9f\x01\x020\
\x1ax\x20The\x20column\x20families\x20configured\x20for\x20this\x20table\
,\x20mapped\x20by\x20column\x20family\x20ID.\n\x20Views:\x20`SCHEMA_VIEW\
`,\x20`STATS_VIEW`,\x20`FULL`\n\n\r\n\x05\x04\x02\x02\x02\x06\x12\x04\
\x9f\x01\x02\x1b\n\r\n\x05\x04\x02\x02\x02\x01\x12\x04\x9f\x01\x1c+\n\r\
\n\x05\x04\x02\x02\x02\x03\x12\x04\x9f\x01./\n\x8a\x02\n\x04\x04\x02\x02\
\x03\x12\x06\xa5\x01\x02\xa6\x010\x1a\xf9\x01\x20Immutable.\x20The\x20gr\
anularity\x20(i.e.\x20`MILLIS`)\x20at\x20which\x20timestamps\x20are\x20s\
tored\n\x20in\x20this\x20table.\x20Timestamps\x20not\x20matching\x20the\
\x20granularity\x20will\x20be\x20rejected.\x20If\n\x20unspecified\x20at\
\x20creation\x20time,\x20the\x20value\x20will\x20be\x20set\x20to\x20`MIL\
LIS`.\x20Views:\n\x20`SCHEMA_VIEW`,\x20`FULL`.\n\n\r\n\x05\x04\x02\x02\
\x03\x06\x12\x04\xa5\x01\x02\x16\n\r\n\x05\x04\x02\x02\x03\x01\x12\x04\
\xa5\x01\x17\"\n\r\n\x05\x04\x02\x02\x03\x03\x12\x04\xa5\x01%&\n\r\n\x05\
\x04\x02\x02\x03\x08\x12\x04\xa6\x01\x06/\n\x10\n\x08\x04\x02\x02\x03\
\x08\x9c\x08\0\x12\x04\xa6\x01\x07.\n\xa4\x01\n\x04\x04\x02\x02\x04\x12\
\x04\xaa\x01\x02K\x1a\x95\x01\x20Output\x20only.\x20If\x20this\x20table\
\x20was\x20restored\x20from\x20another\x20data\x20source\x20(e.g.\x20a\n\
\x20backup),\x20this\x20field\x20will\x20be\x20populated\x20with\x20info\
rmation\x20about\x20the\x20restore.\n\n\r\n\x05\x04\x02\x02\x04\x06\x12\
\x04\xaa\x01\x02\r\n\r\n\x05\x04\x02\x02\x04\x01\x12\x04\xaa\x01\x0e\x1a\
\n\r\n\x05\x04\x02\x02\x04\x03\x12\x04\xaa\x01\x1d\x1e\n\r\n\x05\x04\x02\
\x02\x04\x08\x12\x04\xaa\x01\x1fJ\n\x10\n\x08\x04\x02\x02\x04\x08\x9c\
\x08\0\x12\x04\xaa\x01\x20I\n\x98\x01\n\x04\x04\x02\x02\x05\x12\x04\xaf\
\x01\x02.\x1a\x89\x01\x20If\x20specified,\x20enable\x20the\x20change\x20\
stream\x20on\x20this\x20table.\n\x20Otherwise,\x20the\x20change\x20strea\
m\x20is\x20disabled\x20and\x20the\x20change\x20stream\x20is\x20not\n\x20\
retained.\n\n\r\n\x05\x04\x02\x02\x05\x06\x12\x04\xaf\x01\x02\x14\n\r\n\
\x05\x04\x02\x02\x05\x01\x12\x04\xaf\x01\x15)\n\r\n\x05\x04\x02\x02\x05\
\x03\x12\x04\xaf\x01,-\n\xbb\x02\n\x04\x04\x02\x02\x06\x12\x04\xb9\x01\
\x02\x1f\x1a\xac\x02\x20Set\x20to\x20true\x20to\x20make\x20the\x20table\
\x20protected\x20against\x20data\x20loss.\x20i.e.\x20deleting\n\x20the\
\x20following\x20resources\x20through\x20Admin\x20APIs\x20are\x20prohibi\
ted:\n\n\x20*\x20The\x20table.\n\x20*\x20The\x20column\x20families\x20in\
\x20the\x20table.\n\x20*\x20The\x20instance\x20containing\x20the\x20tabl\
e.\n\n\x20Note\x20one\x20can\x20still\x20delete\x20the\x20data\x20stored\
\x20in\x20the\x20table\x20through\x20Data\x20APIs.\n\n\r\n\x05\x04\x02\
\x02\x06\x05\x12\x04\xb9\x01\x02\x06\n\r\n\x05\x04\x02\x02\x06\x01\x12\
\x04\xb9\x01\x07\x1a\n\r\n\x05\x04\x02\x02\x06\x03\x12\x04\xb9\x01\x1d\
\x1e\nS\n\x02\x04\x03\x12\x06\xbd\x01\0\xc5\x01\x01\x1aE\x20A\x20set\x20\
of\x20columns\x20within\x20a\x20table\x20which\x20share\x20a\x20common\
\x20configuration.\n\n\x0b\n\x03\x04\x03\x01\x12\x04\xbd\x01\x08\x14\n\
\x9e\x02\n\x04\x04\x03\x02\0\x12\x04\xc4\x01\x02\x15\x1a\x8f\x02\x20Garb\
age\x20collection\x20rule\x20specified\x20as\x20a\x20protobuf.\n\x20Must\
\x20serialize\x20to\x20at\x20most\x20500\x20bytes.\n\n\x20NOTE:\x20Garba\
ge\x20collection\x20executes\x20opportunistically\x20in\x20the\x20backgr\
ound,\x20and\n\x20so\x20it's\x20possible\x20for\x20reads\x20to\x20return\
\x20a\x20cell\x20even\x20if\x20it\x20matches\x20the\x20active\n\x20GC\
\x20expression\x20for\x20its\x20family.\n\n\r\n\x05\x04\x03\x02\0\x06\
\x12\x04\xc4\x01\x02\x08\n\r\n\x05\x04\x03\x02\0\x01\x12\x04\xc4\x01\t\
\x10\n\r\n\x05\x04\x03\x02\0\x03\x12\x04\xc4\x01\x13\x14\nU\n\x02\x04\
\x04\x12\x06\xc8\x01\0\xe5\x01\x01\x1aG\x20Rule\x20for\x20determining\
\x20which\x20cells\x20to\x20delete\x20during\x20garbage\x20collection.\n\
\n\x0b\n\x03\x04\x04\x01\x12\x04\xc8\x01\x08\x0e\nO\n\x04\x04\x04\x03\0\
\x12\x06\xca\x01\x02\xcd\x01\x03\x1a?\x20A\x20GcRule\x20which\x20deletes\
\x20cells\x20matching\x20all\x20of\x20the\x20given\x20rules.\n\n\r\n\x05\
\x04\x04\x03\0\x01\x12\x04\xca\x01\n\x16\nW\n\x06\x04\x04\x03\0\x02\0\
\x12\x04\xcc\x01\x04\x1e\x1aG\x20Only\x20delete\x20cells\x20which\x20wou\
ld\x20be\x20deleted\x20by\x20every\x20element\x20of\x20`rules`.\n\n\x0f\
\n\x07\x04\x04\x03\0\x02\0\x04\x12\x04\xcc\x01\x04\x0c\n\x0f\n\x07\x04\
\x04\x03\0\x02\0\x06\x12\x04\xcc\x01\r\x13\n\x0f\n\x07\x04\x04\x03\0\x02\
\0\x01\x12\x04\xcc\x01\x14\x19\n\x0f\n\x07\x04\x04\x03\0\x02\0\x03\x12\
\x04\xcc\x01\x1c\x1d\nO\n\x04\x04\x04\x03\x01\x12\x06\xd0\x01\x02\xd3\
\x01\x03\x1a?\x20A\x20GcRule\x20which\x20deletes\x20cells\x20matching\
\x20any\x20of\x20the\x20given\x20rules.\n\n\r\n\x05\x04\x04\x03\x01\x01\
\x12\x04\xd0\x01\n\x0f\nP\n\x06\x04\x04\x03\x01\x02\0\x12\x04\xd2\x01\
\x04\x1e\x1a@\x20Delete\x20cells\x20which\x20would\x20be\x20deleted\x20b\
y\x20any\x20element\x20of\x20`rules`.\n\n\x0f\n\x07\x04\x04\x03\x01\x02\
\0\x04\x12\x04\xd2\x01\x04\x0c\n\x0f\n\x07\x04\x04\x03\x01\x02\0\x06\x12\
\x04\xd2\x01\r\x13\n\x0f\n\x07\x04\x04\x03\x01\x02\0\x01\x12\x04\xd2\x01\
\x14\x19\n\x0f\n\x07\x04\x04\x03\x01\x02\0\x03\x12\x04\xd2\x01\x1c\x1d\n\
+\n\x04\x04\x04\x08\0\x12\x06\xd6\x01\x02\xe4\x01\x03\x1a\x1b\x20Garbage\
\x20collection\x20rules.\n\n\r\n\x05\x04\x04\x08\0\x01\x12\x04\xd6\x01\
\x08\x0c\nF\n\x04\x04\x04\x02\0\x12\x04\xd8\x01\x04\x1f\x1a8\x20Delete\
\x20all\x20cells\x20in\x20a\x20column\x20except\x20the\x20most\x20recent\
\x20N.\n\n\r\n\x05\x04\x04\x02\0\x05\x12\x04\xd8\x01\x04\t\n\r\n\x05\x04\
\x04\x02\0\x01\x12\x04\xd8\x01\n\x1a\n\r\n\x05\x04\x04\x02\0\x03\x12\x04\
\xd8\x01\x1d\x1e\n\xa0\x01\n\x04\x04\x04\x02\x01\x12\x04\xdd\x01\x04)\
\x1a\x91\x01\x20Delete\x20cells\x20in\x20a\x20column\x20older\x20than\
\x20the\x20given\x20age.\n\x20Values\x20must\x20be\x20at\x20least\x20one\
\x20millisecond,\x20and\x20will\x20be\x20truncated\x20to\n\x20microsecon\
d\x20granularity.\n\n\r\n\x05\x04\x04\x02\x01\x06\x12\x04\xdd\x01\x04\
\x1c\n\r\n\x05\x04\x04\x02\x01\x01\x12\x04\xdd\x01\x1d$\n\r\n\x05\x04\
\x04\x02\x01\x03\x12\x04\xdd\x01'(\nH\n\x04\x04\x04\x02\x02\x12\x04\xe0\
\x01\x04\"\x1a:\x20Delete\x20cells\x20that\x20would\x20be\x20deleted\x20\
by\x20every\x20nested\x20rule.\n\n\r\n\x05\x04\x04\x02\x02\x06\x12\x04\
\xe0\x01\x04\x10\n\r\n\x05\x04\x04\x02\x02\x01\x12\x04\xe0\x01\x11\x1d\n\
\r\n\x05\x04\x04\x02\x02\x03\x12\x04\xe0\x01\x20!\nF\n\x04\x04\x04\x02\
\x03\x12\x04\xe3\x01\x04\x14\x1a8\x20Delete\x20cells\x20that\x20would\
\x20be\x20deleted\x20by\x20any\x20nested\x20rule.\n\n\r\n\x05\x04\x04\
\x02\x03\x06\x12\x04\xe3\x01\x04\t\n\r\n\x05\x04\x04\x02\x03\x01\x12\x04\
\xe3\x01\n\x0f\n\r\n\x05\x04\x04\x02\x03\x03\x12\x04\xe3\x01\x12\x13\n\
\xe4\x01\n\x02\x04\x05\x12\x06\xeb\x01\0\x92\x02\x01\x1a\xd5\x01\x20Encr\
yption\x20information\x20for\x20a\x20given\x20resource.\n\x20If\x20this\
\x20resource\x20is\x20protected\x20with\x20customer\x20managed\x20encryp\
tion,\x20the\x20in-use\n\x20Cloud\x20Key\x20Management\x20Service\x20(Cl\
oud\x20KMS)\x20key\x20version\x20is\x20specified\x20along\x20with\n\x20i\
ts\x20status.\n\n\x0b\n\x03\x04\x05\x01\x12\x04\xeb\x01\x08\x16\n;\n\x04\
\x04\x05\x04\0\x12\x06\xed\x01\x02\xfe\x01\x03\x1a+\x20Possible\x20encry\
ption\x20types\x20for\x20a\x20resource.\n\n\r\n\x05\x04\x05\x04\0\x01\
\x12\x04\xed\x01\x07\x15\n[\n\x06\x04\x05\x04\0\x02\0\x12\x04\xef\x01\
\x04$\x1aK\x20Encryption\x20type\x20was\x20not\x20specified,\x20though\
\x20data\x20at\x20rest\x20remains\x20encrypted.\n\n\x0f\n\x07\x04\x05\
\x04\0\x02\0\x01\x12\x04\xef\x01\x04\x1f\n\x0f\n\x07\x04\x05\x04\0\x02\0\
\x02\x12\x04\xef\x01\"#\n\xbb\x01\n\x06\x04\x05\x04\0\x02\x01\x12\x04\
\xf4\x01\x04\"\x1a\xaa\x01\x20The\x20data\x20backing\x20this\x20resource\
\x20is\x20encrypted\x20at\x20rest\x20with\x20a\x20key\x20that\x20is\n\
\x20fully\x20managed\x20by\x20Google.\x20No\x20key\x20version\x20or\x20s\
tatus\x20will\x20be\x20populated.\n\x20This\x20is\x20the\x20default\x20s\
tate.\n\n\x0f\n\x07\x04\x05\x04\0\x02\x01\x01\x12\x04\xf4\x01\x04\x1d\n\
\x0f\n\x07\x04\x05\x04\0\x02\x01\x02\x12\x04\xf4\x01\x20!\n\x8f\x03\n\
\x06\x04\x05\x04\0\x02\x02\x12\x04\xfd\x01\x04$\x1a\xfe\x02\x20The\x20da\
ta\x20backing\x20this\x20resource\x20is\x20encrypted\x20at\x20rest\x20wi\
th\x20a\x20key\x20that\x20is\n\x20managed\x20by\x20the\x20customer.\n\
\x20The\x20in-use\x20version\x20of\x20the\x20key\x20and\x20its\x20status\
\x20are\x20populated\x20for\n\x20CMEK-protected\x20tables.\n\x20CMEK-pro\
tected\x20backups\x20are\x20pinned\x20to\x20the\x20key\x20version\x20tha\
t\x20was\x20in\x20use\x20at\n\x20the\x20time\x20the\x20backup\x20was\x20\
taken.\x20This\x20key\x20version\x20is\x20populated\x20but\x20its\n\x20s\
tatus\x20is\x20not\x20tracked\x20and\x20is\x20reported\x20as\x20`UNKNOWN\
`.\n\n\x0f\n\x07\x04\x05\x04\0\x02\x02\x01\x12\x04\xfd\x01\x04\x1f\n\x0f\
\n\x07\x04\x05\x04\0\x02\x02\x02\x12\x04\xfd\x01\"#\nT\n\x04\x04\x05\x02\
\0\x12\x06\x81\x02\x02\x82\x022\x1aD\x20Output\x20only.\x20The\x20type\
\x20of\x20encryption\x20used\x20to\x20protect\x20this\x20resource.\n\n\r\
\n\x05\x04\x05\x02\0\x06\x12\x04\x81\x02\x02\x10\n\r\n\x05\x04\x05\x02\0\
\x01\x12\x04\x81\x02\x11\x20\n\r\n\x05\x04\x05\x02\0\x03\x12\x04\x81\x02\
#$\n\r\n\x05\x04\x05\x02\0\x08\x12\x04\x82\x02\x061\n\x10\n\x08\x04\x05\
\x02\0\x08\x9c\x08\0\x12\x04\x82\x02\x070\n\xb0\x01\n\x04\x04\x05\x02\
\x01\x12\x06\x87\x02\x02\x88\x022\x1a\x9f\x01\x20Output\x20only.\x20The\
\x20status\x20of\x20encrypt/decrypt\x20calls\x20on\x20underlying\x20data\
\x20for\n\x20this\x20resource.\x20Regardless\x20of\x20status,\x20the\x20\
existing\x20data\x20is\x20always\x20encrypted\n\x20at\x20rest.\n\n\r\n\
\x05\x04\x05\x02\x01\x06\x12\x04\x87\x02\x02\x13\n\r\n\x05\x04\x05\x02\
\x01\x01\x12\x04\x87\x02\x14%\n\r\n\x05\x04\x05\x02\x01\x03\x12\x04\x87\
\x02()\n\r\n\x05\x04\x05\x02\x01\x08\x12\x04\x88\x02\x061\n\x10\n\x08\
\x04\x05\x02\x01\x08\x9c\x08\0\x12\x04\x88\x02\x070\n\x94\x01\n\x04\x04\
\x05\x02\x02\x12\x06\x8c\x02\x02\x91\x02\x04\x1a\x83\x01\x20Output\x20on\
ly.\x20The\x20version\x20of\x20the\x20Cloud\x20KMS\x20key\x20specified\
\x20in\x20the\x20parent\n\x20cluster\x20that\x20is\x20in\x20use\x20for\
\x20the\x20data\x20underlying\x20this\x20table.\n\n\r\n\x05\x04\x05\x02\
\x02\x05\x12\x04\x8c\x02\x02\x08\n\r\n\x05\x04\x05\x02\x02\x01\x12\x04\
\x8c\x02\t\x18\n\r\n\x05\x04\x05\x02\x02\x03\x12\x04\x8c\x02\x1b\x1c\n\
\x0f\n\x05\x04\x05\x02\x02\x08\x12\x06\x8c\x02\x1d\x91\x02\x03\n\x10\n\
\x08\x04\x05\x02\x02\x08\x9c\x08\0\x12\x04\x8d\x02\x04-\n\x11\n\x07\x04\
\x05\x02\x02\x08\x9f\x08\x12\x06\x8e\x02\x04\x90\x02\x05\n\xc8\x03\n\x02\
\x04\x06\x12\x06\x9b\x02\0\xcb\x02\x01\x1a\xb9\x03\x20A\x20snapshot\x20o\
f\x20a\x20table\x20at\x20a\x20particular\x20time.\x20A\x20snapshot\x20ca\
n\x20be\x20used\x20as\x20a\n\x20checkpoint\x20for\x20data\x20restoration\
\x20or\x20a\x20data\x20source\x20for\x20a\x20new\x20table.\n\n\x20Note:\
\x20This\x20is\x20a\x20private\x20alpha\x20release\x20of\x20Cloud\x20Big\
table\x20snapshots.\x20This\n\x20feature\x20is\x20not\x20currently\x20av\
ailable\x20to\x20most\x20Cloud\x20Bigtable\x20customers.\x20This\n\x20fe\
ature\x20might\x20be\x20changed\x20in\x20backward-incompatible\x20ways\
\x20and\x20is\x20not\x20recommended\n\x20for\x20production\x20use.\x20It\
\x20is\x20not\x20subject\x20to\x20any\x20SLA\x20or\x20deprecation\x20pol\
icy.\n\n\x0b\n\x03\x04\x06\x01\x12\x04\x9b\x02\x08\x10\n\r\n\x03\x04\x06\
\x07\x12\x06\x9c\x02\x02\x9f\x02\x04\n\x0f\n\x05\x04\x06\x07\x9d\x08\x12\
\x06\x9c\x02\x02\x9f\x02\x04\n0\n\x04\x04\x06\x04\0\x12\x06\xa2\x02\x02\
\xad\x02\x03\x1a\x20\x20Possible\x20states\x20of\x20a\x20snapshot.\n\n\r\
\n\x05\x04\x06\x04\0\x01\x12\x04\xa2\x02\x07\x0c\nD\n\x06\x04\x06\x04\0\
\x02\0\x12\x04\xa4\x02\x04\x18\x1a4\x20The\x20state\x20of\x20the\x20snap\
shot\x20could\x20not\x20be\x20determined.\n\n\x0f\n\x07\x04\x06\x04\0\
\x02\0\x01\x12\x04\xa4\x02\x04\x13\n\x0f\n\x07\x04\x06\x04\0\x02\0\x02\
\x12\x04\xa4\x02\x16\x17\nX\n\x06\x04\x06\x04\0\x02\x01\x12\x04\xa7\x02\
\x04\x0e\x1aH\x20The\x20snapshot\x20has\x20been\x20successfully\x20creat\
ed\x20and\x20can\x20serve\x20all\x20requests.\n\n\x0f\n\x07\x04\x06\x04\
\0\x02\x01\x01\x12\x04\xa7\x02\x04\t\n\x0f\n\x07\x04\x06\x04\0\x02\x01\
\x02\x12\x04\xa7\x02\x0c\r\n\xc4\x01\n\x06\x04\x06\x04\0\x02\x02\x12\x04\
\xac\x02\x04\x11\x1a\xb3\x01\x20The\x20snapshot\x20is\x20currently\x20be\
ing\x20created,\x20and\x20may\x20be\x20destroyed\x20if\x20the\n\x20creat\
ion\x20process\x20encounters\x20an\x20error.\x20A\x20snapshot\x20may\x20\
not\x20be\x20restored\x20to\x20a\n\x20table\x20while\x20it\x20is\x20bein\
g\x20created.\n\n\x0f\n\x07\x04\x06\x04\0\x02\x02\x01\x12\x04\xac\x02\
\x04\x0c\n\x0f\n\x07\x04\x06\x04\0\x02\x02\x02\x12\x04\xac\x02\x0f\x10\n\
\x9d\x01\n\x04\x04\x06\x02\0\x12\x04\xb2\x02\x02\x12\x1a\x8e\x01\x20The\
\x20unique\x20name\x20of\x20the\x20snapshot.\n\x20Values\x20are\x20of\
\x20the\x20form\n\x20`projects/{project}/instances/{instance}/clusters/{\
cluster}/snapshots/{snapshot}`.\n\n\r\n\x05\x04\x06\x02\0\x05\x12\x04\
\xb2\x02\x02\x08\n\r\n\x05\x04\x06\x02\0\x01\x12\x04\xb2\x02\t\r\n\r\n\
\x05\x04\x06\x02\0\x03\x12\x04\xb2\x02\x10\x11\nQ\n\x04\x04\x06\x02\x01\
\x12\x04\xb5\x02\x02E\x1aC\x20Output\x20only.\x20The\x20source\x20table\
\x20at\x20the\x20time\x20the\x20snapshot\x20was\x20taken.\n\n\r\n\x05\
\x04\x06\x02\x01\x06\x12\x04\xb5\x02\x02\x07\n\r\n\x05\x04\x06\x02\x01\
\x01\x12\x04\xb5\x02\x08\x14\n\r\n\x05\x04\x06\x02\x01\x03\x12\x04\xb5\
\x02\x17\x18\n\r\n\x05\x04\x06\x02\x01\x08\x12\x04\xb5\x02\x19D\n\x10\n\
\x08\x04\x06\x02\x01\x08\x9c\x08\0\x12\x04\xb5\x02\x1aC\n\xf4\x01\n\x04\
\x04\x06\x02\x02\x12\x04\xbb\x02\x02H\x1a\xe5\x01\x20Output\x20only.\x20\
The\x20size\x20of\x20the\x20data\x20in\x20the\x20source\x20table\x20at\
\x20the\x20time\x20the\n\x20snapshot\x20was\x20taken.\x20In\x20some\x20c\
ases,\x20this\x20value\x20may\x20be\x20computed\n\x20asynchronously\x20v\
ia\x20a\x20background\x20process\x20and\x20a\x20placeholder\x20of\x200\
\x20will\x20be\x20used\n\x20in\x20the\x20meantime.\n\n\r\n\x05\x04\x06\
\x02\x02\x05\x12\x04\xbb\x02\x02\x07\n\r\n\x05\x04\x06\x02\x02\x01\x12\
\x04\xbb\x02\x08\x17\n\r\n\x05\x04\x06\x02\x02\x03\x12\x04\xbb\x02\x1a\
\x1b\n\r\n\x05\x04\x06\x02\x02\x08\x12\x04\xbb\x02\x1cG\n\x10\n\x08\x04\
\x06\x02\x02\x08\x9c\x08\0\x12\x04\xbb\x02\x1dF\nE\n\x04\x04\x06\x02\x03\
\x12\x06\xbe\x02\x02\xbf\x022\x1a5\x20Output\x20only.\x20The\x20time\x20\
when\x20the\x20snapshot\x20is\x20created.\n\n\r\n\x05\x04\x06\x02\x03\
\x06\x12\x04\xbe\x02\x02\x1b\n\r\n\x05\x04\x06\x02\x03\x01\x12\x04\xbe\
\x02\x1c'\n\r\n\x05\x04\x06\x02\x03\x03\x12\x04\xbe\x02*+\n\r\n\x05\x04\
\x06\x02\x03\x08\x12\x04\xbf\x02\x061\n\x10\n\x08\x04\x06\x02\x03\x08\
\x9c\x08\0\x12\x04\xbf\x02\x070\n\xca\x01\n\x04\x04\x06\x02\x04\x12\x04\
\xc4\x02\x02,\x1a\xbb\x01\x20The\x20time\x20when\x20the\x20snapshot\x20w\
ill\x20be\x20deleted.\x20The\x20maximum\x20amount\x20of\x20time\x20a\n\
\x20snapshot\x20can\x20stay\x20active\x20is\x20365\x20days.\x20If\x20'tt\
l'\x20is\x20not\x20specified,\n\x20the\x20default\x20maximum\x20of\x2036\
5\x20days\x20will\x20be\x20used.\n\n\r\n\x05\x04\x06\x02\x04\x06\x12\x04\
\xc4\x02\x02\x1b\n\r\n\x05\x04\x06\x02\x04\x01\x12\x04\xc4\x02\x1c'\n\r\
\n\x05\x04\x06\x02\x04\x03\x12\x04\xc4\x02*+\n?\n\x04\x04\x06\x02\x05\
\x12\x04\xc7\x02\x02>\x1a1\x20Output\x20only.\x20The\x20current\x20state\
\x20of\x20the\x20snapshot.\n\n\r\n\x05\x04\x06\x02\x05\x06\x12\x04\xc7\
\x02\x02\x07\n\r\n\x05\x04\x06\x02\x05\x01\x12\x04\xc7\x02\x08\r\n\r\n\
\x05\x04\x06\x02\x05\x03\x12\x04\xc7\x02\x10\x11\n\r\n\x05\x04\x06\x02\
\x05\x08\x12\x04\xc7\x02\x12=\n\x10\n\x08\x04\x06\x02\x05\x08\x9c\x08\0\
\x12\x04\xc7\x02\x13<\n,\n\x04\x04\x06\x02\x06\x12\x04\xca\x02\x02\x19\
\x1a\x1e\x20Description\x20of\x20the\x20snapshot.\n\n\r\n\x05\x04\x06\
\x02\x06\x05\x12\x04\xca\x02\x02\x08\n\r\n\x05\x04\x06\x02\x06\x01\x12\
\x04\xca\x02\t\x14\n\r\n\x05\x04\x06\x02\x06\x03\x12\x04\xca\x02\x17\x18\
\n3\n\x02\x04\x07\x12\x06\xce\x02\0\x98\x03\x01\x1a%\x20A\x20backup\x20o\
f\x20a\x20Cloud\x20Bigtable\x20table.\n\n\x0b\n\x03\x04\x07\x01\x12\x04\
\xce\x02\x08\x0e\n\r\n\x03\x04\x07\x07\x12\x06\xcf\x02\x02\xd2\x02\x04\n\
\x0f\n\x05\x04\x07\x07\x9d\x08\x12\x06\xcf\x02\x02\xd2\x02\x04\n<\n\x04\
\x04\x07\x04\0\x12\x06\xd5\x02\x02\xdf\x02\x03\x1a,\x20Indicates\x20the\
\x20current\x20state\x20of\x20the\x20backup.\n\n\r\n\x05\x04\x07\x04\0\
\x01\x12\x04\xd5\x02\x07\x0c\n\x20\n\x06\x04\x07\x04\0\x02\0\x12\x04\xd7\
\x02\x04\x1a\x1a\x10\x20Not\x20specified.\n\n\x0f\n\x07\x04\x07\x04\0\
\x02\0\x01\x12\x04\xd7\x02\x04\x15\n\x0f\n\x07\x04\x07\x04\0\x02\0\x02\
\x12\x04\xd7\x02\x18\x19\n\x89\x01\n\x06\x04\x07\x04\0\x02\x01\x12\x04\
\xdb\x02\x04\x11\x1ay\x20The\x20pending\x20backup\x20is\x20still\x20bein\
g\x20created.\x20Operations\x20on\x20the\n\x20backup\x20may\x20fail\x20w\
ith\x20`FAILED_PRECONDITION`\x20in\x20this\x20state.\n\n\x0f\n\x07\x04\
\x07\x04\0\x02\x01\x01\x12\x04\xdb\x02\x04\x0c\n\x0f\n\x07\x04\x07\x04\0\
\x02\x01\x02\x12\x04\xdb\x02\x0f\x10\n;\n\x06\x04\x07\x04\0\x02\x02\x12\
\x04\xde\x02\x04\x0e\x1a+\x20The\x20backup\x20is\x20complete\x20and\x20r\
eady\x20for\x20use.\n\n\x0f\n\x07\x04\x07\x04\0\x02\x02\x01\x12\x04\xde\
\x02\x04\t\n\x0f\n\x07\x04\x07\x04\0\x02\x02\x02\x12\x04\xde\x02\x0c\r\n\
\xc1\x03\n\x04\x04\x07\x02\0\x12\x04\xeb\x02\x02\x12\x1a\xb2\x03\x20A\
\x20globally\x20unique\x20identifier\x20for\x20the\x20backup\x20which\
\x20cannot\x20be\n\x20changed.\x20Values\x20are\x20of\x20the\x20form\n\
\x20`projects/{project}/instances/{instance}/clusters/{cluster}/\n\x20\
\x20\x20\x20backups/[_a-zA-Z0-9][-_.a-zA-Z0-9]*`\n\x20The\x20final\x20se\
gment\x20of\x20the\x20name\x20must\x20be\x20between\x201\x20and\x2050\
\x20characters\n\x20in\x20length.\n\n\x20The\x20backup\x20is\x20stored\
\x20in\x20the\x20cluster\x20identified\x20by\x20the\x20prefix\x20of\x20t\
he\x20backup\n\x20name\x20of\x20the\x20form\n\x20`projects/{project}/ins\
tances/{instance}/clusters/{cluster}`.\n\n\r\n\x05\x04\x07\x02\0\x05\x12\
\x04\xeb\x02\x02\x08\n\r\n\x05\x04\x07\x02\0\x01\x12\x04\xeb\x02\t\r\n\r\
\n\x05\x04\x07\x02\0\x03\x12\x04\xeb\x02\x10\x11\n\xec\x01\n\x04\x04\x07\
\x02\x01\x12\x06\xf0\x02\x02\xf3\x02\x04\x1a\xdb\x01\x20Required.\x20Imm\
utable.\x20Name\x20of\x20the\x20table\x20from\x20which\x20this\x20backup\
\x20was\x20created.\n\x20This\x20needs\x20to\x20be\x20in\x20the\x20same\
\x20instance\x20as\x20the\x20backup.\x20Values\x20are\x20of\x20the\x20fo\
rm\n\x20`projects/{project}/instances/{instance}/tables/{source_table}`.\
\n\n\r\n\x05\x04\x07\x02\x01\x05\x12\x04\xf0\x02\x02\x08\n\r\n\x05\x04\
\x07\x02\x01\x01\x12\x04\xf0\x02\t\x15\n\r\n\x05\x04\x07\x02\x01\x03\x12\
\x04\xf0\x02\x18\x19\n\x0f\n\x05\x04\x07\x02\x01\x08\x12\x06\xf0\x02\x1a\
\xf3\x02\x03\n\x10\n\x08\x04\x07\x02\x01\x08\x9c\x08\0\x12\x04\xf1\x02\
\x04+\n\x10\n\x08\x04\x07\x02\x01\x08\x9c\x08\x01\x12\x04\xf2\x02\x04*\n\
\xf1\x01\n\x04\x04\x07\x02\x02\x12\x04\xf8\x02\x02H\x1a\xe2\x01\x20Outpu\
t\x20only.\x20Name\x20of\x20the\x20backup\x20from\x20which\x20this\x20ba\
ckup\x20was\x20copied.\x20If\x20a\n\x20backup\x20is\x20not\x20created\
\x20by\x20copying\x20a\x20backup,\x20this\x20field\x20will\x20be\x20empt\
y.\x20Values\n\x20are\x20of\x20the\x20form:\x20projects/<project>/instan\
ces/<instance>/backups/<backup>.\n\n\r\n\x05\x04\x07\x02\x02\x05\x12\x04\
\xf8\x02\x02\x08\n\r\n\x05\x04\x07\x02\x02\x01\x12\x04\xf8\x02\t\x16\n\r\
\n\x05\x04\x07\x02\x02\x03\x12\x04\xf8\x02\x19\x1b\n\r\n\x05\x04\x07\x02\
\x02\x08\x12\x04\xf8\x02\x1cG\n\x10\n\x08\x04\x07\x02\x02\x08\x9c\x08\0\
\x12\x04\xf8\x02\x1dF\n\xae\x02\n\x04\x04\x07\x02\x03\x12\x06\xff\x02\
\x02\x80\x03/\x1a\x9d\x02\x20Required.\x20The\x20expiration\x20time\x20o\
f\x20the\x20backup,\x20with\x20microseconds\n\x20granularity\x20that\x20\
must\x20be\x20at\x20least\x206\x20hours\x20and\x20at\x20most\x2090\x20da\
ys\n\x20from\x20the\x20time\x20the\x20request\x20is\x20received.\x20Once\
\x20the\x20`expire_time`\n\x20has\x20passed,\x20Cloud\x20Bigtable\x20wil\
l\x20delete\x20the\x20backup\x20and\x20free\x20the\n\x20resources\x20use\
d\x20by\x20the\x20backup.\n\n\r\n\x05\x04\x07\x02\x03\x06\x12\x04\xff\
\x02\x02\x1b\n\r\n\x05\x04\x07\x02\x03\x01\x12\x04\xff\x02\x1c'\n\r\n\
\x05\x04\x07\x02\x03\x03\x12\x04\xff\x02*+\n\r\n\x05\x04\x07\x02\x03\x08\
\x12\x04\x80\x03\x06.\n\x10\n\x08\x04\x07\x02\x03\x08\x9c\x08\0\x12\x04\
\x80\x03\x07-\n\x9b\x02\n\x04\x04\x07\x02\x04\x12\x06\x87\x03\x02\x88\
\x032\x1a\x8a\x02\x20Output\x20only.\x20`start_time`\x20is\x20the\x20tim\
e\x20that\x20the\x20backup\x20was\x20started\n\x20(i.e.\x20approximately\
\x20the\x20time\x20the\n\x20[CreateBackup][google.bigtable.admin.v2.Bigt\
ableTableAdmin.CreateBackup]\n\x20request\x20is\x20received).\x20\x20The\
\x20row\x20data\x20in\x20this\x20backup\x20will\x20be\x20no\x20older\x20\
than\n\x20this\x20timestamp.\n\n\r\n\x05\x04\x07\x02\x04\x06\x12\x04\x87\
\x03\x02\x1b\n\r\n\x05\x04\x07\x02\x04\x01\x12\x04\x87\x03\x1c&\n\r\n\
\x05\x04\x07\x02\x04\x03\x12\x04\x87\x03)*\n\r\n\x05\x04\x07\x02\x04\x08\
\x12\x04\x88\x03\x061\n\x10\n\x08\x04\x07\x02\x04\x08\x9c\x08\0\x12\x04\
\x88\x03\x070\n\x96\x01\n\x04\x04\x07\x02\x05\x12\x06\x8c\x03\x02\x8d\
\x032\x1a\x85\x01\x20Output\x20only.\x20`end_time`\x20is\x20the\x20time\
\x20that\x20the\x20backup\x20was\x20finished.\x20The\x20row\n\x20data\
\x20in\x20the\x20backup\x20will\x20be\x20no\x20newer\x20than\x20this\x20\
timestamp.\n\n\r\n\x05\x04\x07\x02\x05\x06\x12\x04\x8c\x03\x02\x1b\n\r\n\
\x05\x04\x07\x02\x05\x01\x12\x04\x8c\x03\x1c$\n\r\n\x05\x04\x07\x02\x05\
\x03\x12\x04\x8c\x03'(\n\r\n\x05\x04\x07\x02\x05\x08\x12\x04\x8d\x03\x06\
1\n\x10\n\x08\x04\x07\x02\x05\x08\x9c\x08\0\x12\x04\x8d\x03\x070\n9\n\
\x04\x04\x07\x02\x06\x12\x04\x90\x03\x02C\x1a+\x20Output\x20only.\x20Siz\
e\x20of\x20the\x20backup\x20in\x20bytes.\n\n\r\n\x05\x04\x07\x02\x06\x05\
\x12\x04\x90\x03\x02\x07\n\r\n\x05\x04\x07\x02\x06\x01\x12\x04\x90\x03\
\x08\x12\n\r\n\x05\x04\x07\x02\x06\x03\x12\x04\x90\x03\x15\x16\n\r\n\x05\
\x04\x07\x02\x06\x08\x12\x04\x90\x03\x17B\n\x10\n\x08\x04\x07\x02\x06\
\x08\x9c\x08\0\x12\x04\x90\x03\x18A\n=\n\x04\x04\x07\x02\x07\x12\x04\x93\
\x03\x02>\x1a/\x20Output\x20only.\x20The\x20current\x20state\x20of\x20th\
e\x20backup.\n\n\r\n\x05\x04\x07\x02\x07\x06\x12\x04\x93\x03\x02\x07\n\r\
\n\x05\x04\x07\x02\x07\x01\x12\x04\x93\x03\x08\r\n\r\n\x05\x04\x07\x02\
\x07\x03\x12\x04\x93\x03\x10\x11\n\r\n\x05\x04\x07\x02\x07\x08\x12\x04\
\x93\x03\x12=\n\x10\n\x08\x04\x07\x02\x07\x08\x9c\x08\0\x12\x04\x93\x03\
\x13<\nI\n\x04\x04\x07\x02\x08\x12\x06\x96\x03\x02\x97\x032\x1a9\x20Outp\
ut\x20only.\x20The\x20encryption\x20information\x20for\x20the\x20backup.\
\n\n\r\n\x05\x04\x07\x02\x08\x06\x12\x04\x96\x03\x02\x10\n\r\n\x05\x04\
\x07\x02\x08\x01\x12\x04\x96\x03\x11\x20\n\r\n\x05\x04\x07\x02\x08\x03\
\x12\x04\x96\x03#$\n\r\n\x05\x04\x07\x02\x08\x08\x12\x04\x97\x03\x061\n\
\x10\n\x08\x04\x07\x02\x08\x08\x9c\x08\0\x12\x04\x97\x03\x070\n+\n\x02\
\x04\x08\x12\x06\x9b\x03\0\xb0\x03\x01\x1a\x1d\x20Information\x20about\
\x20a\x20backup.\n\n\x0b\n\x03\x04\x08\x01\x12\x04\x9b\x03\x08\x12\n0\n\
\x04\x04\x08\x02\0\x12\x04\x9d\x03\x02@\x1a\"\x20Output\x20only.\x20Name\
\x20of\x20the\x20backup.\n\n\r\n\x05\x04\x08\x02\0\x05\x12\x04\x9d\x03\
\x02\x08\n\r\n\x05\x04\x08\x02\0\x01\x12\x04\x9d\x03\t\x0f\n\r\n\x05\x04\
\x08\x02\0\x03\x12\x04\x9d\x03\x12\x13\n\r\n\x05\x04\x08\x02\0\x08\x12\
\x04\x9d\x03\x14?\n\x10\n\x08\x04\x08\x02\0\x08\x9c\x08\0\x12\x04\x9d\
\x03\x15>\n\x82\x01\n\x04\x04\x08\x02\x01\x12\x06\xa1\x03\x02\xa2\x032\
\x1ar\x20Output\x20only.\x20The\x20time\x20that\x20the\x20backup\x20was\
\x20started.\x20Row\x20data\x20in\x20the\x20backup\n\x20will\x20be\x20no\
\x20older\x20than\x20this\x20timestamp.\n\n\r\n\x05\x04\x08\x02\x01\x06\
\x12\x04\xa1\x03\x02\x1b\n\r\n\x05\x04\x08\x02\x01\x01\x12\x04\xa1\x03\
\x1c&\n\r\n\x05\x04\x08\x02\x01\x03\x12\x04\xa1\x03)*\n\r\n\x05\x04\x08\
\x02\x01\x08\x12\x04\xa2\x03\x061\n\x10\n\x08\x04\x08\x02\x01\x08\x9c\
\x08\0\x12\x04\xa2\x03\x070\n\x84\x01\n\x04\x04\x08\x02\x02\x12\x06\xa6\
\x03\x02\xa7\x032\x1at\x20Output\x20only.\x20This\x20time\x20that\x20the\
\x20backup\x20was\x20finished.\x20Row\x20data\x20in\x20the\n\x20backup\
\x20will\x20be\x20no\x20newer\x20than\x20this\x20timestamp.\n\n\r\n\x05\
\x04\x08\x02\x02\x06\x12\x04\xa6\x03\x02\x1b\n\r\n\x05\x04\x08\x02\x02\
\x01\x12\x04\xa6\x03\x1c$\n\r\n\x05\x04\x08\x02\x02\x03\x12\x04\xa6\x03'\
(\n\r\n\x05\x04\x08\x02\x02\x08\x12\x04\xa7\x03\x061\n\x10\n\x08\x04\x08\
\x02\x02\x08\x9c\x08\0\x12\x04\xa7\x03\x070\nK\n\x04\x04\x08\x02\x03\x12\
\x04\xaa\x03\x02F\x1a=\x20Output\x20only.\x20Name\x20of\x20the\x20table\
\x20the\x20backup\x20was\x20created\x20from.\n\n\r\n\x05\x04\x08\x02\x03\
\x05\x12\x04\xaa\x03\x02\x08\n\r\n\x05\x04\x08\x02\x03\x01\x12\x04\xaa\
\x03\t\x15\n\r\n\x05\x04\x08\x02\x03\x03\x12\x04\xaa\x03\x18\x19\n\r\n\
\x05\x04\x08\x02\x03\x08\x12\x04\xaa\x03\x1aE\n\x10\n\x08\x04\x08\x02\
\x03\x08\x9c\x08\0\x12\x04\xaa\x03\x1bD\n\xf1\x01\n\x04\x04\x08\x02\x04\
\x12\x04\xaf\x03\x02H\x1a\xe2\x01\x20Output\x20only.\x20Name\x20of\x20th\
e\x20backup\x20from\x20which\x20this\x20backup\x20was\x20copied.\x20If\
\x20a\n\x20backup\x20is\x20not\x20created\x20by\x20copying\x20a\x20backu\
p,\x20this\x20field\x20will\x20be\x20empty.\x20Values\n\x20are\x20of\x20\
the\x20form:\x20projects/<project>/instances/<instance>/backups/<backup>\
.\n\n\r\n\x05\x04\x08\x02\x04\x05\x12\x04\xaf\x03\x02\x08\n\r\n\x05\x04\
\x08\x02\x04\x01\x12\x04\xaf\x03\t\x16\n\r\n\x05\x04\x08\x02\x04\x03\x12\
\x04\xaf\x03\x19\x1b\n\r\n\x05\x04\x08\x02\x04\x08\x12\x04\xaf\x03\x1cG\
\n\x10\n\x08\x04\x08\x02\x04\x08\x9c\x08\0\x12\x04\xaf\x03\x1dF\n9\n\x02\
\x05\0\x12\x06\xb3\x03\0\xb9\x03\x01\x1a+\x20Indicates\x20the\x20type\
\x20of\x20the\x20restore\x20source.\n\n\x0b\n\x03\x05\0\x01\x12\x04\xb3\
\x03\x05\x16\n&\n\x04\x05\0\x02\0\x12\x04\xb5\x03\x02&\x1a\x18\x20No\x20\
restore\x20associated.\n\n\r\n\x05\x05\0\x02\0\x01\x12\x04\xb5\x03\x02!\
\n\r\n\x05\x05\0\x02\0\x02\x12\x04\xb5\x03$%\n?\n\x04\x05\0\x02\x01\x12\
\x04\xb8\x03\x02\r\x1a1\x20A\x20backup\x20was\x20used\x20as\x20the\x20so\
urce\x20of\x20the\x20restore.\n\n\r\n\x05\x05\0\x02\x01\x01\x12\x04\xb8\
\x03\x02\x08\n\r\n\x05\x05\0\x02\x01\x02\x12\x04\xb8\x03\x0b\x0cb\x06pro\
to3\
";
static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
}
pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
file_descriptor_proto_lazy.get(|| {
parse_descriptor_proto()
})
}