diff --git a/genproto/googleapis/storage/v1/storage.pb.go b/genproto/googleapis/storage/v1/storage.pb.go deleted file mode 100644 index 12054fe126..0000000000 --- a/genproto/googleapis/storage/v1/storage.pb.go +++ /dev/null @@ -1,9385 +0,0 @@ -// Copyright 2022 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.26.0 -// protoc v3.6.1 -// source: google/storage/v1/storage.proto - -package storage - -import ( - context "context" - reflect "reflect" - sync "sync" - - v1 "cloud.google.com/go/iam/apiv1/iampb" - wrappers "github.com/golang/protobuf/ptypes/wrappers" - _ "google.golang.org/genproto/googleapis/api/annotations" - field_mask "google.golang.org/genproto/protobuf/field_mask" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -type Empty struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *Empty) Reset() { - *x = Empty{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Empty) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Empty) ProtoMessage() {} - -func (x *Empty) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Empty.ProtoReflect.Descriptor instead. -func (*Empty) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{0} -} - -type Objects struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Object []*Object `protobuf:"bytes,1,rep,name=object,proto3" json:"object,omitempty"` -} - -func (x *Objects) Reset() { - *x = Objects{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Objects) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Objects) ProtoMessage() {} - -func (x *Objects) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Objects.ProtoReflect.Descriptor instead. -func (*Objects) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{1} -} - -func (x *Objects) GetObject() []*Object { - if x != nil { - return x.Object - } - return nil -} - -type Buckets struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Bucket []*Bucket `protobuf:"bytes,1,rep,name=bucket,proto3" json:"bucket,omitempty"` -} - -func (x *Buckets) Reset() { - *x = Buckets{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Buckets) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Buckets) ProtoMessage() {} - -func (x *Buckets) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Buckets.ProtoReflect.Descriptor instead. -func (*Buckets) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{2} -} - -func (x *Buckets) GetBucket() []*Bucket { - if x != nil { - return x.Bucket - } - return nil -} - -// Request message for DeleteBucketAccessControl. -type DeleteBucketAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *DeleteBucketAccessControlRequest) Reset() { - *x = DeleteBucketAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteBucketAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteBucketAccessControlRequest) ProtoMessage() {} - -func (x *DeleteBucketAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteBucketAccessControlRequest.ProtoReflect.Descriptor instead. -func (*DeleteBucketAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{3} -} - -func (x *DeleteBucketAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *DeleteBucketAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *DeleteBucketAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetBucketAccessControl. -type GetBucketAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetBucketAccessControlRequest) Reset() { - *x = GetBucketAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetBucketAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetBucketAccessControlRequest) ProtoMessage() {} - -func (x *GetBucketAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetBucketAccessControlRequest.ProtoReflect.Descriptor instead. -func (*GetBucketAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{4} -} - -func (x *GetBucketAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *GetBucketAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *GetBucketAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for InsertBucketAccessControl. -type InsertBucketAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Properties of the new bucket access control being inserted. - BucketAccessControl *BucketAccessControl `protobuf:"bytes,3,opt,name=bucket_access_control,json=bucketAccessControl,proto3" json:"bucket_access_control,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *InsertBucketAccessControlRequest) Reset() { - *x = InsertBucketAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InsertBucketAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InsertBucketAccessControlRequest) ProtoMessage() {} - -func (x *InsertBucketAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use InsertBucketAccessControlRequest.ProtoReflect.Descriptor instead. -func (*InsertBucketAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{5} -} - -func (x *InsertBucketAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *InsertBucketAccessControlRequest) GetBucketAccessControl() *BucketAccessControl { - if x != nil { - return x.BucketAccessControl - } - return nil -} - -func (x *InsertBucketAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for ListBucketAccessControl. -type ListBucketAccessControlsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListBucketAccessControlsRequest) Reset() { - *x = ListBucketAccessControlsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListBucketAccessControlsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListBucketAccessControlsRequest) ProtoMessage() {} - -func (x *ListBucketAccessControlsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListBucketAccessControlsRequest.ProtoReflect.Descriptor instead. -func (*ListBucketAccessControlsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{6} -} - -func (x *ListBucketAccessControlsRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *ListBucketAccessControlsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request for PatchBucketAccessControl. -type PatchBucketAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // The BucketAccessControl for updating. - BucketAccessControl *BucketAccessControl `protobuf:"bytes,4,opt,name=bucket_access_control,json=bucketAccessControl,proto3" json:"bucket_access_control,omitempty"` - // List of fields to be updated. - // - // To specify ALL fields, equivalent to the JSON API's "update" function, - // specify a single field with the value `*`. - // - // Not specifying any fields is an error. - // Not specifying a field while setting that field to a non-default value is - // an error. - UpdateMask *field_mask.FieldMask `protobuf:"bytes,5,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *PatchBucketAccessControlRequest) Reset() { - *x = PatchBucketAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PatchBucketAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PatchBucketAccessControlRequest) ProtoMessage() {} - -func (x *PatchBucketAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PatchBucketAccessControlRequest.ProtoReflect.Descriptor instead. -func (*PatchBucketAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{7} -} - -func (x *PatchBucketAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *PatchBucketAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *PatchBucketAccessControlRequest) GetBucketAccessControl() *BucketAccessControl { - if x != nil { - return x.BucketAccessControl - } - return nil -} - -func (x *PatchBucketAccessControlRequest) GetUpdateMask() *field_mask.FieldMask { - if x != nil { - return x.UpdateMask - } - return nil -} - -func (x *PatchBucketAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request for UpdateBucketAccessControl. -type UpdateBucketAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // The BucketAccessControl for updating. - BucketAccessControl *BucketAccessControl `protobuf:"bytes,4,opt,name=bucket_access_control,json=bucketAccessControl,proto3" json:"bucket_access_control,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,5,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *UpdateBucketAccessControlRequest) Reset() { - *x = UpdateBucketAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateBucketAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateBucketAccessControlRequest) ProtoMessage() {} - -func (x *UpdateBucketAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateBucketAccessControlRequest.ProtoReflect.Descriptor instead. -func (*UpdateBucketAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{8} -} - -func (x *UpdateBucketAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *UpdateBucketAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *UpdateBucketAccessControlRequest) GetBucketAccessControl() *BucketAccessControl { - if x != nil { - return x.BucketAccessControl - } - return nil -} - -func (x *UpdateBucketAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for DeleteBucket. -type DeleteBucketRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // If set, only deletes the bucket if its metageneration matches this value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // If set, only deletes the bucket if its metageneration does not match this - // value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,5,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *DeleteBucketRequest) Reset() { - *x = DeleteBucketRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteBucketRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteBucketRequest) ProtoMessage() {} - -func (x *DeleteBucketRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteBucketRequest.ProtoReflect.Descriptor instead. -func (*DeleteBucketRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{9} -} - -func (x *DeleteBucketRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *DeleteBucketRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *DeleteBucketRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *DeleteBucketRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetBucket. -type GetBucketRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Makes the return of the bucket metadata conditional on whether the bucket's - // current metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the return of the bucket metadata conditional on whether the bucket's - // current metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`. - Projection CommonEnums_Projection `protobuf:"varint,4,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetBucketRequest) Reset() { - *x = GetBucketRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetBucketRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetBucketRequest) ProtoMessage() {} - -func (x *GetBucketRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetBucketRequest.ProtoReflect.Descriptor instead. -func (*GetBucketRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{10} -} - -func (x *GetBucketRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *GetBucketRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *GetBucketRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *GetBucketRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *GetBucketRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for InsertBucket. -type InsertBucketRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Apply a predefined set of access controls to this bucket. - PredefinedAcl CommonEnums_PredefinedBucketAcl `protobuf:"varint,1,opt,name=predefined_acl,json=predefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedBucketAcl" json:"predefined_acl,omitempty"` - // Apply a predefined set of default object access controls to this bucket. - PredefinedDefaultObjectAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,2,opt,name=predefined_default_object_acl,json=predefinedDefaultObjectAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"predefined_default_object_acl,omitempty"` - // Required. A valid API project identifier. - Project string `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`, unless the - // bucket resource specifies `acl` or `defaultObjectAcl` - // properties, when it defaults to `FULL`. - Projection CommonEnums_Projection `protobuf:"varint,4,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // Properties of the new bucket being inserted, including its name. - Bucket *Bucket `protobuf:"bytes,6,opt,name=bucket,proto3" json:"bucket,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,7,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *InsertBucketRequest) Reset() { - *x = InsertBucketRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InsertBucketRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InsertBucketRequest) ProtoMessage() {} - -func (x *InsertBucketRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use InsertBucketRequest.ProtoReflect.Descriptor instead. -func (*InsertBucketRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{11} -} - -func (x *InsertBucketRequest) GetPredefinedAcl() CommonEnums_PredefinedBucketAcl { - if x != nil { - return x.PredefinedAcl - } - return CommonEnums_PREDEFINED_BUCKET_ACL_UNSPECIFIED -} - -func (x *InsertBucketRequest) GetPredefinedDefaultObjectAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.PredefinedDefaultObjectAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *InsertBucketRequest) GetProject() string { - if x != nil { - return x.Project - } - return "" -} - -func (x *InsertBucketRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *InsertBucketRequest) GetBucket() *Bucket { - if x != nil { - return x.Bucket - } - return nil -} - -func (x *InsertBucketRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for ListChannels. -type ListChannelsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListChannelsRequest) Reset() { - *x = ListChannelsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListChannelsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListChannelsRequest) ProtoMessage() {} - -func (x *ListChannelsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListChannelsRequest.ProtoReflect.Descriptor instead. -func (*ListChannelsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{12} -} - -func (x *ListChannelsRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *ListChannelsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for ListBuckets. -type ListBucketsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Maximum number of buckets to return in a single response. The service will - // use this parameter or 1,000 items, whichever is smaller. - MaxResults int32 `protobuf:"varint,1,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` - // A previously-returned page token representing part of the larger set of - // results to view. - PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` - // Filter results to buckets whose names begin with this prefix. - Prefix string `protobuf:"bytes,3,opt,name=prefix,proto3" json:"prefix,omitempty"` - // Required. A valid API project identifier. - Project string `protobuf:"bytes,4,opt,name=project,proto3" json:"project,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`. - Projection CommonEnums_Projection `protobuf:"varint,5,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,7,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListBucketsRequest) Reset() { - *x = ListBucketsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListBucketsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListBucketsRequest) ProtoMessage() {} - -func (x *ListBucketsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListBucketsRequest.ProtoReflect.Descriptor instead. -func (*ListBucketsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{13} -} - -func (x *ListBucketsRequest) GetMaxResults() int32 { - if x != nil { - return x.MaxResults - } - return 0 -} - -func (x *ListBucketsRequest) GetPageToken() string { - if x != nil { - return x.PageToken - } - return "" -} - -func (x *ListBucketsRequest) GetPrefix() string { - if x != nil { - return x.Prefix - } - return "" -} - -func (x *ListBucketsRequest) GetProject() string { - if x != nil { - return x.Project - } - return "" -} - -func (x *ListBucketsRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *ListBucketsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for LockRetentionPolicy. -type LockRetentionPolicyRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Makes the operation conditional on whether bucket's current metageneration - // matches the given value. Must be positive. - IfMetagenerationMatch int64 `protobuf:"varint,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *LockRetentionPolicyRequest) Reset() { - *x = LockRetentionPolicyRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *LockRetentionPolicyRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*LockRetentionPolicyRequest) ProtoMessage() {} - -func (x *LockRetentionPolicyRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use LockRetentionPolicyRequest.ProtoReflect.Descriptor instead. -func (*LockRetentionPolicyRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{14} -} - -func (x *LockRetentionPolicyRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *LockRetentionPolicyRequest) GetIfMetagenerationMatch() int64 { - if x != nil { - return x.IfMetagenerationMatch - } - return 0 -} - -func (x *LockRetentionPolicyRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request for PatchBucket method. -type PatchBucketRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Makes the return of the bucket metadata conditional on whether the bucket's - // current metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the return of the bucket metadata conditional on whether the bucket's - // current metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Apply a predefined set of access controls to this bucket. - PredefinedAcl CommonEnums_PredefinedBucketAcl `protobuf:"varint,4,opt,name=predefined_acl,json=predefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedBucketAcl" json:"predefined_acl,omitempty"` - // Apply a predefined set of default object access controls to this bucket. - PredefinedDefaultObjectAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,5,opt,name=predefined_default_object_acl,json=predefinedDefaultObjectAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"predefined_default_object_acl,omitempty"` - // Set of properties to return. Defaults to `FULL`. - Projection CommonEnums_Projection `protobuf:"varint,6,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // The Bucket metadata for updating. - Metadata *Bucket `protobuf:"bytes,8,opt,name=metadata,proto3" json:"metadata,omitempty"` - // List of fields to be updated. - // - // To specify ALL fields, equivalent to the JSON API's "update" function, - // specify a single field with the value `*`. Note: not recommended. If a new - // field is introduced at a later time, an older client updating with the `*` - // may accidentally reset the new field's value. - // - // Not specifying any fields is an error. - // Not specifying a field while setting that field to a non-default value is - // an error. - UpdateMask *field_mask.FieldMask `protobuf:"bytes,9,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,10,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *PatchBucketRequest) Reset() { - *x = PatchBucketRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PatchBucketRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PatchBucketRequest) ProtoMessage() {} - -func (x *PatchBucketRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PatchBucketRequest.ProtoReflect.Descriptor instead. -func (*PatchBucketRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{15} -} - -func (x *PatchBucketRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *PatchBucketRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *PatchBucketRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *PatchBucketRequest) GetPredefinedAcl() CommonEnums_PredefinedBucketAcl { - if x != nil { - return x.PredefinedAcl - } - return CommonEnums_PREDEFINED_BUCKET_ACL_UNSPECIFIED -} - -func (x *PatchBucketRequest) GetPredefinedDefaultObjectAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.PredefinedDefaultObjectAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *PatchBucketRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *PatchBucketRequest) GetMetadata() *Bucket { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *PatchBucketRequest) GetUpdateMask() *field_mask.FieldMask { - if x != nil { - return x.UpdateMask - } - return nil -} - -func (x *PatchBucketRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request for UpdateBucket method. -type UpdateBucketRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Makes the return of the bucket metadata conditional on whether the bucket's - // current metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the return of the bucket metadata conditional on whether the bucket's - // current metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Apply a predefined set of access controls to this bucket. - PredefinedAcl CommonEnums_PredefinedBucketAcl `protobuf:"varint,4,opt,name=predefined_acl,json=predefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedBucketAcl" json:"predefined_acl,omitempty"` - // Apply a predefined set of default object access controls to this bucket. - PredefinedDefaultObjectAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,5,opt,name=predefined_default_object_acl,json=predefinedDefaultObjectAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"predefined_default_object_acl,omitempty"` - // Set of properties to return. Defaults to `FULL`. - Projection CommonEnums_Projection `protobuf:"varint,6,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // The Bucket metadata for updating. - Metadata *Bucket `protobuf:"bytes,8,opt,name=metadata,proto3" json:"metadata,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,9,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *UpdateBucketRequest) Reset() { - *x = UpdateBucketRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateBucketRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateBucketRequest) ProtoMessage() {} - -func (x *UpdateBucketRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateBucketRequest.ProtoReflect.Descriptor instead. -func (*UpdateBucketRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{16} -} - -func (x *UpdateBucketRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *UpdateBucketRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *UpdateBucketRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *UpdateBucketRequest) GetPredefinedAcl() CommonEnums_PredefinedBucketAcl { - if x != nil { - return x.PredefinedAcl - } - return CommonEnums_PREDEFINED_BUCKET_ACL_UNSPECIFIED -} - -func (x *UpdateBucketRequest) GetPredefinedDefaultObjectAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.PredefinedDefaultObjectAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *UpdateBucketRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *UpdateBucketRequest) GetMetadata() *Bucket { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *UpdateBucketRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for StopChannel. -type StopChannelRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The channel to be stopped. - Channel *Channel `protobuf:"bytes,1,opt,name=channel,proto3" json:"channel,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,2,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *StopChannelRequest) Reset() { - *x = StopChannelRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StopChannelRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StopChannelRequest) ProtoMessage() {} - -func (x *StopChannelRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StopChannelRequest.ProtoReflect.Descriptor instead. -func (*StopChannelRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{17} -} - -func (x *StopChannelRequest) GetChannel() *Channel { - if x != nil { - return x.Channel - } - return nil -} - -func (x *StopChannelRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for DeleteDefaultObjectAccessControl. -type DeleteDefaultObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *DeleteDefaultObjectAccessControlRequest) Reset() { - *x = DeleteDefaultObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteDefaultObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteDefaultObjectAccessControlRequest) ProtoMessage() {} - -func (x *DeleteDefaultObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteDefaultObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*DeleteDefaultObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{18} -} - -func (x *DeleteDefaultObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *DeleteDefaultObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *DeleteDefaultObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetDefaultObjectAccessControl. -type GetDefaultObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetDefaultObjectAccessControlRequest) Reset() { - *x = GetDefaultObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetDefaultObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetDefaultObjectAccessControlRequest) ProtoMessage() {} - -func (x *GetDefaultObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetDefaultObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*GetDefaultObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{19} -} - -func (x *GetDefaultObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *GetDefaultObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *GetDefaultObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for InsertDefaultObjectAccessControl. -type InsertDefaultObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Properties of the object access control being inserted. - ObjectAccessControl *ObjectAccessControl `protobuf:"bytes,3,opt,name=object_access_control,json=objectAccessControl,proto3" json:"object_access_control,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *InsertDefaultObjectAccessControlRequest) Reset() { - *x = InsertDefaultObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InsertDefaultObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InsertDefaultObjectAccessControlRequest) ProtoMessage() {} - -func (x *InsertDefaultObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use InsertDefaultObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*InsertDefaultObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{20} -} - -func (x *InsertDefaultObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *InsertDefaultObjectAccessControlRequest) GetObjectAccessControl() *ObjectAccessControl { - if x != nil { - return x.ObjectAccessControl - } - return nil -} - -func (x *InsertDefaultObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for ListDefaultObjectAccessControls. -type ListDefaultObjectAccessControlsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // If present, only return default ACL listing if the bucket's current - // metageneration matches this value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // If present, only return default ACL listing if the bucket's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,5,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListDefaultObjectAccessControlsRequest) Reset() { - *x = ListDefaultObjectAccessControlsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListDefaultObjectAccessControlsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListDefaultObjectAccessControlsRequest) ProtoMessage() {} - -func (x *ListDefaultObjectAccessControlsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListDefaultObjectAccessControlsRequest.ProtoReflect.Descriptor instead. -func (*ListDefaultObjectAccessControlsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{21} -} - -func (x *ListDefaultObjectAccessControlsRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *ListDefaultObjectAccessControlsRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *ListDefaultObjectAccessControlsRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *ListDefaultObjectAccessControlsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for PatchDefaultObjectAccessControl. -type PatchDefaultObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // The ObjectAccessControl for updating. - ObjectAccessControl *ObjectAccessControl `protobuf:"bytes,4,opt,name=object_access_control,json=objectAccessControl,proto3" json:"object_access_control,omitempty"` - // List of fields to be updated. - // - // To specify ALL fields, equivalent to the JSON API's "update" function, - // specify a single field with the value `*`. Note: not recommended. If a new - // field is introduced at a later time, an older client updating with the `*` - // may accidentally reset the new field's value. - // - // Not specifying any fields is an error. - // Not specifying a field while setting that field to a non-default value is - // an error. - UpdateMask *field_mask.FieldMask `protobuf:"bytes,5,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *PatchDefaultObjectAccessControlRequest) Reset() { - *x = PatchDefaultObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PatchDefaultObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PatchDefaultObjectAccessControlRequest) ProtoMessage() {} - -func (x *PatchDefaultObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PatchDefaultObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*PatchDefaultObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{22} -} - -func (x *PatchDefaultObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *PatchDefaultObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *PatchDefaultObjectAccessControlRequest) GetObjectAccessControl() *ObjectAccessControl { - if x != nil { - return x.ObjectAccessControl - } - return nil -} - -func (x *PatchDefaultObjectAccessControlRequest) GetUpdateMask() *field_mask.FieldMask { - if x != nil { - return x.UpdateMask - } - return nil -} - -func (x *PatchDefaultObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for UpdateDefaultObjectAccessControl. -type UpdateDefaultObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // The ObjectAccessControl for updating. - ObjectAccessControl *ObjectAccessControl `protobuf:"bytes,4,opt,name=object_access_control,json=objectAccessControl,proto3" json:"object_access_control,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,5,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *UpdateDefaultObjectAccessControlRequest) Reset() { - *x = UpdateDefaultObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateDefaultObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateDefaultObjectAccessControlRequest) ProtoMessage() {} - -func (x *UpdateDefaultObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateDefaultObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*UpdateDefaultObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{23} -} - -func (x *UpdateDefaultObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *UpdateDefaultObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *UpdateDefaultObjectAccessControlRequest) GetObjectAccessControl() *ObjectAccessControl { - if x != nil { - return x.ObjectAccessControl - } - return nil -} - -func (x *UpdateDefaultObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for DeleteNotification. -type DeleteNotificationRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The parent bucket of the notification. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. ID of the notification to delete. - Notification string `protobuf:"bytes,2,opt,name=notification,proto3" json:"notification,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *DeleteNotificationRequest) Reset() { - *x = DeleteNotificationRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteNotificationRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteNotificationRequest) ProtoMessage() {} - -func (x *DeleteNotificationRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteNotificationRequest.ProtoReflect.Descriptor instead. -func (*DeleteNotificationRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{24} -} - -func (x *DeleteNotificationRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *DeleteNotificationRequest) GetNotification() string { - if x != nil { - return x.Notification - } - return "" -} - -func (x *DeleteNotificationRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetNotification. -type GetNotificationRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The parent bucket of the notification. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. Notification ID. - // Required. - Notification string `protobuf:"bytes,2,opt,name=notification,proto3" json:"notification,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetNotificationRequest) Reset() { - *x = GetNotificationRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetNotificationRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetNotificationRequest) ProtoMessage() {} - -func (x *GetNotificationRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetNotificationRequest.ProtoReflect.Descriptor instead. -func (*GetNotificationRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{25} -} - -func (x *GetNotificationRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *GetNotificationRequest) GetNotification() string { - if x != nil { - return x.Notification - } - return "" -} - -func (x *GetNotificationRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for InsertNotification. -type InsertNotificationRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The parent bucket of the notification. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Properties of the notification to be inserted. - Notification *Notification `protobuf:"bytes,3,opt,name=notification,proto3" json:"notification,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *InsertNotificationRequest) Reset() { - *x = InsertNotificationRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InsertNotificationRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InsertNotificationRequest) ProtoMessage() {} - -func (x *InsertNotificationRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use InsertNotificationRequest.ProtoReflect.Descriptor instead. -func (*InsertNotificationRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{26} -} - -func (x *InsertNotificationRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *InsertNotificationRequest) GetNotification() *Notification { - if x != nil { - return x.Notification - } - return nil -} - -func (x *InsertNotificationRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for ListNotifications. -type ListNotificationsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a Google Cloud Storage bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListNotificationsRequest) Reset() { - *x = ListNotificationsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListNotificationsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListNotificationsRequest) ProtoMessage() {} - -func (x *ListNotificationsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListNotificationsRequest.ProtoReflect.Descriptor instead. -func (*ListNotificationsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{27} -} - -func (x *ListNotificationsRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *ListNotificationsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for DeleteObjectAccessControl. -type DeleteObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // Required. Name of the object. - Object string `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,4,opt,name=generation,proto3" json:"generation,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *DeleteObjectAccessControlRequest) Reset() { - *x = DeleteObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteObjectAccessControlRequest) ProtoMessage() {} - -func (x *DeleteObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*DeleteObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{28} -} - -func (x *DeleteObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *DeleteObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *DeleteObjectAccessControlRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *DeleteObjectAccessControlRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *DeleteObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetObjectAccessControl. -type GetObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // Required. Name of the object. - Object string `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,4,opt,name=generation,proto3" json:"generation,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetObjectAccessControlRequest) Reset() { - *x = GetObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetObjectAccessControlRequest) ProtoMessage() {} - -func (x *GetObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*GetObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{29} -} - -func (x *GetObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *GetObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *GetObjectAccessControlRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *GetObjectAccessControlRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *GetObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for InsertObjectAccessControl. -type InsertObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. Name of the object. - Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"` - // Properties of the object access control to be inserted. - ObjectAccessControl *ObjectAccessControl `protobuf:"bytes,5,opt,name=object_access_control,json=objectAccessControl,proto3" json:"object_access_control,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *InsertObjectAccessControlRequest) Reset() { - *x = InsertObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InsertObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InsertObjectAccessControlRequest) ProtoMessage() {} - -func (x *InsertObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[30] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use InsertObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*InsertObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{30} -} - -func (x *InsertObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *InsertObjectAccessControlRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *InsertObjectAccessControlRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *InsertObjectAccessControlRequest) GetObjectAccessControl() *ObjectAccessControl { - if x != nil { - return x.ObjectAccessControl - } - return nil -} - -func (x *InsertObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for ListObjectAccessControls. -type ListObjectAccessControlsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. Name of the object. - Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,5,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListObjectAccessControlsRequest) Reset() { - *x = ListObjectAccessControlsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListObjectAccessControlsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListObjectAccessControlsRequest) ProtoMessage() {} - -func (x *ListObjectAccessControlsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[31] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListObjectAccessControlsRequest.ProtoReflect.Descriptor instead. -func (*ListObjectAccessControlsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{31} -} - -func (x *ListObjectAccessControlsRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *ListObjectAccessControlsRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *ListObjectAccessControlsRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *ListObjectAccessControlsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for PatchObjectAccessControl. -type PatchObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // Required. Name of the object. - // Required. - Object string `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,4,opt,name=generation,proto3" json:"generation,omitempty"` - // The ObjectAccessControl for updating. - ObjectAccessControl *ObjectAccessControl `protobuf:"bytes,5,opt,name=object_access_control,json=objectAccessControl,proto3" json:"object_access_control,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` - // List of fields to be updated. - // - // To specify ALL fields, equivalent to the JSON API's "update" function, - // specify a single field with the value `*`. Note: not recommended. If a new - // field is introduced at a later time, an older client updating with the `*` - // may accidentally reset the new field's value. - // - // Not specifying any fields is an error. - // Not specifying a field while setting that field to a non-default value is - // an error. - UpdateMask *field_mask.FieldMask `protobuf:"bytes,7,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` -} - -func (x *PatchObjectAccessControlRequest) Reset() { - *x = PatchObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PatchObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PatchObjectAccessControlRequest) ProtoMessage() {} - -func (x *PatchObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[32] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PatchObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*PatchObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{32} -} - -func (x *PatchObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *PatchObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *PatchObjectAccessControlRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *PatchObjectAccessControlRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *PatchObjectAccessControlRequest) GetObjectAccessControl() *ObjectAccessControl { - if x != nil { - return x.ObjectAccessControl - } - return nil -} - -func (x *PatchObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -func (x *PatchObjectAccessControlRequest) GetUpdateMask() *field_mask.FieldMask { - if x != nil { - return x.UpdateMask - } - return nil -} - -// Request message for UpdateObjectAccessControl. -type UpdateObjectAccessControlRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of a bucket. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The entity holding the permission. Can be one of: - // * `user-`*userId* - // * `user-`*emailAddress* - // * `group-`*groupId* - // * `group-`*emailAddress* - // * `allUsers` - // * `allAuthenticatedUsers` - Entity string `protobuf:"bytes,2,opt,name=entity,proto3" json:"entity,omitempty"` - // Required. Name of the object. - // Required. - Object string `protobuf:"bytes,3,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,4,opt,name=generation,proto3" json:"generation,omitempty"` - // The ObjectAccessControl for updating. - ObjectAccessControl *ObjectAccessControl `protobuf:"bytes,6,opt,name=object_access_control,json=objectAccessControl,proto3" json:"object_access_control,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,7,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` - // List of fields to be updated. - // - // To specify ALL fields, equivalent to the JSON API's "update" function, - // specify a single field with the value `*`. Note: not recommended. If a new - // field is introduced at a later time, an older client updating with the `*` - // may accidentally reset the new field's value. - // - // Not specifying any fields is an error. - // Not specifying a field while setting that field to a non-default value is - // an error. - UpdateMask *field_mask.FieldMask `protobuf:"bytes,8,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` -} - -func (x *UpdateObjectAccessControlRequest) Reset() { - *x = UpdateObjectAccessControlRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateObjectAccessControlRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateObjectAccessControlRequest) ProtoMessage() {} - -func (x *UpdateObjectAccessControlRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateObjectAccessControlRequest.ProtoReflect.Descriptor instead. -func (*UpdateObjectAccessControlRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{33} -} - -func (x *UpdateObjectAccessControlRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *UpdateObjectAccessControlRequest) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *UpdateObjectAccessControlRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *UpdateObjectAccessControlRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *UpdateObjectAccessControlRequest) GetObjectAccessControl() *ObjectAccessControl { - if x != nil { - return x.ObjectAccessControl - } - return nil -} - -func (x *UpdateObjectAccessControlRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -func (x *UpdateObjectAccessControlRequest) GetUpdateMask() *field_mask.FieldMask { - if x != nil { - return x.UpdateMask - } - return nil -} - -// Request message for ComposeObject. -type ComposeObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket containing the source objects. The destination object is - // stored in this bucket. - DestinationBucket string `protobuf:"bytes,1,opt,name=destination_bucket,json=destinationBucket,proto3" json:"destination_bucket,omitempty"` - // Required. Name of the new object. - DestinationObject string `protobuf:"bytes,2,opt,name=destination_object,json=destinationObject,proto3" json:"destination_object,omitempty"` - // Apply a predefined set of access controls to the destination object. - DestinationPredefinedAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,3,opt,name=destination_predefined_acl,json=destinationPredefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"destination_predefined_acl,omitempty"` - // Properties of the resulting object. - Destination *Object `protobuf:"bytes,11,opt,name=destination,proto3" json:"destination,omitempty"` - // The list of source objects that will be concatenated into a single object. - SourceObjects []*ComposeObjectRequest_SourceObjects `protobuf:"bytes,12,rep,name=source_objects,json=sourceObjects,proto3" json:"source_objects,omitempty"` - // Makes the operation conditional on whether the object's current generation - // matches the given value. Setting to 0 makes the operation succeed only if - // there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Resource name of the Cloud KMS key, of the form - // `projects/my-project/locations/my-location/keyRings/my-kr/cryptoKeys/my-key`, - // that will be used to encrypt the object. Overrides the object - // metadata's `kms_key_name` value, if any. - KmsKeyName string `protobuf:"bytes,6,opt,name=kms_key_name,json=kmsKeyName,proto3" json:"kms_key_name,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,9,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,10,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ComposeObjectRequest) Reset() { - *x = ComposeObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ComposeObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ComposeObjectRequest) ProtoMessage() {} - -func (x *ComposeObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[34] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ComposeObjectRequest.ProtoReflect.Descriptor instead. -func (*ComposeObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{34} -} - -func (x *ComposeObjectRequest) GetDestinationBucket() string { - if x != nil { - return x.DestinationBucket - } - return "" -} - -func (x *ComposeObjectRequest) GetDestinationObject() string { - if x != nil { - return x.DestinationObject - } - return "" -} - -func (x *ComposeObjectRequest) GetDestinationPredefinedAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.DestinationPredefinedAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *ComposeObjectRequest) GetDestination() *Object { - if x != nil { - return x.Destination - } - return nil -} - -func (x *ComposeObjectRequest) GetSourceObjects() []*ComposeObjectRequest_SourceObjects { - if x != nil { - return x.SourceObjects - } - return nil -} - -func (x *ComposeObjectRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *ComposeObjectRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *ComposeObjectRequest) GetKmsKeyName() string { - if x != nil { - return x.KmsKeyName - } - return "" -} - -func (x *ComposeObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *ComposeObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for CopyObject. -type CopyObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket in which to store the new object. Overrides the provided - // object - // metadata's `bucket` value, if any. - DestinationBucket string `protobuf:"bytes,1,opt,name=destination_bucket,json=destinationBucket,proto3" json:"destination_bucket,omitempty"` - // Required. Name of the new object. - // Required when the object metadata is not otherwise provided. Overrides the - // object metadata's `name` value, if any. - DestinationObject string `protobuf:"bytes,2,opt,name=destination_object,json=destinationObject,proto3" json:"destination_object,omitempty"` - // Apply a predefined set of access controls to the destination object. - DestinationPredefinedAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,3,opt,name=destination_predefined_acl,json=destinationPredefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"destination_predefined_acl,omitempty"` - // Makes the operation conditional on whether the destination object's current - // generation matches the given value. Setting to 0 makes the operation - // succeed only if there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the destination object's current - // generation does not match the given value. If no live object exists, the - // precondition fails. Setting to 0 makes the operation succeed only if there - // is a live version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the destination object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the destination object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,7,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // generation matches the given value. - IfSourceGenerationMatch *wrappers.Int64Value `protobuf:"bytes,8,opt,name=if_source_generation_match,json=ifSourceGenerationMatch,proto3" json:"if_source_generation_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // generation does not match the given value. - IfSourceGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,9,opt,name=if_source_generation_not_match,json=ifSourceGenerationNotMatch,proto3" json:"if_source_generation_not_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // metageneration matches the given value. - IfSourceMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,10,opt,name=if_source_metageneration_match,json=ifSourceMetagenerationMatch,proto3" json:"if_source_metageneration_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // metageneration does not match the given value. - IfSourceMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,11,opt,name=if_source_metageneration_not_match,json=ifSourceMetagenerationNotMatch,proto3" json:"if_source_metageneration_not_match,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`, unless the - // object resource specifies the `acl` property, when it defaults - // to `full`. - Projection CommonEnums_Projection `protobuf:"varint,12,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // Required. Name of the bucket in which to find the source object. - SourceBucket string `protobuf:"bytes,13,opt,name=source_bucket,json=sourceBucket,proto3" json:"source_bucket,omitempty"` - // Required. Name of the source object. - SourceObject string `protobuf:"bytes,14,opt,name=source_object,json=sourceObject,proto3" json:"source_object,omitempty"` - // If present, selects a specific revision of the source object (as opposed to - // the latest version, the default). - SourceGeneration int64 `protobuf:"varint,15,opt,name=source_generation,json=sourceGeneration,proto3" json:"source_generation,omitempty"` - // Properties of the resulting object. If not set, duplicate properties of - // source object. - Destination *Object `protobuf:"bytes,17,opt,name=destination,proto3" json:"destination,omitempty"` - // Resource name of the Cloud KMS key, of the form - // `projects/my-project/locations/my-location/keyRings/my-kr/cryptoKeys/my-key`, - // that will be used to encrypt the object. Overrides the object - // metadata's `kms_key_name` value, if any. - DestinationKmsKeyName string `protobuf:"bytes,20,opt,name=destination_kms_key_name,json=destinationKmsKeyName,proto3" json:"destination_kms_key_name,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,18,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,19,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *CopyObjectRequest) Reset() { - *x = CopyObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CopyObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CopyObjectRequest) ProtoMessage() {} - -func (x *CopyObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[35] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CopyObjectRequest.ProtoReflect.Descriptor instead. -func (*CopyObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{35} -} - -func (x *CopyObjectRequest) GetDestinationBucket() string { - if x != nil { - return x.DestinationBucket - } - return "" -} - -func (x *CopyObjectRequest) GetDestinationObject() string { - if x != nil { - return x.DestinationObject - } - return "" -} - -func (x *CopyObjectRequest) GetDestinationPredefinedAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.DestinationPredefinedAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *CopyObjectRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *CopyObjectRequest) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *CopyObjectRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *CopyObjectRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *CopyObjectRequest) GetIfSourceGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceGenerationMatch - } - return nil -} - -func (x *CopyObjectRequest) GetIfSourceGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceGenerationNotMatch - } - return nil -} - -func (x *CopyObjectRequest) GetIfSourceMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceMetagenerationMatch - } - return nil -} - -func (x *CopyObjectRequest) GetIfSourceMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceMetagenerationNotMatch - } - return nil -} - -func (x *CopyObjectRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *CopyObjectRequest) GetSourceBucket() string { - if x != nil { - return x.SourceBucket - } - return "" -} - -func (x *CopyObjectRequest) GetSourceObject() string { - if x != nil { - return x.SourceObject - } - return "" -} - -func (x *CopyObjectRequest) GetSourceGeneration() int64 { - if x != nil { - return x.SourceGeneration - } - return 0 -} - -func (x *CopyObjectRequest) GetDestination() *Object { - if x != nil { - return x.Destination - } - return nil -} - -func (x *CopyObjectRequest) GetDestinationKmsKeyName() string { - if x != nil { - return x.DestinationKmsKeyName - } - return "" -} - -func (x *CopyObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *CopyObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Message for deleting an object. -// Either `bucket` and `object` *or* `upload_id` **must** be set (but not both). -type DeleteObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket in which the object resides. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. The name of the object to delete (when not using a resumable write). - Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - // The resumable upload_id of the object to delete (when using a - // resumable write). This should be copied from the `upload_id` field of - // `StartResumableWriteResponse`. - UploadId string `protobuf:"bytes,3,opt,name=upload_id,json=uploadId,proto3" json:"upload_id,omitempty"` - // If present, permanently deletes a specific revision of this object (as - // opposed to the latest version, the default). - Generation int64 `protobuf:"varint,4,opt,name=generation,proto3" json:"generation,omitempty"` - // Makes the operation conditional on whether the object's current generation - // matches the given value. Setting to 0 makes the operation succeed only if - // there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current generation - // does not match the given value. If no live object exists, the precondition - // fails. Setting to 0 makes the operation succeed only if there is a live - // version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,7,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,8,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,10,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,11,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *DeleteObjectRequest) Reset() { - *x = DeleteObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteObjectRequest) ProtoMessage() {} - -func (x *DeleteObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[36] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteObjectRequest.ProtoReflect.Descriptor instead. -func (*DeleteObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{36} -} - -func (x *DeleteObjectRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *DeleteObjectRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *DeleteObjectRequest) GetUploadId() string { - if x != nil { - return x.UploadId - } - return "" -} - -func (x *DeleteObjectRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *DeleteObjectRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *DeleteObjectRequest) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *DeleteObjectRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *DeleteObjectRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *DeleteObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *DeleteObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetObjectMedia. -type GetObjectMediaRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The name of the bucket containing the object to read. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // The name of the object to read. - Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed - // to the latest version, the default). - Generation int64 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"` - // The offset for the first byte to return in the read, relative to the start - // of the object. - // - // A negative `read_offset` value will be interpreted as the number of bytes - // back from the end of the object to be returned. For example, if an object's - // length is 15 bytes, a GetObjectMediaRequest with `read_offset` = -5 and - // `read_limit` = 3 would return bytes 10 through 12 of the object. Requesting - // a negative offset whose magnitude is larger than the size of the object - // will result in an error. - ReadOffset int64 `protobuf:"varint,4,opt,name=read_offset,json=readOffset,proto3" json:"read_offset,omitempty"` - // The maximum number of `data` bytes the server is allowed to return in the - // sum of all `Object` messages. A `read_limit` of zero indicates that there - // is no limit, and a negative `read_limit` will cause an error. - // - // If the stream returns fewer bytes than allowed by the `read_limit` and no - // error occurred, the stream includes all data from the `read_offset` to the - // end of the resource. - ReadLimit int64 `protobuf:"varint,5,opt,name=read_limit,json=readLimit,proto3" json:"read_limit,omitempty"` - // Makes the operation conditional on whether the object's current generation - // matches the given value. Setting to 0 makes the operation succeed only if - // there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current generation - // does not match the given value. If no live object exists, the precondition - // fails. Setting to 0 makes the operation succeed only if there is a live - // version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,7,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,8,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,9,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,11,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,12,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetObjectMediaRequest) Reset() { - *x = GetObjectMediaRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetObjectMediaRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetObjectMediaRequest) ProtoMessage() {} - -func (x *GetObjectMediaRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[37] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetObjectMediaRequest.ProtoReflect.Descriptor instead. -func (*GetObjectMediaRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{37} -} - -func (x *GetObjectMediaRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *GetObjectMediaRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *GetObjectMediaRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *GetObjectMediaRequest) GetReadOffset() int64 { - if x != nil { - return x.ReadOffset - } - return 0 -} - -func (x *GetObjectMediaRequest) GetReadLimit() int64 { - if x != nil { - return x.ReadLimit - } - return 0 -} - -func (x *GetObjectMediaRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *GetObjectMediaRequest) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *GetObjectMediaRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *GetObjectMediaRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *GetObjectMediaRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *GetObjectMediaRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetObject. -type GetObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket in which the object resides. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. Name of the object. - Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"` - // Makes the operation conditional on whether the object's current generation - // matches the given value. Setting to 0 makes the operation succeed only if - // there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current generation - // does not match the given value. If no live object exists, the precondition - // fails. Setting to 0 makes the operation succeed only if there is a live - // version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,7,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`. - Projection CommonEnums_Projection `protobuf:"varint,8,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,10,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,11,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetObjectRequest) Reset() { - *x = GetObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetObjectRequest) ProtoMessage() {} - -func (x *GetObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[38] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetObjectRequest.ProtoReflect.Descriptor instead. -func (*GetObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{38} -} - -func (x *GetObjectRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *GetObjectRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *GetObjectRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *GetObjectRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *GetObjectRequest) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *GetObjectRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *GetObjectRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *GetObjectRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *GetObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *GetObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Response message for GetObject. -type GetObjectMediaResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // A portion of the data for the object. The service **may** leave `data` - // empty for any given `ReadResponse`. This enables the service to inform the - // client that the request is still live while it is running an operation to - // generate more data. - ChecksummedData *ChecksummedData `protobuf:"bytes,1,opt,name=checksummed_data,json=checksummedData,proto3" json:"checksummed_data,omitempty"` - // The checksums of the complete object. The client should compute one of - // these checksums over the downloaded object and compare it against the value - // provided here. - ObjectChecksums *ObjectChecksums `protobuf:"bytes,2,opt,name=object_checksums,json=objectChecksums,proto3" json:"object_checksums,omitempty"` - // If read_offset and or read_limit was specified on the - // GetObjectMediaRequest, ContentRange will be populated on the first - // GetObjectMediaResponse message of the read stream. - ContentRange *ContentRange `protobuf:"bytes,3,opt,name=content_range,json=contentRange,proto3" json:"content_range,omitempty"` - // Metadata of the object whose media is being returned. - // Only populated in the first response in the stream. - Metadata *Object `protobuf:"bytes,4,opt,name=metadata,proto3" json:"metadata,omitempty"` -} - -func (x *GetObjectMediaResponse) Reset() { - *x = GetObjectMediaResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetObjectMediaResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetObjectMediaResponse) ProtoMessage() {} - -func (x *GetObjectMediaResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[39] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetObjectMediaResponse.ProtoReflect.Descriptor instead. -func (*GetObjectMediaResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{39} -} - -func (x *GetObjectMediaResponse) GetChecksummedData() *ChecksummedData { - if x != nil { - return x.ChecksummedData - } - return nil -} - -func (x *GetObjectMediaResponse) GetObjectChecksums() *ObjectChecksums { - if x != nil { - return x.ObjectChecksums - } - return nil -} - -func (x *GetObjectMediaResponse) GetContentRange() *ContentRange { - if x != nil { - return x.ContentRange - } - return nil -} - -func (x *GetObjectMediaResponse) GetMetadata() *Object { - if x != nil { - return x.Metadata - } - return nil -} - -// Describes an attempt to insert an object, possibly over multiple requests. -type InsertObjectSpec struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Destination object, including its name and its metadata. - Resource *Object `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"` - // Apply a predefined set of access controls to this object. - PredefinedAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,2,opt,name=predefined_acl,json=predefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"predefined_acl,omitempty"` - // Makes the operation conditional on whether the object's current - // generation matches the given value. Setting to 0 makes the operation - // succeed only if there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,3,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current - // generation does not match the given value. If no live object exists, the - // precondition fails. Setting to 0 makes the operation succeed only if - // there is a live version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,4,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`, unless the - // object resource specifies the `acl` property, when it defaults - // to `full`. - Projection CommonEnums_Projection `protobuf:"varint,7,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` -} - -func (x *InsertObjectSpec) Reset() { - *x = InsertObjectSpec{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InsertObjectSpec) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InsertObjectSpec) ProtoMessage() {} - -func (x *InsertObjectSpec) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[40] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use InsertObjectSpec.ProtoReflect.Descriptor instead. -func (*InsertObjectSpec) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{40} -} - -func (x *InsertObjectSpec) GetResource() *Object { - if x != nil { - return x.Resource - } - return nil -} - -func (x *InsertObjectSpec) GetPredefinedAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.PredefinedAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *InsertObjectSpec) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *InsertObjectSpec) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *InsertObjectSpec) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *InsertObjectSpec) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *InsertObjectSpec) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -// Message for writing an object. -type InsertObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The first message of each stream should set one of the following. - // - // Types that are assignable to FirstMessage: - // - // *InsertObjectRequest_UploadId - // *InsertObjectRequest_InsertObjectSpec - FirstMessage isInsertObjectRequest_FirstMessage `protobuf_oneof:"first_message"` - // Required. The offset from the beginning of the object at which the data should be - // written. - // - // In the first `InsertObjectRequest` of a `InsertObject()` action, it - // indicates the initial offset for the `Insert()` call. The value **must** be - // equal to the `committed_size` that a call to `QueryWriteStatus()` would - // return (0 if this is the first write to the object). - // - // On subsequent calls, this value **must** be no larger than the sum of the - // first `write_offset` and the sizes of all `data` chunks sent previously on - // this stream. - // - // An incorrect value will cause an error. - WriteOffset int64 `protobuf:"varint,3,opt,name=write_offset,json=writeOffset,proto3" json:"write_offset,omitempty"` - // A portion of the data for the object. - // - // Types that are assignable to Data: - // - // *InsertObjectRequest_ChecksummedData - // *InsertObjectRequest_Reference - Data isInsertObjectRequest_Data `protobuf_oneof:"data"` - // Checksums for the complete object. If the checksums computed by the service - // don't match the specifified checksums the call will fail. May only be - // provided in the first or last request (either with first_message, or - // finish_write set). - ObjectChecksums *ObjectChecksums `protobuf:"bytes,6,opt,name=object_checksums,json=objectChecksums,proto3" json:"object_checksums,omitempty"` - // If `true`, this indicates that the write is complete. Sending any - // `InsertObjectRequest`s subsequent to one in which `finish_write` is `true` - // will cause an error. - // For a non-resumable write (where the upload_id was not set in the first - // message), it is an error not to set this field in the final message of the - // stream. - FinishWrite bool `protobuf:"varint,7,opt,name=finish_write,json=finishWrite,proto3" json:"finish_write,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,8,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,9,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *InsertObjectRequest) Reset() { - *x = InsertObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *InsertObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*InsertObjectRequest) ProtoMessage() {} - -func (x *InsertObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[41] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use InsertObjectRequest.ProtoReflect.Descriptor instead. -func (*InsertObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{41} -} - -func (m *InsertObjectRequest) GetFirstMessage() isInsertObjectRequest_FirstMessage { - if m != nil { - return m.FirstMessage - } - return nil -} - -func (x *InsertObjectRequest) GetUploadId() string { - if x, ok := x.GetFirstMessage().(*InsertObjectRequest_UploadId); ok { - return x.UploadId - } - return "" -} - -func (x *InsertObjectRequest) GetInsertObjectSpec() *InsertObjectSpec { - if x, ok := x.GetFirstMessage().(*InsertObjectRequest_InsertObjectSpec); ok { - return x.InsertObjectSpec - } - return nil -} - -func (x *InsertObjectRequest) GetWriteOffset() int64 { - if x != nil { - return x.WriteOffset - } - return 0 -} - -func (m *InsertObjectRequest) GetData() isInsertObjectRequest_Data { - if m != nil { - return m.Data - } - return nil -} - -func (x *InsertObjectRequest) GetChecksummedData() *ChecksummedData { - if x, ok := x.GetData().(*InsertObjectRequest_ChecksummedData); ok { - return x.ChecksummedData - } - return nil -} - -func (x *InsertObjectRequest) GetReference() *GetObjectMediaRequest { - if x, ok := x.GetData().(*InsertObjectRequest_Reference); ok { - return x.Reference - } - return nil -} - -func (x *InsertObjectRequest) GetObjectChecksums() *ObjectChecksums { - if x != nil { - return x.ObjectChecksums - } - return nil -} - -func (x *InsertObjectRequest) GetFinishWrite() bool { - if x != nil { - return x.FinishWrite - } - return false -} - -func (x *InsertObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *InsertObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -type isInsertObjectRequest_FirstMessage interface { - isInsertObjectRequest_FirstMessage() -} - -type InsertObjectRequest_UploadId struct { - // For resumable uploads. This should be the `upload_id` returned from a - // call to `StartResumableWriteResponse`. - UploadId string `protobuf:"bytes,1,opt,name=upload_id,json=uploadId,proto3,oneof"` -} - -type InsertObjectRequest_InsertObjectSpec struct { - // For non-resumable uploads. Describes the overall upload, including the - // destination bucket and object name, preconditions, etc. - InsertObjectSpec *InsertObjectSpec `protobuf:"bytes,2,opt,name=insert_object_spec,json=insertObjectSpec,proto3,oneof"` -} - -func (*InsertObjectRequest_UploadId) isInsertObjectRequest_FirstMessage() {} - -func (*InsertObjectRequest_InsertObjectSpec) isInsertObjectRequest_FirstMessage() {} - -type isInsertObjectRequest_Data interface { - isInsertObjectRequest_Data() -} - -type InsertObjectRequest_ChecksummedData struct { - // The data to insert. If a crc32c checksum is provided that doesn't match - // the checksum computed by the service, the request will fail. - ChecksummedData *ChecksummedData `protobuf:"bytes,4,opt,name=checksummed_data,json=checksummedData,proto3,oneof"` -} - -type InsertObjectRequest_Reference struct { - // A reference to an existing object. This can be used to support - // several use cases: - // - Writing a sequence of data buffers supports the basic use case of - // uploading a complete object, chunk by chunk. - // - Writing a sequence of references to existing objects allows an - // object to be composed from a collection of objects, which can be - // used to support parallel object writes. - // - Writing a single reference with a given offset and size can be used - // to create an object from a slice of an existing object. - // - Writing an object referencing a object slice (created as noted - // above) followed by a data buffer followed by another object - // slice can be used to support delta upload functionality. - Reference *GetObjectMediaRequest `protobuf:"bytes,5,opt,name=reference,proto3,oneof"` -} - -func (*InsertObjectRequest_ChecksummedData) isInsertObjectRequest_Data() {} - -func (*InsertObjectRequest_Reference) isInsertObjectRequest_Data() {} - -// Request message for ListObjects. -type ListObjectsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket in which to look for objects. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Returns results in a directory-like mode. `items` will contain - // only objects whose names, aside from the `prefix`, do not - // contain `delimiter`. Objects whose names, aside from the - // `prefix`, contain `delimiter` will have their name, - // truncated after the `delimiter`, returned in - // `prefixes`. Duplicate `prefixes` are omitted. - Delimiter string `protobuf:"bytes,2,opt,name=delimiter,proto3" json:"delimiter,omitempty"` - // If true, objects that end in exactly one instance of `delimiter` - // will have their metadata included in `items` in addition to - // `prefixes`. - IncludeTrailingDelimiter bool `protobuf:"varint,3,opt,name=include_trailing_delimiter,json=includeTrailingDelimiter,proto3" json:"include_trailing_delimiter,omitempty"` - // Maximum number of `items` plus `prefixes` to return - // in a single page of responses. As duplicate `prefixes` are - // omitted, fewer total results may be returned than requested. The service - // will use this parameter or 1,000 items, whichever is smaller. - MaxResults int32 `protobuf:"varint,4,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` - // A previously-returned page token representing part of the larger set of - // results to view. - PageToken string `protobuf:"bytes,5,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` - // Filter results to objects whose names begin with this prefix. - Prefix string `protobuf:"bytes,6,opt,name=prefix,proto3" json:"prefix,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`. - Projection CommonEnums_Projection `protobuf:"varint,7,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // If `true`, lists all versions of an object as distinct results. - // The default is `false`. For more information, see - // [Object - // Versioning](https://cloud.google.com/storage/docs/object-versioning). - Versions bool `protobuf:"varint,9,opt,name=versions,proto3" json:"versions,omitempty"` - // Filter results to objects whose names are lexicographically equal to or - // after lexicographic_start. If lexicographic_end is also set, the objects - // listed have names between lexicographic_start (inclusive) and - // lexicographic_end (exclusive). - LexicographicStart string `protobuf:"bytes,11,opt,name=lexicographic_start,json=lexicographicStart,proto3" json:"lexicographic_start,omitempty"` - // Filter results to objects whose names are lexicographically before - // lexicographic_end. If lexicographic_start is also set, the objects listed - // have names between lexicographic_start (inclusive) and lexicographic_end - // (exclusive). - LexicographicEnd string `protobuf:"bytes,12,opt,name=lexicographic_end,json=lexicographicEnd,proto3" json:"lexicographic_end,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,10,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListObjectsRequest) Reset() { - *x = ListObjectsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListObjectsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListObjectsRequest) ProtoMessage() {} - -func (x *ListObjectsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[42] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListObjectsRequest.ProtoReflect.Descriptor instead. -func (*ListObjectsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{42} -} - -func (x *ListObjectsRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *ListObjectsRequest) GetDelimiter() string { - if x != nil { - return x.Delimiter - } - return "" -} - -func (x *ListObjectsRequest) GetIncludeTrailingDelimiter() bool { - if x != nil { - return x.IncludeTrailingDelimiter - } - return false -} - -func (x *ListObjectsRequest) GetMaxResults() int32 { - if x != nil { - return x.MaxResults - } - return 0 -} - -func (x *ListObjectsRequest) GetPageToken() string { - if x != nil { - return x.PageToken - } - return "" -} - -func (x *ListObjectsRequest) GetPrefix() string { - if x != nil { - return x.Prefix - } - return "" -} - -func (x *ListObjectsRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *ListObjectsRequest) GetVersions() bool { - if x != nil { - return x.Versions - } - return false -} - -func (x *ListObjectsRequest) GetLexicographicStart() string { - if x != nil { - return x.LexicographicStart - } - return "" -} - -func (x *ListObjectsRequest) GetLexicographicEnd() string { - if x != nil { - return x.LexicographicEnd - } - return "" -} - -func (x *ListObjectsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request object for `QueryWriteStatus`. -type QueryWriteStatusRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The name of the resume token for the object whose write status is being - // requested. - UploadId string `protobuf:"bytes,1,opt,name=upload_id,json=uploadId,proto3" json:"upload_id,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,2,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *QueryWriteStatusRequest) Reset() { - *x = QueryWriteStatusRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryWriteStatusRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryWriteStatusRequest) ProtoMessage() {} - -func (x *QueryWriteStatusRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[43] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use QueryWriteStatusRequest.ProtoReflect.Descriptor instead. -func (*QueryWriteStatusRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{43} -} - -func (x *QueryWriteStatusRequest) GetUploadId() string { - if x != nil { - return x.UploadId - } - return "" -} - -func (x *QueryWriteStatusRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *QueryWriteStatusRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Response object for `QueryWriteStatus`. -type QueryWriteStatusResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The number of bytes that have been processed for the given object. - CommittedSize int64 `protobuf:"varint,1,opt,name=committed_size,json=committedSize,proto3" json:"committed_size,omitempty"` - // `complete` is `true` only if the client has sent a `InsertObjectRequest` - // with `finish_write` set to true, and the server has processed that request. - Complete bool `protobuf:"varint,2,opt,name=complete,proto3" json:"complete,omitempty"` - // The metadata for the uploaded object. Only set if `complete` is `true`. - Resource *Object `protobuf:"bytes,3,opt,name=resource,proto3" json:"resource,omitempty"` -} - -func (x *QueryWriteStatusResponse) Reset() { - *x = QueryWriteStatusResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *QueryWriteStatusResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*QueryWriteStatusResponse) ProtoMessage() {} - -func (x *QueryWriteStatusResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[44] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use QueryWriteStatusResponse.ProtoReflect.Descriptor instead. -func (*QueryWriteStatusResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{44} -} - -func (x *QueryWriteStatusResponse) GetCommittedSize() int64 { - if x != nil { - return x.CommittedSize - } - return 0 -} - -func (x *QueryWriteStatusResponse) GetComplete() bool { - if x != nil { - return x.Complete - } - return false -} - -func (x *QueryWriteStatusResponse) GetResource() *Object { - if x != nil { - return x.Resource - } - return nil -} - -// Request message for RewriteObject. -type RewriteObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket in which to store the new object. Overrides the provided - // object metadata's `bucket` value, if any. - DestinationBucket string `protobuf:"bytes,1,opt,name=destination_bucket,json=destinationBucket,proto3" json:"destination_bucket,omitempty"` - // Required. Name of the new object. - // Required when the object metadata is not otherwise provided. Overrides the - // object metadata's `name` value, if any. - DestinationObject string `protobuf:"bytes,2,opt,name=destination_object,json=destinationObject,proto3" json:"destination_object,omitempty"` - // Resource name of the Cloud KMS key, of the form - // `projects/my-project/locations/my-location/keyRings/my-kr/cryptoKeys/my-key`, - // that will be used to encrypt the object. Overrides the object - // metadata's `kms_key_name` value, if any. - DestinationKmsKeyName string `protobuf:"bytes,3,opt,name=destination_kms_key_name,json=destinationKmsKeyName,proto3" json:"destination_kms_key_name,omitempty"` - // Apply a predefined set of access controls to the destination object. - DestinationPredefinedAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,4,opt,name=destination_predefined_acl,json=destinationPredefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"destination_predefined_acl,omitempty"` - // Makes the operation conditional on whether the object's current generation - // matches the given value. Setting to 0 makes the operation succeed only if - // there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current generation - // does not match the given value. If no live object exists, the precondition - // fails. Setting to 0 makes the operation succeed only if there is a live - // version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the destination object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,7,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the destination object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,8,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // generation matches the given value. - IfSourceGenerationMatch *wrappers.Int64Value `protobuf:"bytes,9,opt,name=if_source_generation_match,json=ifSourceGenerationMatch,proto3" json:"if_source_generation_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // generation does not match the given value. - IfSourceGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,10,opt,name=if_source_generation_not_match,json=ifSourceGenerationNotMatch,proto3" json:"if_source_generation_not_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // metageneration matches the given value. - IfSourceMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,11,opt,name=if_source_metageneration_match,json=ifSourceMetagenerationMatch,proto3" json:"if_source_metageneration_match,omitempty"` - // Makes the operation conditional on whether the source object's current - // metageneration does not match the given value. - IfSourceMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,12,opt,name=if_source_metageneration_not_match,json=ifSourceMetagenerationNotMatch,proto3" json:"if_source_metageneration_not_match,omitempty"` - // The maximum number of bytes that will be rewritten per rewrite request. - // Most callers - // shouldn't need to specify this parameter - it is primarily in place to - // support testing. If specified the value must be an integral multiple of - // 1 MiB (1048576). Also, this only applies to requests where the source and - // destination span locations and/or storage classes. Finally, this value must - // not change across rewrite calls else you'll get an error that the - // `rewriteToken` is invalid. - MaxBytesRewrittenPerCall int64 `protobuf:"varint,13,opt,name=max_bytes_rewritten_per_call,json=maxBytesRewrittenPerCall,proto3" json:"max_bytes_rewritten_per_call,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`, unless the - // object resource specifies the `acl` property, when it defaults - // to `full`. - Projection CommonEnums_Projection `protobuf:"varint,14,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // Include this field (from the previous rewrite response) on each rewrite - // request after the first one, until the rewrite response 'done' flag is - // true. Calls that provide a rewriteToken can omit all other request fields, - // but if included those fields must match the values provided in the first - // rewrite request. - RewriteToken string `protobuf:"bytes,15,opt,name=rewrite_token,json=rewriteToken,proto3" json:"rewrite_token,omitempty"` - // Required. Name of the bucket in which to find the source object. - SourceBucket string `protobuf:"bytes,16,opt,name=source_bucket,json=sourceBucket,proto3" json:"source_bucket,omitempty"` - // Required. Name of the source object. - SourceObject string `protobuf:"bytes,17,opt,name=source_object,json=sourceObject,proto3" json:"source_object,omitempty"` - // If present, selects a specific revision of the source object (as opposed to - // the latest version, the default). - SourceGeneration int64 `protobuf:"varint,18,opt,name=source_generation,json=sourceGeneration,proto3" json:"source_generation,omitempty"` - // Properties of the destination, post-rewrite object. - Object *Object `protobuf:"bytes,20,opt,name=object,proto3" json:"object,omitempty"` - // The algorithm used to encrypt the source object, if any. - CopySourceEncryptionAlgorithm string `protobuf:"bytes,21,opt,name=copy_source_encryption_algorithm,json=copySourceEncryptionAlgorithm,proto3" json:"copy_source_encryption_algorithm,omitempty"` - // The encryption key used to encrypt the source object, if any. - CopySourceEncryptionKey string `protobuf:"bytes,22,opt,name=copy_source_encryption_key,json=copySourceEncryptionKey,proto3" json:"copy_source_encryption_key,omitempty"` - // The SHA-256 hash of the key used to encrypt the source object, if any. - CopySourceEncryptionKeySha256 string `protobuf:"bytes,23,opt,name=copy_source_encryption_key_sha256,json=copySourceEncryptionKeySha256,proto3" json:"copy_source_encryption_key_sha256,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,24,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,25,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *RewriteObjectRequest) Reset() { - *x = RewriteObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RewriteObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RewriteObjectRequest) ProtoMessage() {} - -func (x *RewriteObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[45] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use RewriteObjectRequest.ProtoReflect.Descriptor instead. -func (*RewriteObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{45} -} - -func (x *RewriteObjectRequest) GetDestinationBucket() string { - if x != nil { - return x.DestinationBucket - } - return "" -} - -func (x *RewriteObjectRequest) GetDestinationObject() string { - if x != nil { - return x.DestinationObject - } - return "" -} - -func (x *RewriteObjectRequest) GetDestinationKmsKeyName() string { - if x != nil { - return x.DestinationKmsKeyName - } - return "" -} - -func (x *RewriteObjectRequest) GetDestinationPredefinedAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.DestinationPredefinedAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *RewriteObjectRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetIfSourceGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceGenerationMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetIfSourceGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceGenerationNotMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetIfSourceMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceMetagenerationMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetIfSourceMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfSourceMetagenerationNotMatch - } - return nil -} - -func (x *RewriteObjectRequest) GetMaxBytesRewrittenPerCall() int64 { - if x != nil { - return x.MaxBytesRewrittenPerCall - } - return 0 -} - -func (x *RewriteObjectRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *RewriteObjectRequest) GetRewriteToken() string { - if x != nil { - return x.RewriteToken - } - return "" -} - -func (x *RewriteObjectRequest) GetSourceBucket() string { - if x != nil { - return x.SourceBucket - } - return "" -} - -func (x *RewriteObjectRequest) GetSourceObject() string { - if x != nil { - return x.SourceObject - } - return "" -} - -func (x *RewriteObjectRequest) GetSourceGeneration() int64 { - if x != nil { - return x.SourceGeneration - } - return 0 -} - -func (x *RewriteObjectRequest) GetObject() *Object { - if x != nil { - return x.Object - } - return nil -} - -func (x *RewriteObjectRequest) GetCopySourceEncryptionAlgorithm() string { - if x != nil { - return x.CopySourceEncryptionAlgorithm - } - return "" -} - -func (x *RewriteObjectRequest) GetCopySourceEncryptionKey() string { - if x != nil { - return x.CopySourceEncryptionKey - } - return "" -} - -func (x *RewriteObjectRequest) GetCopySourceEncryptionKeySha256() string { - if x != nil { - return x.CopySourceEncryptionKeySha256 - } - return "" -} - -func (x *RewriteObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *RewriteObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// A rewrite response. -type RewriteResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The total bytes written so far, which can be used to provide a waiting user - // with a progress indicator. This property is always present in the response. - TotalBytesRewritten int64 `protobuf:"varint,1,opt,name=total_bytes_rewritten,json=totalBytesRewritten,proto3" json:"total_bytes_rewritten,omitempty"` - // The total size of the object being copied in bytes. This property is always - // present in the response. - ObjectSize int64 `protobuf:"varint,2,opt,name=object_size,json=objectSize,proto3" json:"object_size,omitempty"` - // `true` if the copy is finished; otherwise, `false` if - // the copy is in progress. This property is always present in the response. - Done bool `protobuf:"varint,3,opt,name=done,proto3" json:"done,omitempty"` - // A token to use in subsequent requests to continue copying data. This token - // is present in the response only when there is more data to copy. - RewriteToken string `protobuf:"bytes,4,opt,name=rewrite_token,json=rewriteToken,proto3" json:"rewrite_token,omitempty"` - // A resource containing the metadata for the copied-to object. This property - // is present in the response only when copying completes. - Resource *Object `protobuf:"bytes,5,opt,name=resource,proto3" json:"resource,omitempty"` -} - -func (x *RewriteResponse) Reset() { - *x = RewriteResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *RewriteResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*RewriteResponse) ProtoMessage() {} - -func (x *RewriteResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[46] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use RewriteResponse.ProtoReflect.Descriptor instead. -func (*RewriteResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{46} -} - -func (x *RewriteResponse) GetTotalBytesRewritten() int64 { - if x != nil { - return x.TotalBytesRewritten - } - return 0 -} - -func (x *RewriteResponse) GetObjectSize() int64 { - if x != nil { - return x.ObjectSize - } - return 0 -} - -func (x *RewriteResponse) GetDone() bool { - if x != nil { - return x.Done - } - return false -} - -func (x *RewriteResponse) GetRewriteToken() string { - if x != nil { - return x.RewriteToken - } - return "" -} - -func (x *RewriteResponse) GetResource() *Object { - if x != nil { - return x.Resource - } - return nil -} - -// Request message StartResumableWrite. -type StartResumableWriteRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The destination bucket, object, and metadata, as well as any preconditions. - InsertObjectSpec *InsertObjectSpec `protobuf:"bytes,1,opt,name=insert_object_spec,json=insertObjectSpec,proto3" json:"insert_object_spec,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,3,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,4,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *StartResumableWriteRequest) Reset() { - *x = StartResumableWriteRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StartResumableWriteRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StartResumableWriteRequest) ProtoMessage() {} - -func (x *StartResumableWriteRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[47] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StartResumableWriteRequest.ProtoReflect.Descriptor instead. -func (*StartResumableWriteRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{47} -} - -func (x *StartResumableWriteRequest) GetInsertObjectSpec() *InsertObjectSpec { - if x != nil { - return x.InsertObjectSpec - } - return nil -} - -func (x *StartResumableWriteRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *StartResumableWriteRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Response object for `StartResumableWrite`. -type StartResumableWriteResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The upload_id of the newly started resumable write operation. This - // value should be copied into the `InsertObjectRequest.upload_id` field. - UploadId string `protobuf:"bytes,1,opt,name=upload_id,json=uploadId,proto3" json:"upload_id,omitempty"` -} - -func (x *StartResumableWriteResponse) Reset() { - *x = StartResumableWriteResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *StartResumableWriteResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*StartResumableWriteResponse) ProtoMessage() {} - -func (x *StartResumableWriteResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[48] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use StartResumableWriteResponse.ProtoReflect.Descriptor instead. -func (*StartResumableWriteResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{48} -} - -func (x *StartResumableWriteResponse) GetUploadId() string { - if x != nil { - return x.UploadId - } - return "" -} - -// Request message for PatchObject. -type PatchObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket in which the object resides. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. Name of the object. - Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"` - // Makes the operation conditional on whether the object's current generation - // matches the given value. Setting to 0 makes the operation succeed only if - // there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current generation - // does not match the given value. If no live object exists, the precondition - // fails. Setting to 0 makes the operation succeed only if there is a live - // version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,7,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Apply a predefined set of access controls to this object. - PredefinedAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,8,opt,name=predefined_acl,json=predefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"predefined_acl,omitempty"` - // Set of properties to return. Defaults to `FULL`. - Projection CommonEnums_Projection `protobuf:"varint,9,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // The Object metadata for updating. - Metadata *Object `protobuf:"bytes,11,opt,name=metadata,proto3" json:"metadata,omitempty"` - // List of fields to be updated. - // - // To specify ALL fields, equivalent to the JSON API's "update" function, - // specify a single field with the value `*`. Note: not recommended. If a new - // field is introduced at a later time, an older client updating with the `*` - // may accidentally reset the new field's value. - // - // Not specifying any fields is an error. - // Not specifying a field while setting that field to a non-default value is - // an error. - UpdateMask *field_mask.FieldMask `protobuf:"bytes,12,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,13,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,14,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *PatchObjectRequest) Reset() { - *x = PatchObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *PatchObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*PatchObjectRequest) ProtoMessage() {} - -func (x *PatchObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[49] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use PatchObjectRequest.ProtoReflect.Descriptor instead. -func (*PatchObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{49} -} - -func (x *PatchObjectRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *PatchObjectRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *PatchObjectRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *PatchObjectRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *PatchObjectRequest) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *PatchObjectRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *PatchObjectRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *PatchObjectRequest) GetPredefinedAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.PredefinedAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *PatchObjectRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *PatchObjectRequest) GetMetadata() *Object { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *PatchObjectRequest) GetUpdateMask() *field_mask.FieldMask { - if x != nil { - return x.UpdateMask - } - return nil -} - -func (x *PatchObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *PatchObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for UpdateObject. -type UpdateObjectRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Name of the bucket in which the object resides. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // Required. Name of the object. - Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"` - // If present, selects a specific revision of this object (as opposed to the - // latest version, the default). - Generation int64 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"` - // Makes the operation conditional on whether the object's current generation - // matches the given value. Setting to 0 makes the operation succeed only if - // there are no live versions of the object. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` - // Makes the operation conditional on whether the object's current generation - // does not match the given value. If no live object exists, the precondition - // fails. Setting to 0 makes the operation succeed only if there is a live - // version of the object. - IfGenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,5,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3" json:"if_generation_not_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration matches the given value. - IfMetagenerationMatch *wrappers.Int64Value `protobuf:"bytes,6,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3" json:"if_metageneration_match,omitempty"` - // Makes the operation conditional on whether the object's current - // metageneration does not match the given value. - IfMetagenerationNotMatch *wrappers.Int64Value `protobuf:"bytes,7,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3" json:"if_metageneration_not_match,omitempty"` - // Apply a predefined set of access controls to this object. - PredefinedAcl CommonEnums_PredefinedObjectAcl `protobuf:"varint,8,opt,name=predefined_acl,json=predefinedAcl,proto3,enum=google.storage.v1.CommonEnums_PredefinedObjectAcl" json:"predefined_acl,omitempty"` - // Set of properties to return. Defaults to `FULL`. - Projection CommonEnums_Projection `protobuf:"varint,9,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // The Object metadata for updating. - Metadata *Object `protobuf:"bytes,11,opt,name=metadata,proto3" json:"metadata,omitempty"` - // A set of parameters common to Storage API requests concerning an object. - CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,12,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,13,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *UpdateObjectRequest) Reset() { - *x = UpdateObjectRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[50] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateObjectRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateObjectRequest) ProtoMessage() {} - -func (x *UpdateObjectRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[50] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateObjectRequest.ProtoReflect.Descriptor instead. -func (*UpdateObjectRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{50} -} - -func (x *UpdateObjectRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *UpdateObjectRequest) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *UpdateObjectRequest) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *UpdateObjectRequest) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -func (x *UpdateObjectRequest) GetIfGenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationNotMatch - } - return nil -} - -func (x *UpdateObjectRequest) GetIfMetagenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationMatch - } - return nil -} - -func (x *UpdateObjectRequest) GetIfMetagenerationNotMatch() *wrappers.Int64Value { - if x != nil { - return x.IfMetagenerationNotMatch - } - return nil -} - -func (x *UpdateObjectRequest) GetPredefinedAcl() CommonEnums_PredefinedObjectAcl { - if x != nil { - return x.PredefinedAcl - } - return CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED -} - -func (x *UpdateObjectRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *UpdateObjectRequest) GetMetadata() *Object { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *UpdateObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams { - if x != nil { - return x.CommonObjectRequestParams - } - return nil -} - -func (x *UpdateObjectRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for WatchAllObjects. -type WatchAllObjectsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Name of the bucket in which to look for objects. - Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"` - // If `true`, lists all versions of an object as distinct results. - // The default is `false`. For more information, see - // [Object - // Versioning](https://cloud.google.com/storage/docs/object-versioning). - Versions bool `protobuf:"varint,2,opt,name=versions,proto3" json:"versions,omitempty"` - // Returns results in a directory-like mode. `items` will contain - // only objects whose names, aside from the `prefix`, do not - // contain `delimiter`. Objects whose names, aside from the - // `prefix`, contain `delimiter` will have their name, - // truncated after the `delimiter`, returned in - // `prefixes`. Duplicate `prefixes` are omitted. - Delimiter string `protobuf:"bytes,3,opt,name=delimiter,proto3" json:"delimiter,omitempty"` - // Maximum number of `items` plus `prefixes` to return - // in a single page of responses. As duplicate `prefixes` are - // omitted, fewer total results may be returned than requested. The service - // will use this parameter or 1,000 items, whichever is smaller. - MaxResults int32 `protobuf:"varint,4,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` - // Filter results to objects whose names begin with this prefix. - Prefix string `protobuf:"bytes,5,opt,name=prefix,proto3" json:"prefix,omitempty"` - // If true, objects that end in exactly one instance of `delimiter` - // will have their metadata included in `items` in addition to - // `prefixes`. - IncludeTrailingDelimiter bool `protobuf:"varint,6,opt,name=include_trailing_delimiter,json=includeTrailingDelimiter,proto3" json:"include_trailing_delimiter,omitempty"` - // A previously-returned page token representing part of the larger set of - // results to view. - PageToken string `protobuf:"bytes,7,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` - // Set of properties to return. Defaults to `NO_ACL`. - Projection CommonEnums_Projection `protobuf:"varint,8,opt,name=projection,proto3,enum=google.storage.v1.CommonEnums_Projection" json:"projection,omitempty"` - // Properties of the channel to be inserted. - Channel *Channel `protobuf:"bytes,10,opt,name=channel,proto3" json:"channel,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,11,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *WatchAllObjectsRequest) Reset() { - *x = WatchAllObjectsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[51] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *WatchAllObjectsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*WatchAllObjectsRequest) ProtoMessage() {} - -func (x *WatchAllObjectsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[51] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use WatchAllObjectsRequest.ProtoReflect.Descriptor instead. -func (*WatchAllObjectsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{51} -} - -func (x *WatchAllObjectsRequest) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *WatchAllObjectsRequest) GetVersions() bool { - if x != nil { - return x.Versions - } - return false -} - -func (x *WatchAllObjectsRequest) GetDelimiter() string { - if x != nil { - return x.Delimiter - } - return "" -} - -func (x *WatchAllObjectsRequest) GetMaxResults() int32 { - if x != nil { - return x.MaxResults - } - return 0 -} - -func (x *WatchAllObjectsRequest) GetPrefix() string { - if x != nil { - return x.Prefix - } - return "" -} - -func (x *WatchAllObjectsRequest) GetIncludeTrailingDelimiter() bool { - if x != nil { - return x.IncludeTrailingDelimiter - } - return false -} - -func (x *WatchAllObjectsRequest) GetPageToken() string { - if x != nil { - return x.PageToken - } - return "" -} - -func (x *WatchAllObjectsRequest) GetProjection() CommonEnums_Projection { - if x != nil { - return x.Projection - } - return CommonEnums_PROJECTION_UNSPECIFIED -} - -func (x *WatchAllObjectsRequest) GetChannel() *Channel { - if x != nil { - return x.Channel - } - return nil -} - -func (x *WatchAllObjectsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request message for GetProjectServiceAccount. -type GetProjectServiceAccountRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Project ID. - ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetProjectServiceAccountRequest) Reset() { - *x = GetProjectServiceAccountRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[52] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetProjectServiceAccountRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetProjectServiceAccountRequest) ProtoMessage() {} - -func (x *GetProjectServiceAccountRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[52] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetProjectServiceAccountRequest.ProtoReflect.Descriptor instead. -func (*GetProjectServiceAccountRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{52} -} - -func (x *GetProjectServiceAccountRequest) GetProjectId() string { - if x != nil { - return x.ProjectId - } - return "" -} - -func (x *GetProjectServiceAccountRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -type CreateHmacKeyRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The project that the HMAC-owning service account lives in. - ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` - // Required. The service account to create the HMAC for. - ServiceAccountEmail string `protobuf:"bytes,2,opt,name=service_account_email,json=serviceAccountEmail,proto3" json:"service_account_email,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *CreateHmacKeyRequest) Reset() { - *x = CreateHmacKeyRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[53] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateHmacKeyRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateHmacKeyRequest) ProtoMessage() {} - -func (x *CreateHmacKeyRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[53] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateHmacKeyRequest.ProtoReflect.Descriptor instead. -func (*CreateHmacKeyRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{53} -} - -func (x *CreateHmacKeyRequest) GetProjectId() string { - if x != nil { - return x.ProjectId - } - return "" -} - -func (x *CreateHmacKeyRequest) GetServiceAccountEmail() string { - if x != nil { - return x.ServiceAccountEmail - } - return "" -} - -func (x *CreateHmacKeyRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Create hmac response. The only time the secret for an HMAC will be returned. -type CreateHmacKeyResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Key metadata. - Metadata *HmacKeyMetadata `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - // HMAC key secret material. - Secret string `protobuf:"bytes,2,opt,name=secret,proto3" json:"secret,omitempty"` -} - -func (x *CreateHmacKeyResponse) Reset() { - *x = CreateHmacKeyResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[54] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CreateHmacKeyResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CreateHmacKeyResponse) ProtoMessage() {} - -func (x *CreateHmacKeyResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[54] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CreateHmacKeyResponse.ProtoReflect.Descriptor instead. -func (*CreateHmacKeyResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{54} -} - -func (x *CreateHmacKeyResponse) GetMetadata() *HmacKeyMetadata { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *CreateHmacKeyResponse) GetSecret() string { - if x != nil { - return x.Secret - } - return "" -} - -// Request object to delete a given HMAC key. -type DeleteHmacKeyRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The identifying key for the HMAC to delete. - AccessId string `protobuf:"bytes,1,opt,name=access_id,json=accessId,proto3" json:"access_id,omitempty"` - // Required. The project id the HMAC key lies in. - ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *DeleteHmacKeyRequest) Reset() { - *x = DeleteHmacKeyRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[55] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *DeleteHmacKeyRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*DeleteHmacKeyRequest) ProtoMessage() {} - -func (x *DeleteHmacKeyRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[55] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use DeleteHmacKeyRequest.ProtoReflect.Descriptor instead. -func (*DeleteHmacKeyRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{55} -} - -func (x *DeleteHmacKeyRequest) GetAccessId() string { - if x != nil { - return x.AccessId - } - return "" -} - -func (x *DeleteHmacKeyRequest) GetProjectId() string { - if x != nil { - return x.ProjectId - } - return "" -} - -func (x *DeleteHmacKeyRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request object to get metadata on a given HMAC key. -type GetHmacKeyRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The identifying key for the HMAC to delete. - AccessId string `protobuf:"bytes,1,opt,name=access_id,json=accessId,proto3" json:"access_id,omitempty"` - // Required. The project id the HMAC key lies in. - ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,3,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetHmacKeyRequest) Reset() { - *x = GetHmacKeyRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[56] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetHmacKeyRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetHmacKeyRequest) ProtoMessage() {} - -func (x *GetHmacKeyRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[56] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetHmacKeyRequest.ProtoReflect.Descriptor instead. -func (*GetHmacKeyRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{56} -} - -func (x *GetHmacKeyRequest) GetAccessId() string { - if x != nil { - return x.AccessId - } - return "" -} - -func (x *GetHmacKeyRequest) GetProjectId() string { - if x != nil { - return x.ProjectId - } - return "" -} - -func (x *GetHmacKeyRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Request to fetch a list of HMAC keys under a given project. -type ListHmacKeysRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The project id to list HMAC keys for. - ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` - // An optional filter to only return HMAC keys for one service account. - ServiceAccountEmail string `protobuf:"bytes,2,opt,name=service_account_email,json=serviceAccountEmail,proto3" json:"service_account_email,omitempty"` - // An optional bool to return deleted keys that have not been wiped out yet. - ShowDeletedKeys bool `protobuf:"varint,3,opt,name=show_deleted_keys,json=showDeletedKeys,proto3" json:"show_deleted_keys,omitempty"` - // The maximum number of keys to return. - MaxResults int32 `protobuf:"varint,4,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` - // A previously returned token from ListHmacKeysResponse to get the next page. - PageToken string `protobuf:"bytes,5,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,6,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *ListHmacKeysRequest) Reset() { - *x = ListHmacKeysRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[57] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListHmacKeysRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListHmacKeysRequest) ProtoMessage() {} - -func (x *ListHmacKeysRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[57] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListHmacKeysRequest.ProtoReflect.Descriptor instead. -func (*ListHmacKeysRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{57} -} - -func (x *ListHmacKeysRequest) GetProjectId() string { - if x != nil { - return x.ProjectId - } - return "" -} - -func (x *ListHmacKeysRequest) GetServiceAccountEmail() string { - if x != nil { - return x.ServiceAccountEmail - } - return "" -} - -func (x *ListHmacKeysRequest) GetShowDeletedKeys() bool { - if x != nil { - return x.ShowDeletedKeys - } - return false -} - -func (x *ListHmacKeysRequest) GetMaxResults() int32 { - if x != nil { - return x.MaxResults - } - return 0 -} - -func (x *ListHmacKeysRequest) GetPageToken() string { - if x != nil { - return x.PageToken - } - return "" -} - -func (x *ListHmacKeysRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Hmac key list response with next page information. -type ListHmacKeysResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The continuation token, used to page through large result sets. Provide - // this value in a subsequent request to return the next page of results. - NextPageToken string `protobuf:"bytes,1,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` - // The list of items. - Items []*HmacKeyMetadata `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"` -} - -func (x *ListHmacKeysResponse) Reset() { - *x = ListHmacKeysResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[58] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListHmacKeysResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListHmacKeysResponse) ProtoMessage() {} - -func (x *ListHmacKeysResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[58] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListHmacKeysResponse.ProtoReflect.Descriptor instead. -func (*ListHmacKeysResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{58} -} - -func (x *ListHmacKeysResponse) GetNextPageToken() string { - if x != nil { - return x.NextPageToken - } - return "" -} - -func (x *ListHmacKeysResponse) GetItems() []*HmacKeyMetadata { - if x != nil { - return x.Items - } - return nil -} - -// Request object to update an HMAC key state. -type UpdateHmacKeyRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. The id of the HMAC key. - AccessId string `protobuf:"bytes,1,opt,name=access_id,json=accessId,proto3" json:"access_id,omitempty"` - // Required. The project id the HMAC's service account lies in. - ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` - // Required. The service account owner of the HMAC key. - Metadata *HmacKeyMetadata `protobuf:"bytes,3,opt,name=metadata,proto3" json:"metadata,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,5,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *UpdateHmacKeyRequest) Reset() { - *x = UpdateHmacKeyRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[59] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *UpdateHmacKeyRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*UpdateHmacKeyRequest) ProtoMessage() {} - -func (x *UpdateHmacKeyRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[59] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use UpdateHmacKeyRequest.ProtoReflect.Descriptor instead. -func (*UpdateHmacKeyRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{59} -} - -func (x *UpdateHmacKeyRequest) GetAccessId() string { - if x != nil { - return x.AccessId - } - return "" -} - -func (x *UpdateHmacKeyRequest) GetProjectId() string { - if x != nil { - return x.ProjectId - } - return "" -} - -func (x *UpdateHmacKeyRequest) GetMetadata() *HmacKeyMetadata { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *UpdateHmacKeyRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// A wrapper around the IAM get policy request to support our -// common_request_params. -type GetIamPolicyRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The request sent to IAM. - IamRequest *v1.GetIamPolicyRequest `protobuf:"bytes,1,opt,name=iam_request,json=iamRequest,proto3" json:"iam_request,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,2,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *GetIamPolicyRequest) Reset() { - *x = GetIamPolicyRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[60] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *GetIamPolicyRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*GetIamPolicyRequest) ProtoMessage() {} - -func (x *GetIamPolicyRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[60] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use GetIamPolicyRequest.ProtoReflect.Descriptor instead. -func (*GetIamPolicyRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{60} -} - -func (x *GetIamPolicyRequest) GetIamRequest() *v1.GetIamPolicyRequest { - if x != nil { - return x.IamRequest - } - return nil -} - -func (x *GetIamPolicyRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// A wrapper around the IAM set policy request to support our -// common_request_params. -type SetIamPolicyRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The request sent to IAM. - IamRequest *v1.SetIamPolicyRequest `protobuf:"bytes,1,opt,name=iam_request,json=iamRequest,proto3" json:"iam_request,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,2,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *SetIamPolicyRequest) Reset() { - *x = SetIamPolicyRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[61] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *SetIamPolicyRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*SetIamPolicyRequest) ProtoMessage() {} - -func (x *SetIamPolicyRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[61] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use SetIamPolicyRequest.ProtoReflect.Descriptor instead. -func (*SetIamPolicyRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{61} -} - -func (x *SetIamPolicyRequest) GetIamRequest() *v1.SetIamPolicyRequest { - if x != nil { - return x.IamRequest - } - return nil -} - -func (x *SetIamPolicyRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// A wrapper around the IAM test iam permissions request to support our -// common_request_params. -type TestIamPermissionsRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The request sent to IAM. - IamRequest *v1.TestIamPermissionsRequest `protobuf:"bytes,1,opt,name=iam_request,json=iamRequest,proto3" json:"iam_request,omitempty"` - // A set of parameters common to all Storage API requests. - CommonRequestParams *CommonRequestParams `protobuf:"bytes,2,opt,name=common_request_params,json=commonRequestParams,proto3" json:"common_request_params,omitempty"` -} - -func (x *TestIamPermissionsRequest) Reset() { - *x = TestIamPermissionsRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[62] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *TestIamPermissionsRequest) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*TestIamPermissionsRequest) ProtoMessage() {} - -func (x *TestIamPermissionsRequest) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[62] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use TestIamPermissionsRequest.ProtoReflect.Descriptor instead. -func (*TestIamPermissionsRequest) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{62} -} - -func (x *TestIamPermissionsRequest) GetIamRequest() *v1.TestIamPermissionsRequest { - if x != nil { - return x.IamRequest - } - return nil -} - -func (x *TestIamPermissionsRequest) GetCommonRequestParams() *CommonRequestParams { - if x != nil { - return x.CommonRequestParams - } - return nil -} - -// Parameters that can be passed to any object request. -type CommonObjectRequestParams struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Encryption algorithm used with Customer-Supplied Encryption Keys feature. - EncryptionAlgorithm string `protobuf:"bytes,1,opt,name=encryption_algorithm,json=encryptionAlgorithm,proto3" json:"encryption_algorithm,omitempty"` - // Encryption key used with Customer-Supplied Encryption Keys feature. - EncryptionKey string `protobuf:"bytes,2,opt,name=encryption_key,json=encryptionKey,proto3" json:"encryption_key,omitempty"` - // SHA256 hash of encryption key used with Customer-Supplied Encryption Keys - // feature. - EncryptionKeySha256 string `protobuf:"bytes,3,opt,name=encryption_key_sha256,json=encryptionKeySha256,proto3" json:"encryption_key_sha256,omitempty"` -} - -func (x *CommonObjectRequestParams) Reset() { - *x = CommonObjectRequestParams{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[63] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CommonObjectRequestParams) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CommonObjectRequestParams) ProtoMessage() {} - -func (x *CommonObjectRequestParams) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[63] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CommonObjectRequestParams.ProtoReflect.Descriptor instead. -func (*CommonObjectRequestParams) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{63} -} - -func (x *CommonObjectRequestParams) GetEncryptionAlgorithm() string { - if x != nil { - return x.EncryptionAlgorithm - } - return "" -} - -func (x *CommonObjectRequestParams) GetEncryptionKey() string { - if x != nil { - return x.EncryptionKey - } - return "" -} - -func (x *CommonObjectRequestParams) GetEncryptionKeySha256() string { - if x != nil { - return x.EncryptionKeySha256 - } - return "" -} - -// Parameters that can be passed to any request. -type CommonRequestParams struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Required. Required when using buckets with Requestor Pays feature enabled. - UserProject string `protobuf:"bytes,1,opt,name=user_project,json=userProject,proto3" json:"user_project,omitempty"` - // Lets you enforce per-user quotas from a server-side application even in - // cases when the user's IP address is unknown. This can occur, for example, - // with applications that run cron jobs on App Engine on a user's behalf. - // You can choose any arbitrary string that uniquely identifies a user, but it - // is limited to 40 characters. - QuotaUser string `protobuf:"bytes,2,opt,name=quota_user,json=quotaUser,proto3" json:"quota_user,omitempty"` - // Subset of fields to include in the response. - Fields *field_mask.FieldMask `protobuf:"bytes,4,opt,name=fields,proto3" json:"fields,omitempty"` -} - -func (x *CommonRequestParams) Reset() { - *x = CommonRequestParams{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[64] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CommonRequestParams) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CommonRequestParams) ProtoMessage() {} - -func (x *CommonRequestParams) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[64] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CommonRequestParams.ProtoReflect.Descriptor instead. -func (*CommonRequestParams) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{64} -} - -func (x *CommonRequestParams) GetUserProject() string { - if x != nil { - return x.UserProject - } - return "" -} - -func (x *CommonRequestParams) GetQuotaUser() string { - if x != nil { - return x.QuotaUser - } - return "" -} - -func (x *CommonRequestParams) GetFields() *field_mask.FieldMask { - if x != nil { - return x.Fields - } - return nil -} - -// Description of a source object for a composition request. -type ComposeObjectRequest_SourceObjects struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The source object's name. All source objects must reside in the same - // bucket. - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - // The generation of this object to use as the source. - Generation int64 `protobuf:"varint,2,opt,name=generation,proto3" json:"generation,omitempty"` - // Conditions that must be met for this operation to execute. - ObjectPreconditions *ComposeObjectRequest_SourceObjects_ObjectPreconditions `protobuf:"bytes,3,opt,name=object_preconditions,json=objectPreconditions,proto3" json:"object_preconditions,omitempty"` -} - -func (x *ComposeObjectRequest_SourceObjects) Reset() { - *x = ComposeObjectRequest_SourceObjects{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[65] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ComposeObjectRequest_SourceObjects) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ComposeObjectRequest_SourceObjects) ProtoMessage() {} - -func (x *ComposeObjectRequest_SourceObjects) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[65] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ComposeObjectRequest_SourceObjects.ProtoReflect.Descriptor instead. -func (*ComposeObjectRequest_SourceObjects) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{34, 0} -} - -func (x *ComposeObjectRequest_SourceObjects) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *ComposeObjectRequest_SourceObjects) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *ComposeObjectRequest_SourceObjects) GetObjectPreconditions() *ComposeObjectRequest_SourceObjects_ObjectPreconditions { - if x != nil { - return x.ObjectPreconditions - } - return nil -} - -// Preconditions for a source object of a composition request. -type ComposeObjectRequest_SourceObjects_ObjectPreconditions struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Only perform the composition if the generation of the source object - // that would be used matches this value. If this value and a generation - // are both specified, they must be the same value or the call will fail. - IfGenerationMatch *wrappers.Int64Value `protobuf:"bytes,1,opt,name=if_generation_match,json=ifGenerationMatch,proto3" json:"if_generation_match,omitempty"` -} - -func (x *ComposeObjectRequest_SourceObjects_ObjectPreconditions) Reset() { - *x = ComposeObjectRequest_SourceObjects_ObjectPreconditions{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_proto_msgTypes[66] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ComposeObjectRequest_SourceObjects_ObjectPreconditions) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ComposeObjectRequest_SourceObjects_ObjectPreconditions) ProtoMessage() {} - -func (x *ComposeObjectRequest_SourceObjects_ObjectPreconditions) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_proto_msgTypes[66] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ComposeObjectRequest_SourceObjects_ObjectPreconditions.ProtoReflect.Descriptor instead. -func (*ComposeObjectRequest_SourceObjects_ObjectPreconditions) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_proto_rawDescGZIP(), []int{34, 0, 0} -} - -func (x *ComposeObjectRequest_SourceObjects_ObjectPreconditions) GetIfGenerationMatch() *wrappers.Int64Value { - if x != nil { - return x.IfGenerationMatch - } - return nil -} - -var File_google_storage_v1_storage_proto protoreflect.FileDescriptor - -var file_google_storage_v1_storage_proto_rawDesc = []byte{ - 0x0a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x12, 0x11, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, - 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, - 0x6d, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x61, 0x6d, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, - 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, - 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x22, 0x07, 0x0a, 0x05, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x3c, 0x0a, 0x07, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x3c, 0x0a, 0x07, 0x42, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, - 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x20, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, - 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, - 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5a, - 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xf7, 0x01, 0x0a, 0x20, 0x49, - 0x6e, 0x73, 0x65, 0x72, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5a, 0x0a, 0x15, - 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x52, 0x13, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, - 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x22, 0x9a, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x22, 0xd0, 0x02, 0x0a, 0x1f, 0x50, 0x61, 0x74, 0x63, 0x68, 0x42, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, - 0x5a, 0x0a, 0x15, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x13, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x3b, 0x0a, 0x0b, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, - 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x22, 0x94, 0x02, 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, - 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x12, 0x5a, 0x0a, 0x15, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x61, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x13, 0x62, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, - 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xbf, 0x02, 0x0a, 0x13, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, - 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, - 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x87, 0x03, - 0x0a, 0x10, 0x47, 0x65, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, - 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, - 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, - 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, - 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xe0, 0x03, 0x0a, 0x13, 0x49, 0x6e, 0x73, 0x65, - 0x72, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x59, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x0d, 0x70, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x75, 0x0a, 0x1d, 0x70, 0x72, - 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, - 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, - 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x1a, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, - 0x6c, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, - 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x06, 0x62, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5a, - 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x8e, 0x01, 0x0a, 0x13, 0x4c, - 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, - 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xb2, 0x02, 0x0a, 0x12, - 0x4c, 0x69, 0x73, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, - 0x6c, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, - 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x22, 0xcd, 0x01, 0x0a, 0x1a, 0x4c, 0x6f, 0x63, 0x6b, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, - 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x36, 0x0a, 0x17, - 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x69, - 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x22, 0xcf, 0x05, 0x0a, 0x12, 0x50, 0x61, 0x74, 0x63, 0x68, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, - 0x63, 0x6b, 0x65, 0x74, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, - 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, - 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, - 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x59, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, - 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, - 0x6c, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, - 0x12, 0x75, 0x0a, 0x1d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x64, - 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, - 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x1a, 0x70, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, - 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0x93, 0x05, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, - 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, - 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, - 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, - 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, - 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x59, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, - 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, - 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x41, 0x63, 0x6c, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x41, 0x63, 0x6c, 0x12, 0x75, 0x0a, 0x1d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, - 0x64, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x1a, - 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x5a, 0x0a, 0x15, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xa6, 0x01, 0x0a, 0x12, 0x53, 0x74, 0x6f, - 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x34, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x07, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x22, 0xbf, 0x01, 0x0a, 0x27, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, - 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, - 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0xbc, 0x01, 0x0a, 0x24, 0x47, 0x65, 0x74, 0x44, 0x65, 0x66, 0x61, 0x75, - 0x6c, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, - 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, - 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0xfe, 0x01, 0x0a, 0x27, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x44, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, - 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5a, 0x0a, 0x15, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x52, 0x13, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0xd2, 0x02, 0x0a, 0x26, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, - 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x53, 0x0a, 0x17, 0x69, - 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, - 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x15, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xd7, 0x02, 0x0a, 0x26, 0x50, 0x61, 0x74, - 0x63, 0x68, 0x44, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5a, 0x0a, - 0x15, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x13, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0x9b, 0x02, 0x0a, 0x27, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x65, 0x66, - 0x61, 0x75, 0x6c, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, - 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, - 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x5a, 0x0a, 0x15, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, - 0x13, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x22, 0xbd, 0x01, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, - 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x27, 0x0a, 0x0c, 0x6e, - 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x22, 0xba, 0x01, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, - 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x27, 0x0a, 0x0c, 0x6e, 0x6f, 0x74, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xd9, 0x01, - 0x0a, 0x19, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, - 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x43, 0x0a, 0x0c, 0x6e, 0x6f, 0x74, 0x69, - 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, - 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x93, 0x01, 0x0a, 0x18, 0x4c, 0x69, - 0x73, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, - 0xf5, 0x01, 0x0a, 0x20, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, - 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xf2, 0x01, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, - 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xb4, 0x02, 0x0a, - 0x20, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, - 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x52, 0x13, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0xd7, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, - 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x8d, 0x03, - 0x0a, 0x1f, 0x50, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, - 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x06, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, - 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, - 0x13, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, - 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x8e, 0x03, - 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, - 0x1b, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x06, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, - 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x52, 0x13, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, - 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xc2, - 0x08, 0x0a, 0x14, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x32, 0x0a, 0x12, 0x64, - 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x64, 0x65, - 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, - 0x70, 0x0a, 0x1a, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, - 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, - 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x18, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, - 0x6c, 0x12, 0x3b, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5c, - 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, - 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, - 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, - 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x0d, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x4b, 0x0a, 0x13, - 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, - 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, - 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, - 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x20, - 0x0a, 0x0c, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, - 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x1a, 0xa5, 0x02, 0x0a, 0x0d, - 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x7c, 0x0a, 0x14, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x13, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, - 0x62, 0x0a, 0x13, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4b, 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x22, 0xd2, 0x0b, 0x0a, 0x11, 0x43, 0x6f, 0x70, 0x79, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x12, 0x64, 0x65, 0x73, - 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, - 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x32, 0x0a, - 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, - 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x12, 0x70, 0x0a, 0x1a, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x18, 0x64, 0x65, 0x73, 0x74, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x41, 0x63, 0x6c, 0x12, 0x4b, 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x69, - 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x52, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, - 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, - 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, - 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, - 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x58, 0x0a, 0x1a, 0x69, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, - 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x17, 0x69, 0x66, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, - 0x5f, 0x0a, 0x1e, 0x69, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1a, 0x69, 0x66, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x60, 0x0a, 0x1e, 0x69, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6d, 0x65, - 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1b, 0x69, 0x66, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, - 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x12, 0x67, 0x0a, 0x22, 0x69, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, - 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, - 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1e, 0x69, 0x66, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x49, 0x0a, 0x0a, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, - 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x02, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x47, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x18, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x6d, 0x0a, - 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xa9, 0x05, 0x0a, 0x13, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, - 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x70, - 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, - 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x12, 0x52, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, - 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, - 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, - 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, - 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, - 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x22, 0xc4, 0x05, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, - 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, - 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, - 0x0a, 0x0b, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x09, 0x72, 0x65, 0x61, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x4b, - 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x52, 0x0a, 0x17, 0x69, - 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, - 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, - 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, - 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, - 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, - 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, - 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xd4, 0x05, 0x0a, 0x10, - 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, - 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, - 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x13, 0x69, 0x66, - 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x52, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x67, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x53, 0x0a, 0x17, 0x69, - 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, - 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x49, 0x0a, 0x0a, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, - 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x22, 0xb3, 0x02, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, - 0x10, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x64, 0x5f, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x65, 0x63, - 0x6b, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x52, 0x0f, 0x63, 0x68, 0x65, - 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x4d, 0x0a, 0x10, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x12, 0x44, 0x0a, 0x0d, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x61, - 0x6e, 0x67, 0x65, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, 0x67, - 0x65, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xc1, 0x04, 0x0a, 0x10, 0x49, 0x6e, 0x73, - 0x65, 0x72, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x35, 0x0a, - 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x12, 0x59, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, - 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, - 0x52, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, - 0x4b, 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x52, 0x0a, 0x17, - 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, - 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, - 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, - 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, - 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa2, 0x05, 0x0a, - 0x13, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x09, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, - 0x64, 0x49, 0x64, 0x12, 0x53, 0x0a, 0x12, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f, 0x6f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x26, 0x0a, 0x0c, 0x77, 0x72, 0x69, 0x74, - 0x65, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, - 0x12, 0x4f, 0x0a, 0x10, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x64, 0x5f, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x48, 0x01, - 0x52, 0x0f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x48, 0x0a, 0x09, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x01, - 0x52, 0x09, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x4d, 0x0a, 0x10, 0x6f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x52, 0x0f, 0x6f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, - 0x6e, 0x69, 0x73, 0x68, 0x5f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x0b, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x57, 0x72, 0x69, 0x74, 0x65, 0x12, 0x6d, 0x0a, - 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x42, 0x0f, 0x0a, 0x0d, 0x66, 0x69, 0x72, 0x73, - 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x22, 0x86, 0x04, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x1a, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x74, - 0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, - 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, - 0x54, 0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, - 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, - 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, - 0x12, 0x2f, 0x0a, 0x13, 0x6c, 0x65, 0x78, 0x69, 0x63, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, - 0x63, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x6c, - 0x65, 0x78, 0x69, 0x63, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x6c, 0x65, 0x78, 0x69, 0x63, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, - 0x69, 0x63, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6c, 0x65, - 0x78, 0x69, 0x63, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x45, 0x6e, 0x64, 0x12, 0x5a, - 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x86, 0x02, 0x0a, 0x17, 0x51, - 0x75, 0x65, 0x72, 0x79, 0x57, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, - 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0x94, 0x01, 0x0a, 0x18, 0x51, 0x75, 0x65, 0x72, 0x79, 0x57, 0x72, 0x69, - 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x69, - 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, - 0x74, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, - 0x65, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x70, 0x6c, - 0x65, 0x74, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x80, 0x0e, 0x0a, 0x14, 0x52, - 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x32, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x37, 0x0a, 0x18, 0x64, - 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, - 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x64, - 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x6d, 0x73, 0x4b, 0x65, 0x79, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x70, 0x0a, 0x1a, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, - 0x63, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x18, 0x64, 0x65, - 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x4b, 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x12, 0x52, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, - 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, - 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, - 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, - 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, - 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x58, 0x0a, 0x1a, 0x69, 0x66, 0x5f, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, - 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x17, 0x69, 0x66, 0x53, 0x6f, 0x75, - 0x72, 0x63, 0x65, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x12, 0x5f, 0x0a, 0x1e, 0x69, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, - 0x61, 0x74, 0x63, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, - 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1a, 0x69, 0x66, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, - 0x74, 0x63, 0x68, 0x12, 0x60, 0x0a, 0x1e, 0x69, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1b, 0x69, 0x66, 0x53, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x67, 0x0a, 0x22, 0x69, 0x66, 0x5f, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1e, - 0x69, 0x66, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x3e, - 0x0a, 0x1c, 0x6d, 0x61, 0x78, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x77, 0x72, - 0x69, 0x74, 0x74, 0x65, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x18, 0x6d, 0x61, 0x78, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x65, - 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x50, 0x65, 0x72, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x49, - 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, - 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x77, - 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x72, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x28, - 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x31, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x12, 0x47, 0x0a, 0x20, 0x63, 0x6f, 0x70, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x6c, 0x67, - 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x1d, 0x63, 0x6f, - 0x70, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x12, 0x3b, 0x0a, 0x1a, 0x63, - 0x6f, 0x70, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x17, 0x63, 0x6f, 0x70, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x63, 0x72, 0x79, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x48, 0x0a, 0x21, 0x63, 0x6f, 0x70, 0x79, - 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x18, 0x17, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x1d, 0x63, 0x6f, 0x70, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, - 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x68, 0x61, 0x32, - 0x35, 0x36, 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xd6, 0x01, - 0x0a, 0x0f, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x32, 0x0a, 0x15, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, - 0x5f, 0x72, 0x65, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x13, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x42, 0x79, 0x74, 0x65, 0x73, 0x52, 0x65, 0x77, 0x72, - 0x69, 0x74, 0x74, 0x65, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, - 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x6f, 0x6e, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x64, 0x6f, 0x6e, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, - 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x72, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, - 0x35, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0xba, 0x02, 0x0a, 0x1a, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x52, 0x65, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x51, 0x0a, 0x12, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x5f, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x53, 0x70, 0x65, 0x63, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0x3a, 0x0a, 0x1b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x75, - 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x49, 0x64, 0x22, - 0xa5, 0x07, 0x0a, 0x12, 0x50, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, - 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x4b, 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x52, 0x0a, - 0x17, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, - 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x69, 0x66, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, - 0x68, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, - 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, - 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, - 0x63, 0x68, 0x12, 0x59, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, - 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, - 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x0d, - 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x49, 0x0a, - 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, - 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, - 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x0c, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, - 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x6d, 0x0a, 0x1c, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x52, 0x19, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xe9, 0x06, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1b, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1b, 0x0a, 0x06, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, - 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x13, 0x69, 0x66, 0x5f, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, - 0x6c, 0x75, 0x65, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x52, 0x0a, 0x17, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x53, 0x0a, 0x17, 0x69, 0x66, - 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, - 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, - 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, - 0x5a, 0x0a, 0x1b, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x49, 0x6e, 0x74, 0x36, 0x34, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x52, 0x18, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x59, 0x0a, 0x0e, 0x70, - 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, - 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, - 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x6d, 0x0a, 0x1c, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x19, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0xdd, 0x03, 0x0a, 0x16, 0x57, 0x61, 0x74, 0x63, 0x68, 0x41, 0x6c, 0x6c, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, - 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x72, - 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x3c, 0x0a, 0x1a, 0x69, 0x6e, 0x63, - 0x6c, 0x75, 0x64, 0x65, 0x5f, 0x74, 0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x64, 0x65, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x69, - 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x54, 0x72, 0x61, 0x69, 0x6c, 0x69, 0x6e, 0x67, 0x44, 0x65, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, - 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x34, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x07, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x22, 0xa1, 0x01, 0x0a, 0x1f, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, - 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x5a, 0x0a, 0x15, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xcf, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x49, 0x64, 0x12, 0x37, 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x5a, 0x0a, - 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, - 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x6f, 0x0a, 0x15, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x22, 0xb8, 0x01, 0x0a, 0x14, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x61, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xb5, 0x01, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x48, 0x6d, 0x61, - 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x61, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x08, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x22, 0x0a, - 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, - 0x64, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xb5, 0x02, - 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x65, 0x72, - 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x65, 0x6d, 0x61, - 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, - 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, - 0x11, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x5f, 0x6b, 0x65, - 0x79, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x73, 0x68, 0x6f, 0x77, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, - 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, - 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, - 0x6d, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0x78, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x6d, 0x61, - 0x63, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x26, 0x0a, - 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x38, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, - 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, - 0xfd, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, - 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, - 0x52, 0x08, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x43, - 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x4d, 0x65, 0x74, 0x61, - 0x64, 0x61, 0x74, 0x61, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, - 0xb6, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x0b, 0x69, 0x61, 0x6d, 0x5f, 0x72, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, - 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x52, 0x0a, 0x69, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x15, - 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, - 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xb6, 0x01, 0x0a, 0x13, 0x53, 0x65, 0x74, - 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x43, 0x0a, 0x0b, 0x69, 0x61, 0x6d, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, - 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, - 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, 0x69, 0x61, 0x6d, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, - 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x13, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x22, 0xc2, 0x01, 0x0a, 0x19, 0x54, 0x65, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x49, 0x0a, 0x0b, 0x69, 0x61, 0x6d, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, - 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, - 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x0a, - 0x69, 0x61, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x15, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x61, 0x72, - 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x52, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xa9, 0x01, 0x0a, 0x19, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, - 0x72, 0x61, 0x6d, 0x73, 0x12, 0x31, 0x0a, 0x14, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x61, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x13, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, - 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x63, 0x72, 0x79, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x32, - 0x0a, 0x15, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, - 0x5f, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x65, - 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x68, 0x61, 0x32, - 0x35, 0x36, 0x22, 0x90, 0x01, 0x0a, 0x13, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x26, 0x0a, 0x0c, 0x75, 0x73, - 0x65, 0x72, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x5f, 0x75, 0x73, 0x65, 0x72, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x71, 0x75, 0x6f, 0x74, 0x61, 0x55, 0x73, 0x65, - 0x72, 0x12, 0x32, 0x0a, 0x06, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x06, 0x66, - 0x69, 0x65, 0x6c, 0x64, 0x73, 0x32, 0xee, 0x07, 0x0a, 0x0d, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x4b, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x42, 0x75, - 0x63, 0x6b, 0x65, 0x74, 0x12, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x42, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, - 0x63, 0x6b, 0x65, 0x74, 0x12, 0x50, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, 0x75, - 0x63, 0x6b, 0x65, 0x74, 0x12, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x42, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x50, 0x0a, 0x0c, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, - 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, - 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x50, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, - 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, - 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x51, 0x0a, 0x0c, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x26, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, - 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x50, 0x0a, - 0x0c, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x26, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x65, 0x72, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, - 0x5b, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x23, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4d, - 0x65, 0x64, 0x69, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0c, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x26, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x50, - 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x25, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, - 0x12, 0x4e, 0x0a, 0x0b, 0x50, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, - 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x74, 0x63, 0x68, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, - 0x12, 0x50, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x12, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x45, 0x6d, 0x70, - 0x74, 0x79, 0x12, 0x52, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x12, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x18, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x53, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x50, - 0x01, 0x5a, 0x38, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, - 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x33, -} - -var ( - file_google_storage_v1_storage_proto_rawDescOnce sync.Once - file_google_storage_v1_storage_proto_rawDescData = file_google_storage_v1_storage_proto_rawDesc -) - -func file_google_storage_v1_storage_proto_rawDescGZIP() []byte { - file_google_storage_v1_storage_proto_rawDescOnce.Do(func() { - file_google_storage_v1_storage_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_storage_v1_storage_proto_rawDescData) - }) - return file_google_storage_v1_storage_proto_rawDescData -} - -var file_google_storage_v1_storage_proto_msgTypes = make([]protoimpl.MessageInfo, 67) -var file_google_storage_v1_storage_proto_goTypes = []interface{}{ - (*Empty)(nil), // 0: google.storage.v1.Empty - (*Objects)(nil), // 1: google.storage.v1.Objects - (*Buckets)(nil), // 2: google.storage.v1.Buckets - (*DeleteBucketAccessControlRequest)(nil), // 3: google.storage.v1.DeleteBucketAccessControlRequest - (*GetBucketAccessControlRequest)(nil), // 4: google.storage.v1.GetBucketAccessControlRequest - (*InsertBucketAccessControlRequest)(nil), // 5: google.storage.v1.InsertBucketAccessControlRequest - (*ListBucketAccessControlsRequest)(nil), // 6: google.storage.v1.ListBucketAccessControlsRequest - (*PatchBucketAccessControlRequest)(nil), // 7: google.storage.v1.PatchBucketAccessControlRequest - (*UpdateBucketAccessControlRequest)(nil), // 8: google.storage.v1.UpdateBucketAccessControlRequest - (*DeleteBucketRequest)(nil), // 9: google.storage.v1.DeleteBucketRequest - (*GetBucketRequest)(nil), // 10: google.storage.v1.GetBucketRequest - (*InsertBucketRequest)(nil), // 11: google.storage.v1.InsertBucketRequest - (*ListChannelsRequest)(nil), // 12: google.storage.v1.ListChannelsRequest - (*ListBucketsRequest)(nil), // 13: google.storage.v1.ListBucketsRequest - (*LockRetentionPolicyRequest)(nil), // 14: google.storage.v1.LockRetentionPolicyRequest - (*PatchBucketRequest)(nil), // 15: google.storage.v1.PatchBucketRequest - (*UpdateBucketRequest)(nil), // 16: google.storage.v1.UpdateBucketRequest - (*StopChannelRequest)(nil), // 17: google.storage.v1.StopChannelRequest - (*DeleteDefaultObjectAccessControlRequest)(nil), // 18: google.storage.v1.DeleteDefaultObjectAccessControlRequest - (*GetDefaultObjectAccessControlRequest)(nil), // 19: google.storage.v1.GetDefaultObjectAccessControlRequest - (*InsertDefaultObjectAccessControlRequest)(nil), // 20: google.storage.v1.InsertDefaultObjectAccessControlRequest - (*ListDefaultObjectAccessControlsRequest)(nil), // 21: google.storage.v1.ListDefaultObjectAccessControlsRequest - (*PatchDefaultObjectAccessControlRequest)(nil), // 22: google.storage.v1.PatchDefaultObjectAccessControlRequest - (*UpdateDefaultObjectAccessControlRequest)(nil), // 23: google.storage.v1.UpdateDefaultObjectAccessControlRequest - (*DeleteNotificationRequest)(nil), // 24: google.storage.v1.DeleteNotificationRequest - (*GetNotificationRequest)(nil), // 25: google.storage.v1.GetNotificationRequest - (*InsertNotificationRequest)(nil), // 26: google.storage.v1.InsertNotificationRequest - (*ListNotificationsRequest)(nil), // 27: google.storage.v1.ListNotificationsRequest - (*DeleteObjectAccessControlRequest)(nil), // 28: google.storage.v1.DeleteObjectAccessControlRequest - (*GetObjectAccessControlRequest)(nil), // 29: google.storage.v1.GetObjectAccessControlRequest - (*InsertObjectAccessControlRequest)(nil), // 30: google.storage.v1.InsertObjectAccessControlRequest - (*ListObjectAccessControlsRequest)(nil), // 31: google.storage.v1.ListObjectAccessControlsRequest - (*PatchObjectAccessControlRequest)(nil), // 32: google.storage.v1.PatchObjectAccessControlRequest - (*UpdateObjectAccessControlRequest)(nil), // 33: google.storage.v1.UpdateObjectAccessControlRequest - (*ComposeObjectRequest)(nil), // 34: google.storage.v1.ComposeObjectRequest - (*CopyObjectRequest)(nil), // 35: google.storage.v1.CopyObjectRequest - (*DeleteObjectRequest)(nil), // 36: google.storage.v1.DeleteObjectRequest - (*GetObjectMediaRequest)(nil), // 37: google.storage.v1.GetObjectMediaRequest - (*GetObjectRequest)(nil), // 38: google.storage.v1.GetObjectRequest - (*GetObjectMediaResponse)(nil), // 39: google.storage.v1.GetObjectMediaResponse - (*InsertObjectSpec)(nil), // 40: google.storage.v1.InsertObjectSpec - (*InsertObjectRequest)(nil), // 41: google.storage.v1.InsertObjectRequest - (*ListObjectsRequest)(nil), // 42: google.storage.v1.ListObjectsRequest - (*QueryWriteStatusRequest)(nil), // 43: google.storage.v1.QueryWriteStatusRequest - (*QueryWriteStatusResponse)(nil), // 44: google.storage.v1.QueryWriteStatusResponse - (*RewriteObjectRequest)(nil), // 45: google.storage.v1.RewriteObjectRequest - (*RewriteResponse)(nil), // 46: google.storage.v1.RewriteResponse - (*StartResumableWriteRequest)(nil), // 47: google.storage.v1.StartResumableWriteRequest - (*StartResumableWriteResponse)(nil), // 48: google.storage.v1.StartResumableWriteResponse - (*PatchObjectRequest)(nil), // 49: google.storage.v1.PatchObjectRequest - (*UpdateObjectRequest)(nil), // 50: google.storage.v1.UpdateObjectRequest - (*WatchAllObjectsRequest)(nil), // 51: google.storage.v1.WatchAllObjectsRequest - (*GetProjectServiceAccountRequest)(nil), // 52: google.storage.v1.GetProjectServiceAccountRequest - (*CreateHmacKeyRequest)(nil), // 53: google.storage.v1.CreateHmacKeyRequest - (*CreateHmacKeyResponse)(nil), // 54: google.storage.v1.CreateHmacKeyResponse - (*DeleteHmacKeyRequest)(nil), // 55: google.storage.v1.DeleteHmacKeyRequest - (*GetHmacKeyRequest)(nil), // 56: google.storage.v1.GetHmacKeyRequest - (*ListHmacKeysRequest)(nil), // 57: google.storage.v1.ListHmacKeysRequest - (*ListHmacKeysResponse)(nil), // 58: google.storage.v1.ListHmacKeysResponse - (*UpdateHmacKeyRequest)(nil), // 59: google.storage.v1.UpdateHmacKeyRequest - (*GetIamPolicyRequest)(nil), // 60: google.storage.v1.GetIamPolicyRequest - (*SetIamPolicyRequest)(nil), // 61: google.storage.v1.SetIamPolicyRequest - (*TestIamPermissionsRequest)(nil), // 62: google.storage.v1.TestIamPermissionsRequest - (*CommonObjectRequestParams)(nil), // 63: google.storage.v1.CommonObjectRequestParams - (*CommonRequestParams)(nil), // 64: google.storage.v1.CommonRequestParams - (*ComposeObjectRequest_SourceObjects)(nil), // 65: google.storage.v1.ComposeObjectRequest.SourceObjects - (*ComposeObjectRequest_SourceObjects_ObjectPreconditions)(nil), // 66: google.storage.v1.ComposeObjectRequest.SourceObjects.ObjectPreconditions - (*Object)(nil), // 67: google.storage.v1.Object - (*Bucket)(nil), // 68: google.storage.v1.Bucket - (*BucketAccessControl)(nil), // 69: google.storage.v1.BucketAccessControl - (*field_mask.FieldMask)(nil), // 70: google.protobuf.FieldMask - (*wrappers.Int64Value)(nil), // 71: google.protobuf.Int64Value - (CommonEnums_Projection)(0), // 72: google.storage.v1.CommonEnums.Projection - (CommonEnums_PredefinedBucketAcl)(0), // 73: google.storage.v1.CommonEnums.PredefinedBucketAcl - (CommonEnums_PredefinedObjectAcl)(0), // 74: google.storage.v1.CommonEnums.PredefinedObjectAcl - (*Channel)(nil), // 75: google.storage.v1.Channel - (*ObjectAccessControl)(nil), // 76: google.storage.v1.ObjectAccessControl - (*Notification)(nil), // 77: google.storage.v1.Notification - (*ChecksummedData)(nil), // 78: google.storage.v1.ChecksummedData - (*ObjectChecksums)(nil), // 79: google.storage.v1.ObjectChecksums - (*ContentRange)(nil), // 80: google.storage.v1.ContentRange - (*HmacKeyMetadata)(nil), // 81: google.storage.v1.HmacKeyMetadata - (*v1.GetIamPolicyRequest)(nil), // 82: google.iam.v1.GetIamPolicyRequest - (*v1.SetIamPolicyRequest)(nil), // 83: google.iam.v1.SetIamPolicyRequest - (*v1.TestIamPermissionsRequest)(nil), // 84: google.iam.v1.TestIamPermissionsRequest -} -var file_google_storage_v1_storage_proto_depIdxs = []int32{ - 67, // 0: google.storage.v1.Objects.object:type_name -> google.storage.v1.Object - 68, // 1: google.storage.v1.Buckets.bucket:type_name -> google.storage.v1.Bucket - 64, // 2: google.storage.v1.DeleteBucketAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 3: google.storage.v1.GetBucketAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 69, // 4: google.storage.v1.InsertBucketAccessControlRequest.bucket_access_control:type_name -> google.storage.v1.BucketAccessControl - 64, // 5: google.storage.v1.InsertBucketAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 6: google.storage.v1.ListBucketAccessControlsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 69, // 7: google.storage.v1.PatchBucketAccessControlRequest.bucket_access_control:type_name -> google.storage.v1.BucketAccessControl - 70, // 8: google.storage.v1.PatchBucketAccessControlRequest.update_mask:type_name -> google.protobuf.FieldMask - 64, // 9: google.storage.v1.PatchBucketAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 69, // 10: google.storage.v1.UpdateBucketAccessControlRequest.bucket_access_control:type_name -> google.storage.v1.BucketAccessControl - 64, // 11: google.storage.v1.UpdateBucketAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 12: google.storage.v1.DeleteBucketRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 13: google.storage.v1.DeleteBucketRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 64, // 14: google.storage.v1.DeleteBucketRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 15: google.storage.v1.GetBucketRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 16: google.storage.v1.GetBucketRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 72, // 17: google.storage.v1.GetBucketRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 64, // 18: google.storage.v1.GetBucketRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 73, // 19: google.storage.v1.InsertBucketRequest.predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedBucketAcl - 74, // 20: google.storage.v1.InsertBucketRequest.predefined_default_object_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 72, // 21: google.storage.v1.InsertBucketRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 68, // 22: google.storage.v1.InsertBucketRequest.bucket:type_name -> google.storage.v1.Bucket - 64, // 23: google.storage.v1.InsertBucketRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 24: google.storage.v1.ListChannelsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 72, // 25: google.storage.v1.ListBucketsRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 64, // 26: google.storage.v1.ListBucketsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 27: google.storage.v1.LockRetentionPolicyRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 28: google.storage.v1.PatchBucketRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 29: google.storage.v1.PatchBucketRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 73, // 30: google.storage.v1.PatchBucketRequest.predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedBucketAcl - 74, // 31: google.storage.v1.PatchBucketRequest.predefined_default_object_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 72, // 32: google.storage.v1.PatchBucketRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 68, // 33: google.storage.v1.PatchBucketRequest.metadata:type_name -> google.storage.v1.Bucket - 70, // 34: google.storage.v1.PatchBucketRequest.update_mask:type_name -> google.protobuf.FieldMask - 64, // 35: google.storage.v1.PatchBucketRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 36: google.storage.v1.UpdateBucketRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 37: google.storage.v1.UpdateBucketRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 73, // 38: google.storage.v1.UpdateBucketRequest.predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedBucketAcl - 74, // 39: google.storage.v1.UpdateBucketRequest.predefined_default_object_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 72, // 40: google.storage.v1.UpdateBucketRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 68, // 41: google.storage.v1.UpdateBucketRequest.metadata:type_name -> google.storage.v1.Bucket - 64, // 42: google.storage.v1.UpdateBucketRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 75, // 43: google.storage.v1.StopChannelRequest.channel:type_name -> google.storage.v1.Channel - 64, // 44: google.storage.v1.StopChannelRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 45: google.storage.v1.DeleteDefaultObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 46: google.storage.v1.GetDefaultObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 76, // 47: google.storage.v1.InsertDefaultObjectAccessControlRequest.object_access_control:type_name -> google.storage.v1.ObjectAccessControl - 64, // 48: google.storage.v1.InsertDefaultObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 49: google.storage.v1.ListDefaultObjectAccessControlsRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 50: google.storage.v1.ListDefaultObjectAccessControlsRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 64, // 51: google.storage.v1.ListDefaultObjectAccessControlsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 76, // 52: google.storage.v1.PatchDefaultObjectAccessControlRequest.object_access_control:type_name -> google.storage.v1.ObjectAccessControl - 70, // 53: google.storage.v1.PatchDefaultObjectAccessControlRequest.update_mask:type_name -> google.protobuf.FieldMask - 64, // 54: google.storage.v1.PatchDefaultObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 76, // 55: google.storage.v1.UpdateDefaultObjectAccessControlRequest.object_access_control:type_name -> google.storage.v1.ObjectAccessControl - 64, // 56: google.storage.v1.UpdateDefaultObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 57: google.storage.v1.DeleteNotificationRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 58: google.storage.v1.GetNotificationRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 77, // 59: google.storage.v1.InsertNotificationRequest.notification:type_name -> google.storage.v1.Notification - 64, // 60: google.storage.v1.InsertNotificationRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 61: google.storage.v1.ListNotificationsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 62: google.storage.v1.DeleteObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 63: google.storage.v1.GetObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 76, // 64: google.storage.v1.InsertObjectAccessControlRequest.object_access_control:type_name -> google.storage.v1.ObjectAccessControl - 64, // 65: google.storage.v1.InsertObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 66: google.storage.v1.ListObjectAccessControlsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 76, // 67: google.storage.v1.PatchObjectAccessControlRequest.object_access_control:type_name -> google.storage.v1.ObjectAccessControl - 64, // 68: google.storage.v1.PatchObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 70, // 69: google.storage.v1.PatchObjectAccessControlRequest.update_mask:type_name -> google.protobuf.FieldMask - 76, // 70: google.storage.v1.UpdateObjectAccessControlRequest.object_access_control:type_name -> google.storage.v1.ObjectAccessControl - 64, // 71: google.storage.v1.UpdateObjectAccessControlRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 70, // 72: google.storage.v1.UpdateObjectAccessControlRequest.update_mask:type_name -> google.protobuf.FieldMask - 74, // 73: google.storage.v1.ComposeObjectRequest.destination_predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 67, // 74: google.storage.v1.ComposeObjectRequest.destination:type_name -> google.storage.v1.Object - 65, // 75: google.storage.v1.ComposeObjectRequest.source_objects:type_name -> google.storage.v1.ComposeObjectRequest.SourceObjects - 71, // 76: google.storage.v1.ComposeObjectRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 77: google.storage.v1.ComposeObjectRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 63, // 78: google.storage.v1.ComposeObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 79: google.storage.v1.ComposeObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 74, // 80: google.storage.v1.CopyObjectRequest.destination_predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 71, // 81: google.storage.v1.CopyObjectRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 82: google.storage.v1.CopyObjectRequest.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 83: google.storage.v1.CopyObjectRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 84: google.storage.v1.CopyObjectRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 71, // 85: google.storage.v1.CopyObjectRequest.if_source_generation_match:type_name -> google.protobuf.Int64Value - 71, // 86: google.storage.v1.CopyObjectRequest.if_source_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 87: google.storage.v1.CopyObjectRequest.if_source_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 88: google.storage.v1.CopyObjectRequest.if_source_metageneration_not_match:type_name -> google.protobuf.Int64Value - 72, // 89: google.storage.v1.CopyObjectRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 67, // 90: google.storage.v1.CopyObjectRequest.destination:type_name -> google.storage.v1.Object - 63, // 91: google.storage.v1.CopyObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 92: google.storage.v1.CopyObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 93: google.storage.v1.DeleteObjectRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 94: google.storage.v1.DeleteObjectRequest.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 95: google.storage.v1.DeleteObjectRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 96: google.storage.v1.DeleteObjectRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 63, // 97: google.storage.v1.DeleteObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 98: google.storage.v1.DeleteObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 99: google.storage.v1.GetObjectMediaRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 100: google.storage.v1.GetObjectMediaRequest.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 101: google.storage.v1.GetObjectMediaRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 102: google.storage.v1.GetObjectMediaRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 63, // 103: google.storage.v1.GetObjectMediaRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 104: google.storage.v1.GetObjectMediaRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 105: google.storage.v1.GetObjectRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 106: google.storage.v1.GetObjectRequest.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 107: google.storage.v1.GetObjectRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 108: google.storage.v1.GetObjectRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 72, // 109: google.storage.v1.GetObjectRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 63, // 110: google.storage.v1.GetObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 111: google.storage.v1.GetObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 78, // 112: google.storage.v1.GetObjectMediaResponse.checksummed_data:type_name -> google.storage.v1.ChecksummedData - 79, // 113: google.storage.v1.GetObjectMediaResponse.object_checksums:type_name -> google.storage.v1.ObjectChecksums - 80, // 114: google.storage.v1.GetObjectMediaResponse.content_range:type_name -> google.storage.v1.ContentRange - 67, // 115: google.storage.v1.GetObjectMediaResponse.metadata:type_name -> google.storage.v1.Object - 67, // 116: google.storage.v1.InsertObjectSpec.resource:type_name -> google.storage.v1.Object - 74, // 117: google.storage.v1.InsertObjectSpec.predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 71, // 118: google.storage.v1.InsertObjectSpec.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 119: google.storage.v1.InsertObjectSpec.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 120: google.storage.v1.InsertObjectSpec.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 121: google.storage.v1.InsertObjectSpec.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 72, // 122: google.storage.v1.InsertObjectSpec.projection:type_name -> google.storage.v1.CommonEnums.Projection - 40, // 123: google.storage.v1.InsertObjectRequest.insert_object_spec:type_name -> google.storage.v1.InsertObjectSpec - 78, // 124: google.storage.v1.InsertObjectRequest.checksummed_data:type_name -> google.storage.v1.ChecksummedData - 37, // 125: google.storage.v1.InsertObjectRequest.reference:type_name -> google.storage.v1.GetObjectMediaRequest - 79, // 126: google.storage.v1.InsertObjectRequest.object_checksums:type_name -> google.storage.v1.ObjectChecksums - 63, // 127: google.storage.v1.InsertObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 128: google.storage.v1.InsertObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 72, // 129: google.storage.v1.ListObjectsRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 64, // 130: google.storage.v1.ListObjectsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 63, // 131: google.storage.v1.QueryWriteStatusRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 132: google.storage.v1.QueryWriteStatusRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 67, // 133: google.storage.v1.QueryWriteStatusResponse.resource:type_name -> google.storage.v1.Object - 74, // 134: google.storage.v1.RewriteObjectRequest.destination_predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 71, // 135: google.storage.v1.RewriteObjectRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 136: google.storage.v1.RewriteObjectRequest.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 137: google.storage.v1.RewriteObjectRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 138: google.storage.v1.RewriteObjectRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 71, // 139: google.storage.v1.RewriteObjectRequest.if_source_generation_match:type_name -> google.protobuf.Int64Value - 71, // 140: google.storage.v1.RewriteObjectRequest.if_source_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 141: google.storage.v1.RewriteObjectRequest.if_source_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 142: google.storage.v1.RewriteObjectRequest.if_source_metageneration_not_match:type_name -> google.protobuf.Int64Value - 72, // 143: google.storage.v1.RewriteObjectRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 67, // 144: google.storage.v1.RewriteObjectRequest.object:type_name -> google.storage.v1.Object - 63, // 145: google.storage.v1.RewriteObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 146: google.storage.v1.RewriteObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 67, // 147: google.storage.v1.RewriteResponse.resource:type_name -> google.storage.v1.Object - 40, // 148: google.storage.v1.StartResumableWriteRequest.insert_object_spec:type_name -> google.storage.v1.InsertObjectSpec - 63, // 149: google.storage.v1.StartResumableWriteRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 150: google.storage.v1.StartResumableWriteRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 151: google.storage.v1.PatchObjectRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 152: google.storage.v1.PatchObjectRequest.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 153: google.storage.v1.PatchObjectRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 154: google.storage.v1.PatchObjectRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 74, // 155: google.storage.v1.PatchObjectRequest.predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 72, // 156: google.storage.v1.PatchObjectRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 67, // 157: google.storage.v1.PatchObjectRequest.metadata:type_name -> google.storage.v1.Object - 70, // 158: google.storage.v1.PatchObjectRequest.update_mask:type_name -> google.protobuf.FieldMask - 63, // 159: google.storage.v1.PatchObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 160: google.storage.v1.PatchObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 71, // 161: google.storage.v1.UpdateObjectRequest.if_generation_match:type_name -> google.protobuf.Int64Value - 71, // 162: google.storage.v1.UpdateObjectRequest.if_generation_not_match:type_name -> google.protobuf.Int64Value - 71, // 163: google.storage.v1.UpdateObjectRequest.if_metageneration_match:type_name -> google.protobuf.Int64Value - 71, // 164: google.storage.v1.UpdateObjectRequest.if_metageneration_not_match:type_name -> google.protobuf.Int64Value - 74, // 165: google.storage.v1.UpdateObjectRequest.predefined_acl:type_name -> google.storage.v1.CommonEnums.PredefinedObjectAcl - 72, // 166: google.storage.v1.UpdateObjectRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 67, // 167: google.storage.v1.UpdateObjectRequest.metadata:type_name -> google.storage.v1.Object - 63, // 168: google.storage.v1.UpdateObjectRequest.common_object_request_params:type_name -> google.storage.v1.CommonObjectRequestParams - 64, // 169: google.storage.v1.UpdateObjectRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 72, // 170: google.storage.v1.WatchAllObjectsRequest.projection:type_name -> google.storage.v1.CommonEnums.Projection - 75, // 171: google.storage.v1.WatchAllObjectsRequest.channel:type_name -> google.storage.v1.Channel - 64, // 172: google.storage.v1.WatchAllObjectsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 173: google.storage.v1.GetProjectServiceAccountRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 174: google.storage.v1.CreateHmacKeyRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 81, // 175: google.storage.v1.CreateHmacKeyResponse.metadata:type_name -> google.storage.v1.HmacKeyMetadata - 64, // 176: google.storage.v1.DeleteHmacKeyRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 177: google.storage.v1.GetHmacKeyRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 64, // 178: google.storage.v1.ListHmacKeysRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 81, // 179: google.storage.v1.ListHmacKeysResponse.items:type_name -> google.storage.v1.HmacKeyMetadata - 81, // 180: google.storage.v1.UpdateHmacKeyRequest.metadata:type_name -> google.storage.v1.HmacKeyMetadata - 64, // 181: google.storage.v1.UpdateHmacKeyRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 82, // 182: google.storage.v1.GetIamPolicyRequest.iam_request:type_name -> google.iam.v1.GetIamPolicyRequest - 64, // 183: google.storage.v1.GetIamPolicyRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 83, // 184: google.storage.v1.SetIamPolicyRequest.iam_request:type_name -> google.iam.v1.SetIamPolicyRequest - 64, // 185: google.storage.v1.SetIamPolicyRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 84, // 186: google.storage.v1.TestIamPermissionsRequest.iam_request:type_name -> google.iam.v1.TestIamPermissionsRequest - 64, // 187: google.storage.v1.TestIamPermissionsRequest.common_request_params:type_name -> google.storage.v1.CommonRequestParams - 70, // 188: google.storage.v1.CommonRequestParams.fields:type_name -> google.protobuf.FieldMask - 66, // 189: google.storage.v1.ComposeObjectRequest.SourceObjects.object_preconditions:type_name -> google.storage.v1.ComposeObjectRequest.SourceObjects.ObjectPreconditions - 71, // 190: google.storage.v1.ComposeObjectRequest.SourceObjects.ObjectPreconditions.if_generation_match:type_name -> google.protobuf.Int64Value - 10, // 191: google.storage.v1.StorageServer.GetBucket:input_type -> google.storage.v1.GetBucketRequest - 9, // 192: google.storage.v1.StorageServer.DeleteBucket:input_type -> google.storage.v1.DeleteBucketRequest - 11, // 193: google.storage.v1.StorageServer.InsertBucket:input_type -> google.storage.v1.InsertBucketRequest - 13, // 194: google.storage.v1.StorageServer.ListBuckets:input_type -> google.storage.v1.ListBucketsRequest - 16, // 195: google.storage.v1.StorageServer.UpdateBucket:input_type -> google.storage.v1.UpdateBucketRequest - 41, // 196: google.storage.v1.StorageServer.InsertObject:input_type -> google.storage.v1.InsertObjectRequest - 38, // 197: google.storage.v1.StorageServer.GetObject:input_type -> google.storage.v1.GetObjectRequest - 36, // 198: google.storage.v1.StorageServer.DeleteObject:input_type -> google.storage.v1.DeleteObjectRequest - 42, // 199: google.storage.v1.StorageServer.ListObjects:input_type -> google.storage.v1.ListObjectsRequest - 49, // 200: google.storage.v1.StorageServer.PatchObject:input_type -> google.storage.v1.PatchObjectRequest - 50, // 201: google.storage.v1.StorageServer.UpdateObject:input_type -> google.storage.v1.UpdateObjectRequest - 34, // 202: google.storage.v1.StorageServer.ComposeObject:input_type -> google.storage.v1.ComposeObjectRequest - 68, // 203: google.storage.v1.StorageServer.GetBucket:output_type -> google.storage.v1.Bucket - 0, // 204: google.storage.v1.StorageServer.DeleteBucket:output_type -> google.storage.v1.Empty - 0, // 205: google.storage.v1.StorageServer.InsertBucket:output_type -> google.storage.v1.Empty - 2, // 206: google.storage.v1.StorageServer.ListBuckets:output_type -> google.storage.v1.Buckets - 68, // 207: google.storage.v1.StorageServer.UpdateBucket:output_type -> google.storage.v1.Bucket - 0, // 208: google.storage.v1.StorageServer.InsertObject:output_type -> google.storage.v1.Empty - 39, // 209: google.storage.v1.StorageServer.GetObject:output_type -> google.storage.v1.GetObjectMediaResponse - 0, // 210: google.storage.v1.StorageServer.DeleteObject:output_type -> google.storage.v1.Empty - 1, // 211: google.storage.v1.StorageServer.ListObjects:output_type -> google.storage.v1.Objects - 0, // 212: google.storage.v1.StorageServer.PatchObject:output_type -> google.storage.v1.Empty - 0, // 213: google.storage.v1.StorageServer.UpdateObject:output_type -> google.storage.v1.Empty - 0, // 214: google.storage.v1.StorageServer.ComposeObject:output_type -> google.storage.v1.Empty - 203, // [203:215] is the sub-list for method output_type - 191, // [191:203] is the sub-list for method input_type - 191, // [191:191] is the sub-list for extension type_name - 191, // [191:191] is the sub-list for extension extendee - 0, // [0:191] is the sub-list for field type_name -} - -func init() { file_google_storage_v1_storage_proto_init() } -func file_google_storage_v1_storage_proto_init() { - if File_google_storage_v1_storage_proto != nil { - return - } - file_google_storage_v1_storage_resources_proto_init() - if !protoimpl.UnsafeEnabled { - file_google_storage_v1_storage_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Empty); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Objects); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Buckets); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteBucketAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBucketAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertBucketAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListBucketAccessControlsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PatchBucketAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateBucketAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteBucketRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBucketRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertBucketRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListChannelsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListBucketsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*LockRetentionPolicyRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PatchBucketRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateBucketRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StopChannelRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDefaultObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetDefaultObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertDefaultObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListDefaultObjectAccessControlsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PatchDefaultObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateDefaultObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteNotificationRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetNotificationRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertNotificationRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListNotificationsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListObjectAccessControlsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PatchObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateObjectAccessControlRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ComposeObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CopyObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetObjectMediaRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetObjectMediaResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertObjectSpec); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*InsertObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListObjectsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryWriteStatusRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*QueryWriteStatusResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RewriteObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RewriteResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StartResumableWriteRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*StartResumableWriteResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PatchObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateObjectRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WatchAllObjectsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetProjectServiceAccountRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateHmacKeyRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateHmacKeyResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteHmacKeyRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetHmacKeyRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListHmacKeysRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListHmacKeysResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateHmacKeyRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetIamPolicyRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetIamPolicyRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TestIamPermissionsRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CommonObjectRequestParams); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CommonRequestParams); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ComposeObjectRequest_SourceObjects); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ComposeObjectRequest_SourceObjects_ObjectPreconditions); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - file_google_storage_v1_storage_proto_msgTypes[41].OneofWrappers = []interface{}{ - (*InsertObjectRequest_UploadId)(nil), - (*InsertObjectRequest_InsertObjectSpec)(nil), - (*InsertObjectRequest_ChecksummedData)(nil), - (*InsertObjectRequest_Reference)(nil), - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_google_storage_v1_storage_proto_rawDesc, - NumEnums: 0, - NumMessages: 67, - NumExtensions: 0, - NumServices: 1, - }, - GoTypes: file_google_storage_v1_storage_proto_goTypes, - DependencyIndexes: file_google_storage_v1_storage_proto_depIdxs, - MessageInfos: file_google_storage_v1_storage_proto_msgTypes, - }.Build() - File_google_storage_v1_storage_proto = out.File - file_google_storage_v1_storage_proto_rawDesc = nil - file_google_storage_v1_storage_proto_goTypes = nil - file_google_storage_v1_storage_proto_depIdxs = nil -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion6 - -// StorageServerClient is the client API for StorageServer service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type StorageServerClient interface { - GetBucket(ctx context.Context, in *GetBucketRequest, opts ...grpc.CallOption) (*Bucket, error) - DeleteBucket(ctx context.Context, in *DeleteBucketRequest, opts ...grpc.CallOption) (*Empty, error) - InsertBucket(ctx context.Context, in *InsertBucketRequest, opts ...grpc.CallOption) (*Empty, error) - ListBuckets(ctx context.Context, in *ListBucketsRequest, opts ...grpc.CallOption) (*Buckets, error) - UpdateBucket(ctx context.Context, in *UpdateBucketRequest, opts ...grpc.CallOption) (*Bucket, error) - InsertObject(ctx context.Context, in *InsertObjectRequest, opts ...grpc.CallOption) (*Empty, error) - GetObject(ctx context.Context, in *GetObjectRequest, opts ...grpc.CallOption) (*GetObjectMediaResponse, error) - DeleteObject(ctx context.Context, in *DeleteObjectRequest, opts ...grpc.CallOption) (*Empty, error) - ListObjects(ctx context.Context, in *ListObjectsRequest, opts ...grpc.CallOption) (*Objects, error) - PatchObject(ctx context.Context, in *PatchObjectRequest, opts ...grpc.CallOption) (*Empty, error) - UpdateObject(ctx context.Context, in *UpdateObjectRequest, opts ...grpc.CallOption) (*Empty, error) - ComposeObject(ctx context.Context, in *ComposeObjectRequest, opts ...grpc.CallOption) (*Empty, error) -} - -type storageServerClient struct { - cc grpc.ClientConnInterface -} - -func NewStorageServerClient(cc grpc.ClientConnInterface) StorageServerClient { - return &storageServerClient{cc} -} - -func (c *storageServerClient) GetBucket(ctx context.Context, in *GetBucketRequest, opts ...grpc.CallOption) (*Bucket, error) { - out := new(Bucket) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/GetBucket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) DeleteBucket(ctx context.Context, in *DeleteBucketRequest, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/DeleteBucket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) InsertBucket(ctx context.Context, in *InsertBucketRequest, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/InsertBucket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) ListBuckets(ctx context.Context, in *ListBucketsRequest, opts ...grpc.CallOption) (*Buckets, error) { - out := new(Buckets) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/ListBuckets", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) UpdateBucket(ctx context.Context, in *UpdateBucketRequest, opts ...grpc.CallOption) (*Bucket, error) { - out := new(Bucket) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/UpdateBucket", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) InsertObject(ctx context.Context, in *InsertObjectRequest, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/InsertObject", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) GetObject(ctx context.Context, in *GetObjectRequest, opts ...grpc.CallOption) (*GetObjectMediaResponse, error) { - out := new(GetObjectMediaResponse) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/GetObject", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) DeleteObject(ctx context.Context, in *DeleteObjectRequest, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/DeleteObject", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) ListObjects(ctx context.Context, in *ListObjectsRequest, opts ...grpc.CallOption) (*Objects, error) { - out := new(Objects) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/ListObjects", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) PatchObject(ctx context.Context, in *PatchObjectRequest, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/PatchObject", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) UpdateObject(ctx context.Context, in *UpdateObjectRequest, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/UpdateObject", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *storageServerClient) ComposeObject(ctx context.Context, in *ComposeObjectRequest, opts ...grpc.CallOption) (*Empty, error) { - out := new(Empty) - err := c.cc.Invoke(ctx, "/google.storage.v1.StorageServer/ComposeObject", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// StorageServerServer is the server API for StorageServer service. -type StorageServerServer interface { - GetBucket(context.Context, *GetBucketRequest) (*Bucket, error) - DeleteBucket(context.Context, *DeleteBucketRequest) (*Empty, error) - InsertBucket(context.Context, *InsertBucketRequest) (*Empty, error) - ListBuckets(context.Context, *ListBucketsRequest) (*Buckets, error) - UpdateBucket(context.Context, *UpdateBucketRequest) (*Bucket, error) - InsertObject(context.Context, *InsertObjectRequest) (*Empty, error) - GetObject(context.Context, *GetObjectRequest) (*GetObjectMediaResponse, error) - DeleteObject(context.Context, *DeleteObjectRequest) (*Empty, error) - ListObjects(context.Context, *ListObjectsRequest) (*Objects, error) - PatchObject(context.Context, *PatchObjectRequest) (*Empty, error) - UpdateObject(context.Context, *UpdateObjectRequest) (*Empty, error) - ComposeObject(context.Context, *ComposeObjectRequest) (*Empty, error) -} - -// UnimplementedStorageServerServer can be embedded to have forward compatible implementations. -type UnimplementedStorageServerServer struct { -} - -func (*UnimplementedStorageServerServer) GetBucket(context.Context, *GetBucketRequest) (*Bucket, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetBucket not implemented") -} -func (*UnimplementedStorageServerServer) DeleteBucket(context.Context, *DeleteBucketRequest) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteBucket not implemented") -} -func (*UnimplementedStorageServerServer) InsertBucket(context.Context, *InsertBucketRequest) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method InsertBucket not implemented") -} -func (*UnimplementedStorageServerServer) ListBuckets(context.Context, *ListBucketsRequest) (*Buckets, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListBuckets not implemented") -} -func (*UnimplementedStorageServerServer) UpdateBucket(context.Context, *UpdateBucketRequest) (*Bucket, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateBucket not implemented") -} -func (*UnimplementedStorageServerServer) InsertObject(context.Context, *InsertObjectRequest) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method InsertObject not implemented") -} -func (*UnimplementedStorageServerServer) GetObject(context.Context, *GetObjectRequest) (*GetObjectMediaResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetObject not implemented") -} -func (*UnimplementedStorageServerServer) DeleteObject(context.Context, *DeleteObjectRequest) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method DeleteObject not implemented") -} -func (*UnimplementedStorageServerServer) ListObjects(context.Context, *ListObjectsRequest) (*Objects, error) { - return nil, status.Errorf(codes.Unimplemented, "method ListObjects not implemented") -} -func (*UnimplementedStorageServerServer) PatchObject(context.Context, *PatchObjectRequest) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method PatchObject not implemented") -} -func (*UnimplementedStorageServerServer) UpdateObject(context.Context, *UpdateObjectRequest) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateObject not implemented") -} -func (*UnimplementedStorageServerServer) ComposeObject(context.Context, *ComposeObjectRequest) (*Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method ComposeObject not implemented") -} - -func RegisterStorageServerServer(s *grpc.Server, srv StorageServerServer) { - s.RegisterService(&_StorageServer_serviceDesc, srv) -} - -func _StorageServer_GetBucket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetBucketRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).GetBucket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/GetBucket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).GetBucket(ctx, req.(*GetBucketRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_DeleteBucket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteBucketRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).DeleteBucket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/DeleteBucket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).DeleteBucket(ctx, req.(*DeleteBucketRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_InsertBucket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(InsertBucketRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).InsertBucket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/InsertBucket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).InsertBucket(ctx, req.(*InsertBucketRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_ListBuckets_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListBucketsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).ListBuckets(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/ListBuckets", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).ListBuckets(ctx, req.(*ListBucketsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_UpdateBucket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateBucketRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).UpdateBucket(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/UpdateBucket", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).UpdateBucket(ctx, req.(*UpdateBucketRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_InsertObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(InsertObjectRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).InsertObject(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/InsertObject", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).InsertObject(ctx, req.(*InsertObjectRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_GetObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetObjectRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).GetObject(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/GetObject", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).GetObject(ctx, req.(*GetObjectRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_DeleteObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(DeleteObjectRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).DeleteObject(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/DeleteObject", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).DeleteObject(ctx, req.(*DeleteObjectRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_ListObjects_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ListObjectsRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).ListObjects(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/ListObjects", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).ListObjects(ctx, req.(*ListObjectsRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_PatchObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(PatchObjectRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).PatchObject(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/PatchObject", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).PatchObject(ctx, req.(*PatchObjectRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_UpdateObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateObjectRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).UpdateObject(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/UpdateObject", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).UpdateObject(ctx, req.(*UpdateObjectRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _StorageServer_ComposeObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ComposeObjectRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(StorageServerServer).ComposeObject(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/google.storage.v1.StorageServer/ComposeObject", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(StorageServerServer).ComposeObject(ctx, req.(*ComposeObjectRequest)) - } - return interceptor(ctx, in, info, handler) -} - -var _StorageServer_serviceDesc = grpc.ServiceDesc{ - ServiceName: "google.storage.v1.StorageServer", - HandlerType: (*StorageServerServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetBucket", - Handler: _StorageServer_GetBucket_Handler, - }, - { - MethodName: "DeleteBucket", - Handler: _StorageServer_DeleteBucket_Handler, - }, - { - MethodName: "InsertBucket", - Handler: _StorageServer_InsertBucket_Handler, - }, - { - MethodName: "ListBuckets", - Handler: _StorageServer_ListBuckets_Handler, - }, - { - MethodName: "UpdateBucket", - Handler: _StorageServer_UpdateBucket_Handler, - }, - { - MethodName: "InsertObject", - Handler: _StorageServer_InsertObject_Handler, - }, - { - MethodName: "GetObject", - Handler: _StorageServer_GetObject_Handler, - }, - { - MethodName: "DeleteObject", - Handler: _StorageServer_DeleteObject_Handler, - }, - { - MethodName: "ListObjects", - Handler: _StorageServer_ListObjects_Handler, - }, - { - MethodName: "PatchObject", - Handler: _StorageServer_PatchObject_Handler, - }, - { - MethodName: "UpdateObject", - Handler: _StorageServer_UpdateObject_Handler, - }, - { - MethodName: "ComposeObject", - Handler: _StorageServer_ComposeObject_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "google/storage/v1/storage.proto", -} diff --git a/genproto/googleapis/storage/v1/storage_resources.pb.go b/genproto/googleapis/storage/v1/storage_resources.pb.go deleted file mode 100644 index bba7811ae5..0000000000 --- a/genproto/googleapis/storage/v1/storage_resources.pb.go +++ /dev/null @@ -1,4610 +0,0 @@ -// Copyright 2022 Google LLC -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -// Code generated by protoc-gen-go. DO NOT EDIT. -// versions: -// protoc-gen-go v1.26.0 -// protoc v3.6.1 -// source: google/storage/v1/storage_resources.proto - -package storage - -import ( - timestamp "github.com/golang/protobuf/ptypes/timestamp" - wrappers "github.com/golang/protobuf/ptypes/wrappers" - protoreflect "google.golang.org/protobuf/reflect/protoreflect" - protoimpl "google.golang.org/protobuf/runtime/protoimpl" - reflect "reflect" - sync "sync" -) - -const ( - // Verify that this generated code is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) - // Verify that runtime/protoimpl is sufficiently up-to-date. - _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) -) - -// Public Access Prevention configuration values. -type Bucket_IamConfiguration_PublicAccessPrevention int32 - -const ( - // No specified PublicAccessPrevention. - Bucket_IamConfiguration_PUBLIC_ACCESS_PREVENTION_UNSPECIFIED Bucket_IamConfiguration_PublicAccessPrevention = 0 - // Prevents access from being granted to public members 'allUsers' and - // 'allAuthenticatedUsers'. Prevents attempts to grant new access to - // public members. - Bucket_IamConfiguration_ENFORCED Bucket_IamConfiguration_PublicAccessPrevention = 1 - // This setting is inherited from Org Policy. Does not prevent access from - // being granted to public members 'allUsers' or 'allAuthenticatedUsers'. - Bucket_IamConfiguration_INHERITED Bucket_IamConfiguration_PublicAccessPrevention = 2 -) - -// Enum value maps for Bucket_IamConfiguration_PublicAccessPrevention. -var ( - Bucket_IamConfiguration_PublicAccessPrevention_name = map[int32]string{ - 0: "PUBLIC_ACCESS_PREVENTION_UNSPECIFIED", - 1: "ENFORCED", - 2: "INHERITED", - } - Bucket_IamConfiguration_PublicAccessPrevention_value = map[string]int32{ - "PUBLIC_ACCESS_PREVENTION_UNSPECIFIED": 0, - "ENFORCED": 1, - "INHERITED": 2, - } -) - -func (x Bucket_IamConfiguration_PublicAccessPrevention) Enum() *Bucket_IamConfiguration_PublicAccessPrevention { - p := new(Bucket_IamConfiguration_PublicAccessPrevention) - *p = x - return p -} - -func (x Bucket_IamConfiguration_PublicAccessPrevention) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (Bucket_IamConfiguration_PublicAccessPrevention) Descriptor() protoreflect.EnumDescriptor { - return file_google_storage_v1_storage_resources_proto_enumTypes[0].Descriptor() -} - -func (Bucket_IamConfiguration_PublicAccessPrevention) Type() protoreflect.EnumType { - return &file_google_storage_v1_storage_resources_proto_enumTypes[0] -} - -func (x Bucket_IamConfiguration_PublicAccessPrevention) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use Bucket_IamConfiguration_PublicAccessPrevention.Descriptor instead. -func (Bucket_IamConfiguration_PublicAccessPrevention) EnumDescriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 3, 0} -} - -// A set of properties to return in a response. -type CommonEnums_Projection int32 - -const ( - // No specified projection. - CommonEnums_PROJECTION_UNSPECIFIED CommonEnums_Projection = 0 - // Omit `owner`, `acl`, and `defaultObjectAcl` properties. - CommonEnums_NO_ACL CommonEnums_Projection = 1 - // Include all properties. - CommonEnums_FULL CommonEnums_Projection = 2 -) - -// Enum value maps for CommonEnums_Projection. -var ( - CommonEnums_Projection_name = map[int32]string{ - 0: "PROJECTION_UNSPECIFIED", - 1: "NO_ACL", - 2: "FULL", - } - CommonEnums_Projection_value = map[string]int32{ - "PROJECTION_UNSPECIFIED": 0, - "NO_ACL": 1, - "FULL": 2, - } -) - -func (x CommonEnums_Projection) Enum() *CommonEnums_Projection { - p := new(CommonEnums_Projection) - *p = x - return p -} - -func (x CommonEnums_Projection) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (CommonEnums_Projection) Descriptor() protoreflect.EnumDescriptor { - return file_google_storage_v1_storage_resources_proto_enumTypes[1].Descriptor() -} - -func (CommonEnums_Projection) Type() protoreflect.EnumType { - return &file_google_storage_v1_storage_resources_proto_enumTypes[1] -} - -func (x CommonEnums_Projection) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use CommonEnums_Projection.Descriptor instead. -func (CommonEnums_Projection) EnumDescriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{8, 0} -} - -// Predefined or "canned" aliases for sets of specific bucket ACL entries. -type CommonEnums_PredefinedBucketAcl int32 - -const ( - // No predefined ACL. - CommonEnums_PREDEFINED_BUCKET_ACL_UNSPECIFIED CommonEnums_PredefinedBucketAcl = 0 - // Project team owners get `OWNER` access, and - // `allAuthenticatedUsers` get `READER` access. - CommonEnums_BUCKET_ACL_AUTHENTICATED_READ CommonEnums_PredefinedBucketAcl = 1 - // Project team owners get `OWNER` access. - CommonEnums_BUCKET_ACL_PRIVATE CommonEnums_PredefinedBucketAcl = 2 - // Project team members get access according to their roles. - CommonEnums_BUCKET_ACL_PROJECT_PRIVATE CommonEnums_PredefinedBucketAcl = 3 - // Project team owners get `OWNER` access, and - // `allUsers` get `READER` access. - CommonEnums_BUCKET_ACL_PUBLIC_READ CommonEnums_PredefinedBucketAcl = 4 - // Project team owners get `OWNER` access, and - // `allUsers` get `WRITER` access. - CommonEnums_BUCKET_ACL_PUBLIC_READ_WRITE CommonEnums_PredefinedBucketAcl = 5 -) - -// Enum value maps for CommonEnums_PredefinedBucketAcl. -var ( - CommonEnums_PredefinedBucketAcl_name = map[int32]string{ - 0: "PREDEFINED_BUCKET_ACL_UNSPECIFIED", - 1: "BUCKET_ACL_AUTHENTICATED_READ", - 2: "BUCKET_ACL_PRIVATE", - 3: "BUCKET_ACL_PROJECT_PRIVATE", - 4: "BUCKET_ACL_PUBLIC_READ", - 5: "BUCKET_ACL_PUBLIC_READ_WRITE", - } - CommonEnums_PredefinedBucketAcl_value = map[string]int32{ - "PREDEFINED_BUCKET_ACL_UNSPECIFIED": 0, - "BUCKET_ACL_AUTHENTICATED_READ": 1, - "BUCKET_ACL_PRIVATE": 2, - "BUCKET_ACL_PROJECT_PRIVATE": 3, - "BUCKET_ACL_PUBLIC_READ": 4, - "BUCKET_ACL_PUBLIC_READ_WRITE": 5, - } -) - -func (x CommonEnums_PredefinedBucketAcl) Enum() *CommonEnums_PredefinedBucketAcl { - p := new(CommonEnums_PredefinedBucketAcl) - *p = x - return p -} - -func (x CommonEnums_PredefinedBucketAcl) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (CommonEnums_PredefinedBucketAcl) Descriptor() protoreflect.EnumDescriptor { - return file_google_storage_v1_storage_resources_proto_enumTypes[2].Descriptor() -} - -func (CommonEnums_PredefinedBucketAcl) Type() protoreflect.EnumType { - return &file_google_storage_v1_storage_resources_proto_enumTypes[2] -} - -func (x CommonEnums_PredefinedBucketAcl) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use CommonEnums_PredefinedBucketAcl.Descriptor instead. -func (CommonEnums_PredefinedBucketAcl) EnumDescriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{8, 1} -} - -// Predefined or "canned" aliases for sets of specific object ACL entries. -type CommonEnums_PredefinedObjectAcl int32 - -const ( - // No predefined ACL. - CommonEnums_PREDEFINED_OBJECT_ACL_UNSPECIFIED CommonEnums_PredefinedObjectAcl = 0 - // Object owner gets `OWNER` access, and - // `allAuthenticatedUsers` get `READER` access. - CommonEnums_OBJECT_ACL_AUTHENTICATED_READ CommonEnums_PredefinedObjectAcl = 1 - // Object owner gets `OWNER` access, and project team owners get - // `OWNER` access. - CommonEnums_OBJECT_ACL_BUCKET_OWNER_FULL_CONTROL CommonEnums_PredefinedObjectAcl = 2 - // Object owner gets `OWNER` access, and project team owners get - // `READER` access. - CommonEnums_OBJECT_ACL_BUCKET_OWNER_READ CommonEnums_PredefinedObjectAcl = 3 - // Object owner gets `OWNER` access. - CommonEnums_OBJECT_ACL_PRIVATE CommonEnums_PredefinedObjectAcl = 4 - // Object owner gets `OWNER` access, and project team members get - // access according to their roles. - CommonEnums_OBJECT_ACL_PROJECT_PRIVATE CommonEnums_PredefinedObjectAcl = 5 - // Object owner gets `OWNER` access, and `allUsers` - // get `READER` access. - CommonEnums_OBJECT_ACL_PUBLIC_READ CommonEnums_PredefinedObjectAcl = 6 -) - -// Enum value maps for CommonEnums_PredefinedObjectAcl. -var ( - CommonEnums_PredefinedObjectAcl_name = map[int32]string{ - 0: "PREDEFINED_OBJECT_ACL_UNSPECIFIED", - 1: "OBJECT_ACL_AUTHENTICATED_READ", - 2: "OBJECT_ACL_BUCKET_OWNER_FULL_CONTROL", - 3: "OBJECT_ACL_BUCKET_OWNER_READ", - 4: "OBJECT_ACL_PRIVATE", - 5: "OBJECT_ACL_PROJECT_PRIVATE", - 6: "OBJECT_ACL_PUBLIC_READ", - } - CommonEnums_PredefinedObjectAcl_value = map[string]int32{ - "PREDEFINED_OBJECT_ACL_UNSPECIFIED": 0, - "OBJECT_ACL_AUTHENTICATED_READ": 1, - "OBJECT_ACL_BUCKET_OWNER_FULL_CONTROL": 2, - "OBJECT_ACL_BUCKET_OWNER_READ": 3, - "OBJECT_ACL_PRIVATE": 4, - "OBJECT_ACL_PROJECT_PRIVATE": 5, - "OBJECT_ACL_PUBLIC_READ": 6, - } -) - -func (x CommonEnums_PredefinedObjectAcl) Enum() *CommonEnums_PredefinedObjectAcl { - p := new(CommonEnums_PredefinedObjectAcl) - *p = x - return p -} - -func (x CommonEnums_PredefinedObjectAcl) String() string { - return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) -} - -func (CommonEnums_PredefinedObjectAcl) Descriptor() protoreflect.EnumDescriptor { - return file_google_storage_v1_storage_resources_proto_enumTypes[3].Descriptor() -} - -func (CommonEnums_PredefinedObjectAcl) Type() protoreflect.EnumType { - return &file_google_storage_v1_storage_resources_proto_enumTypes[3] -} - -func (x CommonEnums_PredefinedObjectAcl) Number() protoreflect.EnumNumber { - return protoreflect.EnumNumber(x) -} - -// Deprecated: Use CommonEnums_PredefinedObjectAcl.Descriptor instead. -func (CommonEnums_PredefinedObjectAcl) EnumDescriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{8, 2} -} - -// A bucket. -type Bucket struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Access controls on the bucket. - Acl []*BucketAccessControl `protobuf:"bytes,1,rep,name=acl,proto3" json:"acl,omitempty"` - // Default access controls to apply to new objects when no ACL is provided. - DefaultObjectAcl []*ObjectAccessControl `protobuf:"bytes,2,rep,name=default_object_acl,json=defaultObjectAcl,proto3" json:"default_object_acl,omitempty"` - // The bucket's lifecycle configuration. See - // [https://developers.google.com/storage/docs/lifecycle]Lifecycle Management] - // for more information. - Lifecycle *Bucket_Lifecycle `protobuf:"bytes,3,opt,name=lifecycle,proto3" json:"lifecycle,omitempty"` - // The creation time of the bucket in - // [https://tools.ietf.org/html/rfc3339][RFC 3339] format. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - TimeCreated *timestamp.Timestamp `protobuf:"bytes,4,opt,name=time_created,json=timeCreated,proto3" json:"time_created,omitempty"` - // The ID of the bucket. For buckets, the `id` and `name` properties are the - // same. - // Attempting to update this field after the bucket is created will result in - // a [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Id string `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"` - // The name of the bucket. - // Attempting to update this field after the bucket is created will result in - // an error. - Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"` - // The project number of the project the bucket belongs to. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - ProjectNumber int64 `protobuf:"varint,7,opt,name=project_number,json=projectNumber,proto3" json:"project_number,omitempty"` - // The metadata generation of this bucket. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Metageneration int64 `protobuf:"varint,8,opt,name=metageneration,proto3" json:"metageneration,omitempty"` - // The bucket's [https://www.w3.org/TR/cors/][Cross-Origin Resource Sharing] - // (CORS) configuration. - Cors []*Bucket_Cors `protobuf:"bytes,9,rep,name=cors,proto3" json:"cors,omitempty"` - // The location of the bucket. Object data for objects in the bucket resides - // in physical storage within this region. Defaults to `US`. See the - // [https://developers.google.com/storage/docs/concepts-techniques#specifyinglocations"][developer's - // guide] for the authoritative list. Attempting to update this field after - // the bucket is created will result in an error. - Location string `protobuf:"bytes,10,opt,name=location,proto3" json:"location,omitempty"` - // The bucket's default storage class, used whenever no storageClass is - // specified for a newly-created object. This defines how objects in the - // bucket are stored and determines the SLA and the cost of storage. - // If this value is not specified when the bucket is created, it will default - // to `STANDARD`. For more information, see - // https://developers.google.com/storage/docs/storage-classes. - StorageClass string `protobuf:"bytes,11,opt,name=storage_class,json=storageClass,proto3" json:"storage_class,omitempty"` - // HTTP 1.1 [https://tools.ietf.org/html/rfc7232#section-2.3"]Entity tag] - // for the bucket. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Etag string `protobuf:"bytes,12,opt,name=etag,proto3" json:"etag,omitempty"` - // The modification time of the bucket. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Updated *timestamp.Timestamp `protobuf:"bytes,13,opt,name=updated,proto3" json:"updated,omitempty"` - // The default value for event-based hold on newly created objects in this - // bucket. Event-based hold is a way to retain objects indefinitely until an - // event occurs, signified by the - // hold's release. After being released, such objects will be subject to - // bucket-level retention (if any). One sample use case of this flag is for - // banks to hold loan documents for at least 3 years after loan is paid in - // full. Here, bucket-level retention is 3 years and the event is loan being - // paid in full. In this example, these objects will be held intact for any - // number of years until the event has occurred (event-based hold on the - // object is released) and then 3 more years after that. That means retention - // duration of the objects begins from the moment event-based hold - // transitioned from true to false. Objects under event-based hold cannot be - // deleted, overwritten or archived until the hold is removed. - DefaultEventBasedHold bool `protobuf:"varint,14,opt,name=default_event_based_hold,json=defaultEventBasedHold,proto3" json:"default_event_based_hold,omitempty"` - // User-provided labels, in key/value pairs. - Labels map[string]string `protobuf:"bytes,15,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // The bucket's website configuration, controlling how the service behaves - // when accessing bucket contents as a web site. See the - // [https://cloud.google.com/storage/docs/static-website][Static Website - // Examples] for more information. - Website *Bucket_Website `protobuf:"bytes,16,opt,name=website,proto3" json:"website,omitempty"` - // The bucket's versioning configuration. - Versioning *Bucket_Versioning `protobuf:"bytes,17,opt,name=versioning,proto3" json:"versioning,omitempty"` - // The bucket's logging configuration, which defines the destination bucket - // and optional name prefix for the current bucket's logs. - Logging *Bucket_Logging `protobuf:"bytes,18,opt,name=logging,proto3" json:"logging,omitempty"` - // The owner of the bucket. This is always the project team's owner group. - Owner *Owner `protobuf:"bytes,19,opt,name=owner,proto3" json:"owner,omitempty"` - // Encryption configuration for a bucket. - Encryption *Bucket_Encryption `protobuf:"bytes,20,opt,name=encryption,proto3" json:"encryption,omitempty"` - // The bucket's billing configuration. - Billing *Bucket_Billing `protobuf:"bytes,21,opt,name=billing,proto3" json:"billing,omitempty"` - // The bucket's retention policy. The retention policy enforces a minimum - // retention time for all objects contained in the bucket, based on their - // creation time. Any attempt to overwrite or delete objects younger than the - // retention period will result in a PERMISSION_DENIED error. An unlocked - // retention policy can be modified or removed from the bucket via a - // storage.buckets.update operation. A locked retention policy cannot be - // removed or shortened in duration for the lifetime of the bucket. - // Attempting to remove or decrease period of a locked retention policy will - // result in a PERMISSION_DENIED error. - RetentionPolicy *Bucket_RetentionPolicy `protobuf:"bytes,22,opt,name=retention_policy,json=retentionPolicy,proto3" json:"retention_policy,omitempty"` - // The location type of the bucket (region, dual-region, multi-region, etc). - LocationType string `protobuf:"bytes,23,opt,name=location_type,json=locationType,proto3" json:"location_type,omitempty"` - // The bucket's IAM configuration. - IamConfiguration *Bucket_IamConfiguration `protobuf:"bytes,24,opt,name=iam_configuration,json=iamConfiguration,proto3" json:"iam_configuration,omitempty"` - // The zone or zones from which the bucket is intended to use zonal quota. - // Requests for data from outside the specified affinities are still allowed - // but won't be able to use zonal quota. The values are case-insensitive. - // Attempting to update this field after bucket is created will result in an - // error. - // - // Deprecated: Do not use. - ZoneAffinity []string `protobuf:"bytes,25,rep,name=zone_affinity,json=zoneAffinity,proto3" json:"zone_affinity,omitempty"` - // Reserved for future use. - SatisfiesPzs bool `protobuf:"varint,26,opt,name=satisfies_pzs,json=satisfiesPzs,proto3" json:"satisfies_pzs,omitempty"` - // The bucket's autoclass configuration. If there is no configuration, the - // Autoclass feature will be disabled and have no effect on the bucket. - Autoclass *Bucket_Autoclass `protobuf:"bytes,28,opt,name=autoclass,proto3" json:"autoclass,omitempty"` -} - -func (x *Bucket) Reset() { - *x = Bucket{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket) ProtoMessage() {} - -func (x *Bucket) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket.ProtoReflect.Descriptor instead. -func (*Bucket) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0} -} - -func (x *Bucket) GetAcl() []*BucketAccessControl { - if x != nil { - return x.Acl - } - return nil -} - -func (x *Bucket) GetDefaultObjectAcl() []*ObjectAccessControl { - if x != nil { - return x.DefaultObjectAcl - } - return nil -} - -func (x *Bucket) GetLifecycle() *Bucket_Lifecycle { - if x != nil { - return x.Lifecycle - } - return nil -} - -func (x *Bucket) GetTimeCreated() *timestamp.Timestamp { - if x != nil { - return x.TimeCreated - } - return nil -} - -func (x *Bucket) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *Bucket) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *Bucket) GetProjectNumber() int64 { - if x != nil { - return x.ProjectNumber - } - return 0 -} - -func (x *Bucket) GetMetageneration() int64 { - if x != nil { - return x.Metageneration - } - return 0 -} - -func (x *Bucket) GetCors() []*Bucket_Cors { - if x != nil { - return x.Cors - } - return nil -} - -func (x *Bucket) GetLocation() string { - if x != nil { - return x.Location - } - return "" -} - -func (x *Bucket) GetStorageClass() string { - if x != nil { - return x.StorageClass - } - return "" -} - -func (x *Bucket) GetEtag() string { - if x != nil { - return x.Etag - } - return "" -} - -func (x *Bucket) GetUpdated() *timestamp.Timestamp { - if x != nil { - return x.Updated - } - return nil -} - -func (x *Bucket) GetDefaultEventBasedHold() bool { - if x != nil { - return x.DefaultEventBasedHold - } - return false -} - -func (x *Bucket) GetLabels() map[string]string { - if x != nil { - return x.Labels - } - return nil -} - -func (x *Bucket) GetWebsite() *Bucket_Website { - if x != nil { - return x.Website - } - return nil -} - -func (x *Bucket) GetVersioning() *Bucket_Versioning { - if x != nil { - return x.Versioning - } - return nil -} - -func (x *Bucket) GetLogging() *Bucket_Logging { - if x != nil { - return x.Logging - } - return nil -} - -func (x *Bucket) GetOwner() *Owner { - if x != nil { - return x.Owner - } - return nil -} - -func (x *Bucket) GetEncryption() *Bucket_Encryption { - if x != nil { - return x.Encryption - } - return nil -} - -func (x *Bucket) GetBilling() *Bucket_Billing { - if x != nil { - return x.Billing - } - return nil -} - -func (x *Bucket) GetRetentionPolicy() *Bucket_RetentionPolicy { - if x != nil { - return x.RetentionPolicy - } - return nil -} - -func (x *Bucket) GetLocationType() string { - if x != nil { - return x.LocationType - } - return "" -} - -func (x *Bucket) GetIamConfiguration() *Bucket_IamConfiguration { - if x != nil { - return x.IamConfiguration - } - return nil -} - -// Deprecated: Do not use. -func (x *Bucket) GetZoneAffinity() []string { - if x != nil { - return x.ZoneAffinity - } - return nil -} - -func (x *Bucket) GetSatisfiesPzs() bool { - if x != nil { - return x.SatisfiesPzs - } - return false -} - -func (x *Bucket) GetAutoclass() *Bucket_Autoclass { - if x != nil { - return x.Autoclass - } - return nil -} - -// An access-control entry. -type BucketAccessControl struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The access permission for the entity. - Role string `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` - // HTTP 1.1 ["https://tools.ietf.org/html/rfc7232#section-2.3][Entity tag] - // for the access-control entry. - Etag string `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"` - // The ID of the access-control entry. - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - // The name of the bucket. - Bucket string `protobuf:"bytes,4,opt,name=bucket,proto3" json:"bucket,omitempty"` - // The entity holding the permission, in one of the following forms: - // * `user-{userid}` - // * `user-{email}` - // * `group-{groupid}` - // * `group-{email}` - // * `domain-{domain}` - // * `project-{team-projectid}` - // * `allUsers` - // * `allAuthenticatedUsers` - // Examples: - // * The user `liz@example.com` would be `user-liz@example.com`. - // * The group `example@googlegroups.com` would be - // `group-example@googlegroups.com` - // * All members of the Google Apps for Business domain `example.com` would be - // `domain-example.com` - Entity string `protobuf:"bytes,6,opt,name=entity,proto3" json:"entity,omitempty"` - // The ID for the entity, if any. - EntityId string `protobuf:"bytes,7,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"` - // The email address associated with the entity, if any. - Email string `protobuf:"bytes,8,opt,name=email,proto3" json:"email,omitempty"` - // The domain associated with the entity, if any. - Domain string `protobuf:"bytes,9,opt,name=domain,proto3" json:"domain,omitempty"` - // The project team associated with the entity, if any. - ProjectTeam *ProjectTeam `protobuf:"bytes,10,opt,name=project_team,json=projectTeam,proto3" json:"project_team,omitempty"` -} - -func (x *BucketAccessControl) Reset() { - *x = BucketAccessControl{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *BucketAccessControl) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*BucketAccessControl) ProtoMessage() {} - -func (x *BucketAccessControl) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use BucketAccessControl.ProtoReflect.Descriptor instead. -func (*BucketAccessControl) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{1} -} - -func (x *BucketAccessControl) GetRole() string { - if x != nil { - return x.Role - } - return "" -} - -func (x *BucketAccessControl) GetEtag() string { - if x != nil { - return x.Etag - } - return "" -} - -func (x *BucketAccessControl) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *BucketAccessControl) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *BucketAccessControl) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *BucketAccessControl) GetEntityId() string { - if x != nil { - return x.EntityId - } - return "" -} - -func (x *BucketAccessControl) GetEmail() string { - if x != nil { - return x.Email - } - return "" -} - -func (x *BucketAccessControl) GetDomain() string { - if x != nil { - return x.Domain - } - return "" -} - -func (x *BucketAccessControl) GetProjectTeam() *ProjectTeam { - if x != nil { - return x.ProjectTeam - } - return nil -} - -// The response to a call to BucketAccessControls.ListBucketAccessControls. -type ListBucketAccessControlsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The list of items. - Items []*BucketAccessControl `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` -} - -func (x *ListBucketAccessControlsResponse) Reset() { - *x = ListBucketAccessControlsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListBucketAccessControlsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListBucketAccessControlsResponse) ProtoMessage() {} - -func (x *ListBucketAccessControlsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListBucketAccessControlsResponse.ProtoReflect.Descriptor instead. -func (*ListBucketAccessControlsResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{2} -} - -func (x *ListBucketAccessControlsResponse) GetItems() []*BucketAccessControl { - if x != nil { - return x.Items - } - return nil -} - -// The result of a call to Buckets.ListBuckets -type ListBucketsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The list of items. - Items []*Bucket `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` - // The continuation token, used to page through large result sets. Provide - // this value in a subsequent request to return the next page of results. - NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` -} - -func (x *ListBucketsResponse) Reset() { - *x = ListBucketsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListBucketsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListBucketsResponse) ProtoMessage() {} - -func (x *ListBucketsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListBucketsResponse.ProtoReflect.Descriptor instead. -func (*ListBucketsResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{3} -} - -func (x *ListBucketsResponse) GetItems() []*Bucket { - if x != nil { - return x.Items - } - return nil -} - -func (x *ListBucketsResponse) GetNextPageToken() string { - if x != nil { - return x.NextPageToken - } - return "" -} - -// An notification channel used to watch for resource changes. -type Channel struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // A UUID or similar unique string that identifies this channel. - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - // An opaque ID that identifies the resource being watched on this channel. - // Stable across different API versions. - ResourceId string `protobuf:"bytes,2,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"` - // A version-specific identifier for the watched resource. - ResourceUri string `protobuf:"bytes,3,opt,name=resource_uri,json=resourceUri,proto3" json:"resource_uri,omitempty"` - // An arbitrary string delivered to the target address with each notification - // delivered over this channel. Optional. - Token string `protobuf:"bytes,4,opt,name=token,proto3" json:"token,omitempty"` - // Date and time of notification channel expiration. Optional. - Expiration *timestamp.Timestamp `protobuf:"bytes,5,opt,name=expiration,proto3" json:"expiration,omitempty"` - // The type of delivery mechanism used for this channel. - Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"` - // The address where notifications are delivered for this channel. - Address string `protobuf:"bytes,7,opt,name=address,proto3" json:"address,omitempty"` - // Additional parameters controlling delivery channel behavior. Optional. - Params map[string]string `protobuf:"bytes,8,rep,name=params,proto3" json:"params,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // A Boolean value to indicate whether payload is wanted. Optional. - Payload bool `protobuf:"varint,9,opt,name=payload,proto3" json:"payload,omitempty"` -} - -func (x *Channel) Reset() { - *x = Channel{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Channel) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Channel) ProtoMessage() {} - -func (x *Channel) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Channel.ProtoReflect.Descriptor instead. -func (*Channel) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{4} -} - -func (x *Channel) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *Channel) GetResourceId() string { - if x != nil { - return x.ResourceId - } - return "" -} - -func (x *Channel) GetResourceUri() string { - if x != nil { - return x.ResourceUri - } - return "" -} - -func (x *Channel) GetToken() string { - if x != nil { - return x.Token - } - return "" -} - -func (x *Channel) GetExpiration() *timestamp.Timestamp { - if x != nil { - return x.Expiration - } - return nil -} - -func (x *Channel) GetType() string { - if x != nil { - return x.Type - } - return "" -} - -func (x *Channel) GetAddress() string { - if x != nil { - return x.Address - } - return "" -} - -func (x *Channel) GetParams() map[string]string { - if x != nil { - return x.Params - } - return nil -} - -func (x *Channel) GetPayload() bool { - if x != nil { - return x.Payload - } - return false -} - -// The result of a call to Channels.ListChannels -type ListChannelsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The list of notification channels for a bucket. - Items []*ListChannelsResponse_Items `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` -} - -func (x *ListChannelsResponse) Reset() { - *x = ListChannelsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListChannelsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListChannelsResponse) ProtoMessage() {} - -func (x *ListChannelsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListChannelsResponse.ProtoReflect.Descriptor instead. -func (*ListChannelsResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{5} -} - -func (x *ListChannelsResponse) GetItems() []*ListChannelsResponse_Items { - if x != nil { - return x.Items - } - return nil -} - -// Message used to convey content being read or written, along with its -// checksum. -type ChecksummedData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The data. - Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"` - // CRC32C digest of the contents. - Crc32C *wrappers.UInt32Value `protobuf:"bytes,2,opt,name=crc32c,proto3" json:"crc32c,omitempty"` -} - -func (x *ChecksummedData) Reset() { - *x = ChecksummedData{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ChecksummedData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ChecksummedData) ProtoMessage() {} - -func (x *ChecksummedData) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ChecksummedData.ProtoReflect.Descriptor instead. -func (*ChecksummedData) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{6} -} - -func (x *ChecksummedData) GetContent() []byte { - if x != nil { - return x.Content - } - return nil -} - -func (x *ChecksummedData) GetCrc32C() *wrappers.UInt32Value { - if x != nil { - return x.Crc32C - } - return nil -} - -// Message used for storing full (not subrange) object checksums. -type ObjectChecksums struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // CRC32C digest of the object data. Computed by the GCS service for - // all written objects, and validated by the GCS service against - // client-supplied values if present in an InsertObjectRequest. - Crc32C *wrappers.UInt32Value `protobuf:"bytes,1,opt,name=crc32c,proto3" json:"crc32c,omitempty"` - // Hex-encoded MD5 hash of the object data (hexdigest). Whether/how this - // checksum is provided and validated is service-dependent. - Md5Hash string `protobuf:"bytes,2,opt,name=md5_hash,json=md5Hash,proto3" json:"md5_hash,omitempty"` -} - -func (x *ObjectChecksums) Reset() { - *x = ObjectChecksums{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ObjectChecksums) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ObjectChecksums) ProtoMessage() {} - -func (x *ObjectChecksums) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ObjectChecksums.ProtoReflect.Descriptor instead. -func (*ObjectChecksums) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{7} -} - -func (x *ObjectChecksums) GetCrc32C() *wrappers.UInt32Value { - if x != nil { - return x.Crc32C - } - return nil -} - -func (x *ObjectChecksums) GetMd5Hash() string { - if x != nil { - return x.Md5Hash - } - return "" -} - -// A collection of enums used in multiple places throughout the API. -type CommonEnums struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields -} - -func (x *CommonEnums) Reset() { - *x = CommonEnums{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *CommonEnums) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*CommonEnums) ProtoMessage() {} - -func (x *CommonEnums) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use CommonEnums.ProtoReflect.Descriptor instead. -func (*CommonEnums) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{8} -} - -// Specifies a requested range of bytes to download. -type ContentRange struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The starting offset of the object data. - Start int64 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"` - // The ending offset of the object data. - End int64 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"` - // The complete length of the object data. - CompleteLength int64 `protobuf:"varint,3,opt,name=complete_length,json=completeLength,proto3" json:"complete_length,omitempty"` -} - -func (x *ContentRange) Reset() { - *x = ContentRange{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ContentRange) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ContentRange) ProtoMessage() {} - -func (x *ContentRange) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ContentRange.ProtoReflect.Descriptor instead. -func (*ContentRange) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{9} -} - -func (x *ContentRange) GetStart() int64 { - if x != nil { - return x.Start - } - return 0 -} - -func (x *ContentRange) GetEnd() int64 { - if x != nil { - return x.End - } - return 0 -} - -func (x *ContentRange) GetCompleteLength() int64 { - if x != nil { - return x.CompleteLength - } - return 0 -} - -// Hmac Key Metadata, which includes all information other than the secret. -type HmacKeyMetadata struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Resource name ID of the key in the format /. - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - // Globally unique id for keys. - AccessId string `protobuf:"bytes,2,opt,name=access_id,json=accessId,proto3" json:"access_id,omitempty"` - // The project ID that the hmac key is contained in. - ProjectId string `protobuf:"bytes,3,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"` - // Email of the service account the key authenticates as. - ServiceAccountEmail string `protobuf:"bytes,4,opt,name=service_account_email,json=serviceAccountEmail,proto3" json:"service_account_email,omitempty"` - // State of the key. One of ACTIVE, INACTIVE, or DELETED. - State string `protobuf:"bytes,5,opt,name=state,proto3" json:"state,omitempty"` - // The creation time of the HMAC key in RFC 3339 format. - TimeCreated *timestamp.Timestamp `protobuf:"bytes,6,opt,name=time_created,json=timeCreated,proto3" json:"time_created,omitempty"` - // The last modification time of the HMAC key metadata in RFC 3339 format. - Updated *timestamp.Timestamp `protobuf:"bytes,7,opt,name=updated,proto3" json:"updated,omitempty"` - // Tag updated with each key update. - Etag string `protobuf:"bytes,8,opt,name=etag,proto3" json:"etag,omitempty"` -} - -func (x *HmacKeyMetadata) Reset() { - *x = HmacKeyMetadata{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *HmacKeyMetadata) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*HmacKeyMetadata) ProtoMessage() {} - -func (x *HmacKeyMetadata) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use HmacKeyMetadata.ProtoReflect.Descriptor instead. -func (*HmacKeyMetadata) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{10} -} - -func (x *HmacKeyMetadata) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *HmacKeyMetadata) GetAccessId() string { - if x != nil { - return x.AccessId - } - return "" -} - -func (x *HmacKeyMetadata) GetProjectId() string { - if x != nil { - return x.ProjectId - } - return "" -} - -func (x *HmacKeyMetadata) GetServiceAccountEmail() string { - if x != nil { - return x.ServiceAccountEmail - } - return "" -} - -func (x *HmacKeyMetadata) GetState() string { - if x != nil { - return x.State - } - return "" -} - -func (x *HmacKeyMetadata) GetTimeCreated() *timestamp.Timestamp { - if x != nil { - return x.TimeCreated - } - return nil -} - -func (x *HmacKeyMetadata) GetUpdated() *timestamp.Timestamp { - if x != nil { - return x.Updated - } - return nil -} - -func (x *HmacKeyMetadata) GetEtag() string { - if x != nil { - return x.Etag - } - return "" -} - -// A subscription to receive Google PubSub notifications. -type Notification struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The Cloud PubSub topic to which this subscription publishes. Formatted as: - // '//pubsub.googleapis.com/projects/{project-identifier}/topics/{my-topic}' - Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"` - // If present, only send notifications about listed event types. If empty, - // sent notifications for all event types. - EventTypes []string `protobuf:"bytes,2,rep,name=event_types,json=eventTypes,proto3" json:"event_types,omitempty"` - // An optional list of additional attributes to attach to each Cloud PubSub - // message published for this notification subscription. - CustomAttributes map[string]string `protobuf:"bytes,3,rep,name=custom_attributes,json=customAttributes,proto3" json:"custom_attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // HTTP 1.1 [https://tools.ietf.org/html/rfc7232#section-2.3][Entity tag] - // for this subscription notification. - Etag string `protobuf:"bytes,4,opt,name=etag,proto3" json:"etag,omitempty"` - // If present, only apply this notification configuration to object names that - // begin with this prefix. - ObjectNamePrefix string `protobuf:"bytes,5,opt,name=object_name_prefix,json=objectNamePrefix,proto3" json:"object_name_prefix,omitempty"` - // The desired content of the Payload. - PayloadFormat string `protobuf:"bytes,6,opt,name=payload_format,json=payloadFormat,proto3" json:"payload_format,omitempty"` - // The ID of the notification. - Id string `protobuf:"bytes,7,opt,name=id,proto3" json:"id,omitempty"` -} - -func (x *Notification) Reset() { - *x = Notification{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Notification) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Notification) ProtoMessage() {} - -func (x *Notification) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Notification.ProtoReflect.Descriptor instead. -func (*Notification) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{11} -} - -func (x *Notification) GetTopic() string { - if x != nil { - return x.Topic - } - return "" -} - -func (x *Notification) GetEventTypes() []string { - if x != nil { - return x.EventTypes - } - return nil -} - -func (x *Notification) GetCustomAttributes() map[string]string { - if x != nil { - return x.CustomAttributes - } - return nil -} - -func (x *Notification) GetEtag() string { - if x != nil { - return x.Etag - } - return "" -} - -func (x *Notification) GetObjectNamePrefix() string { - if x != nil { - return x.ObjectNamePrefix - } - return "" -} - -func (x *Notification) GetPayloadFormat() string { - if x != nil { - return x.PayloadFormat - } - return "" -} - -func (x *Notification) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -// The result of a call to Notifications.ListNotifications -type ListNotificationsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The list of items. - Items []*Notification `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` -} - -func (x *ListNotificationsResponse) Reset() { - *x = ListNotificationsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListNotificationsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListNotificationsResponse) ProtoMessage() {} - -func (x *ListNotificationsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListNotificationsResponse.ProtoReflect.Descriptor instead. -func (*ListNotificationsResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{12} -} - -func (x *ListNotificationsResponse) GetItems() []*Notification { - if x != nil { - return x.Items - } - return nil -} - -// An object. -type Object struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Content-Encoding of the object data, matching - // [https://tools.ietf.org/html/rfc7231#section-3.1.2.2][RFC 7231 §3.1.2.2] - ContentEncoding string `protobuf:"bytes,1,opt,name=content_encoding,json=contentEncoding,proto3" json:"content_encoding,omitempty"` - // Content-Disposition of the object data, matching - // [https://tools.ietf.org/html/rfc6266][RFC 6266]. - ContentDisposition string `protobuf:"bytes,2,opt,name=content_disposition,json=contentDisposition,proto3" json:"content_disposition,omitempty"` - // Cache-Control directive for the object data, matching - // [https://tools.ietf.org/html/rfc7234#section-5.2"][RFC 7234 §5.2]. - // If omitted, and the object is accessible to all anonymous users, the - // default will be `public, max-age=3600`. - CacheControl string `protobuf:"bytes,3,opt,name=cache_control,json=cacheControl,proto3" json:"cache_control,omitempty"` - // Access controls on the object. - Acl []*ObjectAccessControl `protobuf:"bytes,4,rep,name=acl,proto3" json:"acl,omitempty"` - // Content-Language of the object data, matching - // [https://tools.ietf.org/html/rfc7231#section-3.1.3.2][RFC 7231 §3.1.3.2]. - ContentLanguage string `protobuf:"bytes,5,opt,name=content_language,json=contentLanguage,proto3" json:"content_language,omitempty"` - // The version of the metadata for this object at this generation. Used for - // preconditions and for detecting changes in metadata. A metageneration - // number is only meaningful in the context of a particular generation of a - // particular object. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Metageneration int64 `protobuf:"varint,6,opt,name=metageneration,proto3" json:"metageneration,omitempty"` - // The deletion time of the object. Will be returned if and only if this - // version of the object has been deleted. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - TimeDeleted *timestamp.Timestamp `protobuf:"bytes,7,opt,name=time_deleted,json=timeDeleted,proto3" json:"time_deleted,omitempty"` - // Content-Type of the object data, matching - // [https://tools.ietf.org/html/rfc7231#section-3.1.1.5][RFC 7231 §3.1.1.5]. - // If an object is stored without a Content-Type, it is served as - // `application/octet-stream`. - ContentType string `protobuf:"bytes,8,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"` - // Content-Length of the object data in bytes, matching - // [https://tools.ietf.org/html/rfc7230#section-3.3.2][RFC 7230 §3.3.2]. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Size int64 `protobuf:"varint,9,opt,name=size,proto3" json:"size,omitempty"` - // The creation time of the object. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - TimeCreated *timestamp.Timestamp `protobuf:"bytes,10,opt,name=time_created,json=timeCreated,proto3" json:"time_created,omitempty"` - // CRC32c checksum. For more information about using the CRC32c - // checksum, see - // [https://cloud.google.com/storage/docs/hashes-etags#json-api][Hashes and - // ETags: Best Practices]. This is a server determined value and should not be - // supplied by the user when sending an Object. The server will ignore any - // value provided. Users should instead use the object_checksums field on the - // InsertObjectRequest when uploading an object. - Crc32C *wrappers.UInt32Value `protobuf:"bytes,11,opt,name=crc32c,proto3" json:"crc32c,omitempty"` - // Number of underlying components that make up this object. Components are - // accumulated by compose operations. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - ComponentCount int32 `protobuf:"varint,12,opt,name=component_count,json=componentCount,proto3" json:"component_count,omitempty"` - // MD5 hash of the data; encoded using base64 as per - // [https://tools.ietf.org/html/rfc4648#section-4][RFC 4648 §4]. For more - // information about using the MD5 hash, see - // [https://cloud.google.com/storage/docs/hashes-etags#json-api][Hashes and - // ETags: Best Practices]. This is a server determined value and should not be - // supplied by the user when sending an Object. The server will ignore any - // value provided. Users should instead use the object_checksums field on the - // InsertObjectRequest when uploading an object. - Md5Hash string `protobuf:"bytes,13,opt,name=md5_hash,json=md5Hash,proto3" json:"md5_hash,omitempty"` - // HTTP 1.1 Entity tag for the object. See - // [https://tools.ietf.org/html/rfc7232#section-2.3][RFC 7232 §2.3]. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Etag string `protobuf:"bytes,14,opt,name=etag,proto3" json:"etag,omitempty"` - // The modification time of the object metadata. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Updated *timestamp.Timestamp `protobuf:"bytes,15,opt,name=updated,proto3" json:"updated,omitempty"` - // Storage class of the object. - StorageClass string `protobuf:"bytes,16,opt,name=storage_class,json=storageClass,proto3" json:"storage_class,omitempty"` - // Cloud KMS Key used to encrypt this object, if the object is encrypted by - // such a key. - KmsKeyName string `protobuf:"bytes,17,opt,name=kms_key_name,json=kmsKeyName,proto3" json:"kms_key_name,omitempty"` - // The time at which the object's storage class was last changed. When the - // object is initially created, it will be set to time_created. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - TimeStorageClassUpdated *timestamp.Timestamp `protobuf:"bytes,18,opt,name=time_storage_class_updated,json=timeStorageClassUpdated,proto3" json:"time_storage_class_updated,omitempty"` - // Whether an object is under temporary hold. While this flag is set to true, - // the object is protected against deletion and overwrites. A common use case - // of this flag is regulatory investigations where objects need to be retained - // while the investigation is ongoing. Note that unlike event-based hold, - // temporary hold does not impact retention expiration time of an object. - TemporaryHold bool `protobuf:"varint,19,opt,name=temporary_hold,json=temporaryHold,proto3" json:"temporary_hold,omitempty"` - // A server-determined value that specifies the earliest time that the - // object's retention period expires. This value is in - // [https://tools.ietf.org/html/rfc3339][RFC 3339] format. - // Note 1: This field is not provided for objects with an active event-based - // hold, since retention expiration is unknown until the hold is removed. - // Note 2: This value can be provided even when temporary hold is set (so that - // the user can reason about policy without having to first unset the - // temporary hold). - RetentionExpirationTime *timestamp.Timestamp `protobuf:"bytes,20,opt,name=retention_expiration_time,json=retentionExpirationTime,proto3" json:"retention_expiration_time,omitempty"` - // User-provided metadata, in key/value pairs. - Metadata map[string]string `protobuf:"bytes,21,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` - // Whether an object is under event-based hold. Event-based hold is a way to - // retain objects until an event occurs, which is signified by the - // hold's release (i.e. this value is set to false). After being released (set - // to false), such objects will be subject to bucket-level retention (if any). - // One sample use case of this flag is for banks to hold loan documents for at - // least 3 years after loan is paid in full. Here, bucket-level retention is 3 - // years and the event is the loan being paid in full. In this example, these - // objects will be held intact for any number of years until the event has - // occurred (event-based hold on the object is released) and then 3 more years - // after that. That means retention duration of the objects begins from the - // moment event-based hold transitioned from true to false. - EventBasedHold *wrappers.BoolValue `protobuf:"bytes,29,opt,name=event_based_hold,json=eventBasedHold,proto3" json:"event_based_hold,omitempty"` - // The name of the object. - // Attempting to update this field after the object is created will result in - // an error. - Name string `protobuf:"bytes,23,opt,name=name,proto3" json:"name,omitempty"` - // The ID of the object, including the bucket name, object name, and - // generation number. - // Attempting to update this field after the object is created will result in - // an error. - Id string `protobuf:"bytes,24,opt,name=id,proto3" json:"id,omitempty"` - // The name of the bucket containing this object. - // Attempting to update this field after the object is created will result in - // an error. - Bucket string `protobuf:"bytes,25,opt,name=bucket,proto3" json:"bucket,omitempty"` - // The content generation of this object. Used for object versioning. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Generation int64 `protobuf:"varint,26,opt,name=generation,proto3" json:"generation,omitempty"` - // The owner of the object. This will always be the uploader of the object. - // Attempting to set or update this field will result in a - // [FieldViolation][google.rpc.BadRequest.FieldViolation]. - Owner *Owner `protobuf:"bytes,27,opt,name=owner,proto3" json:"owner,omitempty"` - // Metadata of customer-supplied encryption key, if the object is encrypted by - // such a key. - CustomerEncryption *Object_CustomerEncryption `protobuf:"bytes,28,opt,name=customer_encryption,json=customerEncryption,proto3" json:"customer_encryption,omitempty"` - // A user-specified timestamp set on an object. - CustomTime *timestamp.Timestamp `protobuf:"bytes,30,opt,name=custom_time,json=customTime,proto3" json:"custom_time,omitempty"` -} - -func (x *Object) Reset() { - *x = Object{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Object) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Object) ProtoMessage() {} - -func (x *Object) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Object.ProtoReflect.Descriptor instead. -func (*Object) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{13} -} - -func (x *Object) GetContentEncoding() string { - if x != nil { - return x.ContentEncoding - } - return "" -} - -func (x *Object) GetContentDisposition() string { - if x != nil { - return x.ContentDisposition - } - return "" -} - -func (x *Object) GetCacheControl() string { - if x != nil { - return x.CacheControl - } - return "" -} - -func (x *Object) GetAcl() []*ObjectAccessControl { - if x != nil { - return x.Acl - } - return nil -} - -func (x *Object) GetContentLanguage() string { - if x != nil { - return x.ContentLanguage - } - return "" -} - -func (x *Object) GetMetageneration() int64 { - if x != nil { - return x.Metageneration - } - return 0 -} - -func (x *Object) GetTimeDeleted() *timestamp.Timestamp { - if x != nil { - return x.TimeDeleted - } - return nil -} - -func (x *Object) GetContentType() string { - if x != nil { - return x.ContentType - } - return "" -} - -func (x *Object) GetSize() int64 { - if x != nil { - return x.Size - } - return 0 -} - -func (x *Object) GetTimeCreated() *timestamp.Timestamp { - if x != nil { - return x.TimeCreated - } - return nil -} - -func (x *Object) GetCrc32C() *wrappers.UInt32Value { - if x != nil { - return x.Crc32C - } - return nil -} - -func (x *Object) GetComponentCount() int32 { - if x != nil { - return x.ComponentCount - } - return 0 -} - -func (x *Object) GetMd5Hash() string { - if x != nil { - return x.Md5Hash - } - return "" -} - -func (x *Object) GetEtag() string { - if x != nil { - return x.Etag - } - return "" -} - -func (x *Object) GetUpdated() *timestamp.Timestamp { - if x != nil { - return x.Updated - } - return nil -} - -func (x *Object) GetStorageClass() string { - if x != nil { - return x.StorageClass - } - return "" -} - -func (x *Object) GetKmsKeyName() string { - if x != nil { - return x.KmsKeyName - } - return "" -} - -func (x *Object) GetTimeStorageClassUpdated() *timestamp.Timestamp { - if x != nil { - return x.TimeStorageClassUpdated - } - return nil -} - -func (x *Object) GetTemporaryHold() bool { - if x != nil { - return x.TemporaryHold - } - return false -} - -func (x *Object) GetRetentionExpirationTime() *timestamp.Timestamp { - if x != nil { - return x.RetentionExpirationTime - } - return nil -} - -func (x *Object) GetMetadata() map[string]string { - if x != nil { - return x.Metadata - } - return nil -} - -func (x *Object) GetEventBasedHold() *wrappers.BoolValue { - if x != nil { - return x.EventBasedHold - } - return nil -} - -func (x *Object) GetName() string { - if x != nil { - return x.Name - } - return "" -} - -func (x *Object) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *Object) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *Object) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *Object) GetOwner() *Owner { - if x != nil { - return x.Owner - } - return nil -} - -func (x *Object) GetCustomerEncryption() *Object_CustomerEncryption { - if x != nil { - return x.CustomerEncryption - } - return nil -} - -func (x *Object) GetCustomTime() *timestamp.Timestamp { - if x != nil { - return x.CustomTime - } - return nil -} - -// An access-control entry. -type ObjectAccessControl struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The access permission for the entity. - Role string `protobuf:"bytes,1,opt,name=role,proto3" json:"role,omitempty"` - // HTTP 1.1 Entity tag for the access-control entry. - // See [https://tools.ietf.org/html/rfc7232#section-2.3][RFC 7232 §2.3]. - Etag string `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"` - // The ID of the access-control entry. - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - // The name of the bucket. - Bucket string `protobuf:"bytes,4,opt,name=bucket,proto3" json:"bucket,omitempty"` - // The name of the object, if applied to an object. - Object string `protobuf:"bytes,5,opt,name=object,proto3" json:"object,omitempty"` - // The content generation of the object, if applied to an object. - Generation int64 `protobuf:"varint,6,opt,name=generation,proto3" json:"generation,omitempty"` - // The entity holding the permission, in one of the following forms: - // * `user-{userid}` - // * `user-{email}` - // * `group-{groupid}` - // * `group-{email}` - // * `domain-{domain}` - // * `project-{team-projectid}` - // * `allUsers` - // * `allAuthenticatedUsers` - // Examples: - // * The user `liz@example.com` would be `user-liz@example.com`. - // * The group `example@googlegroups.com` would be - // `group-example@googlegroups.com`. - // * All members of the Google Apps for Business domain `example.com` would be - // `domain-example.com`. - Entity string `protobuf:"bytes,7,opt,name=entity,proto3" json:"entity,omitempty"` - // The ID for the entity, if any. - EntityId string `protobuf:"bytes,8,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"` - // The email address associated with the entity, if any. - Email string `protobuf:"bytes,9,opt,name=email,proto3" json:"email,omitempty"` - // The domain associated with the entity, if any. - Domain string `protobuf:"bytes,10,opt,name=domain,proto3" json:"domain,omitempty"` - // The project team associated with the entity, if any. - ProjectTeam *ProjectTeam `protobuf:"bytes,11,opt,name=project_team,json=projectTeam,proto3" json:"project_team,omitempty"` -} - -func (x *ObjectAccessControl) Reset() { - *x = ObjectAccessControl{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ObjectAccessControl) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ObjectAccessControl) ProtoMessage() {} - -func (x *ObjectAccessControl) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[14] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ObjectAccessControl.ProtoReflect.Descriptor instead. -func (*ObjectAccessControl) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{14} -} - -func (x *ObjectAccessControl) GetRole() string { - if x != nil { - return x.Role - } - return "" -} - -func (x *ObjectAccessControl) GetEtag() string { - if x != nil { - return x.Etag - } - return "" -} - -func (x *ObjectAccessControl) GetId() string { - if x != nil { - return x.Id - } - return "" -} - -func (x *ObjectAccessControl) GetBucket() string { - if x != nil { - return x.Bucket - } - return "" -} - -func (x *ObjectAccessControl) GetObject() string { - if x != nil { - return x.Object - } - return "" -} - -func (x *ObjectAccessControl) GetGeneration() int64 { - if x != nil { - return x.Generation - } - return 0 -} - -func (x *ObjectAccessControl) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *ObjectAccessControl) GetEntityId() string { - if x != nil { - return x.EntityId - } - return "" -} - -func (x *ObjectAccessControl) GetEmail() string { - if x != nil { - return x.Email - } - return "" -} - -func (x *ObjectAccessControl) GetDomain() string { - if x != nil { - return x.Domain - } - return "" -} - -func (x *ObjectAccessControl) GetProjectTeam() *ProjectTeam { - if x != nil { - return x.ProjectTeam - } - return nil -} - -// The result of a call to ObjectAccessControls.ListObjectAccessControls. -type ListObjectAccessControlsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The list of items. - Items []*ObjectAccessControl `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"` -} - -func (x *ListObjectAccessControlsResponse) Reset() { - *x = ListObjectAccessControlsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListObjectAccessControlsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListObjectAccessControlsResponse) ProtoMessage() {} - -func (x *ListObjectAccessControlsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[15] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListObjectAccessControlsResponse.ProtoReflect.Descriptor instead. -func (*ListObjectAccessControlsResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{15} -} - -func (x *ListObjectAccessControlsResponse) GetItems() []*ObjectAccessControl { - if x != nil { - return x.Items - } - return nil -} - -// The result of a call to Objects.ListObjects -type ListObjectsResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The list of prefixes of objects matching-but-not-listed up to and including - // the requested delimiter. - Prefixes []string `protobuf:"bytes,1,rep,name=prefixes,proto3" json:"prefixes,omitempty"` - // The list of items. - Items []*Object `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"` - // The continuation token, used to page through large result sets. Provide - // this value in a subsequent request to return the next page of results. - NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` -} - -func (x *ListObjectsResponse) Reset() { - *x = ListObjectsResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListObjectsResponse) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListObjectsResponse) ProtoMessage() {} - -func (x *ListObjectsResponse) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[16] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListObjectsResponse.ProtoReflect.Descriptor instead. -func (*ListObjectsResponse) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{16} -} - -func (x *ListObjectsResponse) GetPrefixes() []string { - if x != nil { - return x.Prefixes - } - return nil -} - -func (x *ListObjectsResponse) GetItems() []*Object { - if x != nil { - return x.Items - } - return nil -} - -func (x *ListObjectsResponse) GetNextPageToken() string { - if x != nil { - return x.NextPageToken - } - return "" -} - -// Represents the Viewers, Editors, or Owners of a given project. -type ProjectTeam struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The project number. - ProjectNumber string `protobuf:"bytes,1,opt,name=project_number,json=projectNumber,proto3" json:"project_number,omitempty"` - // The team. - Team string `protobuf:"bytes,2,opt,name=team,proto3" json:"team,omitempty"` -} - -func (x *ProjectTeam) Reset() { - *x = ProjectTeam{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ProjectTeam) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ProjectTeam) ProtoMessage() {} - -func (x *ProjectTeam) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[17] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ProjectTeam.ProtoReflect.Descriptor instead. -func (*ProjectTeam) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{17} -} - -func (x *ProjectTeam) GetProjectNumber() string { - if x != nil { - return x.ProjectNumber - } - return "" -} - -func (x *ProjectTeam) GetTeam() string { - if x != nil { - return x.Team - } - return "" -} - -// A subscription to receive Google PubSub notifications. -type ServiceAccount struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The ID of the notification. - EmailAddress string `protobuf:"bytes,1,opt,name=email_address,json=emailAddress,proto3" json:"email_address,omitempty"` -} - -func (x *ServiceAccount) Reset() { - *x = ServiceAccount{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ServiceAccount) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ServiceAccount) ProtoMessage() {} - -func (x *ServiceAccount) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[18] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ServiceAccount.ProtoReflect.Descriptor instead. -func (*ServiceAccount) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{18} -} - -func (x *ServiceAccount) GetEmailAddress() string { - if x != nil { - return x.EmailAddress - } - return "" -} - -// The owner of a specific resource. -type Owner struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The entity, in the form `user-`*userId*. - Entity string `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"` - // The ID for the entity. - EntityId string `protobuf:"bytes,2,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"` -} - -func (x *Owner) Reset() { - *x = Owner{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Owner) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Owner) ProtoMessage() {} - -func (x *Owner) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[19] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Owner.ProtoReflect.Descriptor instead. -func (*Owner) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{19} -} - -func (x *Owner) GetEntity() string { - if x != nil { - return x.Entity - } - return "" -} - -func (x *Owner) GetEntityId() string { - if x != nil { - return x.EntityId - } - return "" -} - -// Billing properties of a bucket. -type Bucket_Billing struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // When set to true, Requester Pays is enabled for this bucket. - RequesterPays bool `protobuf:"varint,1,opt,name=requester_pays,json=requesterPays,proto3" json:"requester_pays,omitempty"` -} - -func (x *Bucket_Billing) Reset() { - *x = Bucket_Billing{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Billing) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Billing) ProtoMessage() {} - -func (x *Bucket_Billing) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[20] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Billing.ProtoReflect.Descriptor instead. -func (*Bucket_Billing) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 0} -} - -func (x *Bucket_Billing) GetRequesterPays() bool { - if x != nil { - return x.RequesterPays - } - return false -} - -// Cross-Origin Response sharing (CORS) properties for a bucket. -// For more on GCS and CORS, see -// https://cloud.google.com/storage/docs/cross-origin. -// For more on CORS in general, see https://tools.ietf.org/html/rfc6454. -type Bucket_Cors struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The list of Origins eligible to receive CORS response headers. See - // [https://tools.ietf.org/html/rfc6454][RFC 6454] for more on origins. - // Note: "*" is permitted in the list of origins, and means "any Origin". - Origin []string `protobuf:"bytes,1,rep,name=origin,proto3" json:"origin,omitempty"` - // The list of HTTP methods on which to include CORS response headers, - // (`GET`, `OPTIONS`, `POST`, etc) Note: "*" is permitted in the list of - // methods, and means "any method". - Method []string `protobuf:"bytes,2,rep,name=method,proto3" json:"method,omitempty"` - // The list of HTTP headers other than the - // [https://www.w3.org/TR/cors/#simple-response-header][simple response - // headers] to give permission for the user-agent to share across domains. - ResponseHeader []string `protobuf:"bytes,3,rep,name=response_header,json=responseHeader,proto3" json:"response_header,omitempty"` - // The value, in seconds, to return in the - // [https://www.w3.org/TR/cors/#access-control-max-age-response-header][Access-Control-Max-Age - // header] used in preflight responses. - MaxAgeSeconds int32 `protobuf:"varint,4,opt,name=max_age_seconds,json=maxAgeSeconds,proto3" json:"max_age_seconds,omitempty"` -} - -func (x *Bucket_Cors) Reset() { - *x = Bucket_Cors{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Cors) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Cors) ProtoMessage() {} - -func (x *Bucket_Cors) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[21] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Cors.ProtoReflect.Descriptor instead. -func (*Bucket_Cors) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 1} -} - -func (x *Bucket_Cors) GetOrigin() []string { - if x != nil { - return x.Origin - } - return nil -} - -func (x *Bucket_Cors) GetMethod() []string { - if x != nil { - return x.Method - } - return nil -} - -func (x *Bucket_Cors) GetResponseHeader() []string { - if x != nil { - return x.ResponseHeader - } - return nil -} - -func (x *Bucket_Cors) GetMaxAgeSeconds() int32 { - if x != nil { - return x.MaxAgeSeconds - } - return 0 -} - -// Encryption properties of a bucket. -type Bucket_Encryption struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // A Cloud KMS key that will be used to encrypt objects inserted into this - // bucket, if no encryption method is specified. - DefaultKmsKeyName string `protobuf:"bytes,1,opt,name=default_kms_key_name,json=defaultKmsKeyName,proto3" json:"default_kms_key_name,omitempty"` -} - -func (x *Bucket_Encryption) Reset() { - *x = Bucket_Encryption{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Encryption) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Encryption) ProtoMessage() {} - -func (x *Bucket_Encryption) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[22] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Encryption.ProtoReflect.Descriptor instead. -func (*Bucket_Encryption) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 2} -} - -func (x *Bucket_Encryption) GetDefaultKmsKeyName() string { - if x != nil { - return x.DefaultKmsKeyName - } - return "" -} - -// Bucket restriction options currently enforced on the bucket. -type Bucket_IamConfiguration struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - UniformBucketLevelAccess *Bucket_IamConfiguration_UniformBucketLevelAccess `protobuf:"bytes,1,opt,name=uniform_bucket_level_access,json=uniformBucketLevelAccess,proto3" json:"uniform_bucket_level_access,omitempty"` - // Whether IAM will enforce public access prevention. - PublicAccessPrevention Bucket_IamConfiguration_PublicAccessPrevention `protobuf:"varint,2,opt,name=public_access_prevention,json=publicAccessPrevention,proto3,enum=google.storage.v1.Bucket_IamConfiguration_PublicAccessPrevention" json:"public_access_prevention,omitempty"` -} - -func (x *Bucket_IamConfiguration) Reset() { - *x = Bucket_IamConfiguration{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_IamConfiguration) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_IamConfiguration) ProtoMessage() {} - -func (x *Bucket_IamConfiguration) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[23] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_IamConfiguration.ProtoReflect.Descriptor instead. -func (*Bucket_IamConfiguration) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 3} -} - -func (x *Bucket_IamConfiguration) GetUniformBucketLevelAccess() *Bucket_IamConfiguration_UniformBucketLevelAccess { - if x != nil { - return x.UniformBucketLevelAccess - } - return nil -} - -func (x *Bucket_IamConfiguration) GetPublicAccessPrevention() Bucket_IamConfiguration_PublicAccessPrevention { - if x != nil { - return x.PublicAccessPrevention - } - return Bucket_IamConfiguration_PUBLIC_ACCESS_PREVENTION_UNSPECIFIED -} - -// Lifecycle properties of a bucket. -// For more information, see https://cloud.google.com/storage/docs/lifecycle. -type Bucket_Lifecycle struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // A lifecycle management rule, which is made of an action to take and the - // condition(s) under which the action will be taken. - Rule []*Bucket_Lifecycle_Rule `protobuf:"bytes,1,rep,name=rule,proto3" json:"rule,omitempty"` -} - -func (x *Bucket_Lifecycle) Reset() { - *x = Bucket_Lifecycle{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Lifecycle) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Lifecycle) ProtoMessage() {} - -func (x *Bucket_Lifecycle) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[24] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Lifecycle.ProtoReflect.Descriptor instead. -func (*Bucket_Lifecycle) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 4} -} - -func (x *Bucket_Lifecycle) GetRule() []*Bucket_Lifecycle_Rule { - if x != nil { - return x.Rule - } - return nil -} - -// Logging-related properties of a bucket. -type Bucket_Logging struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The destination bucket where the current bucket's logs should be placed. - LogBucket string `protobuf:"bytes,1,opt,name=log_bucket,json=logBucket,proto3" json:"log_bucket,omitempty"` - // A prefix for log object names. - LogObjectPrefix string `protobuf:"bytes,2,opt,name=log_object_prefix,json=logObjectPrefix,proto3" json:"log_object_prefix,omitempty"` -} - -func (x *Bucket_Logging) Reset() { - *x = Bucket_Logging{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Logging) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Logging) ProtoMessage() {} - -func (x *Bucket_Logging) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[25] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Logging.ProtoReflect.Descriptor instead. -func (*Bucket_Logging) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 5} -} - -func (x *Bucket_Logging) GetLogBucket() string { - if x != nil { - return x.LogBucket - } - return "" -} - -func (x *Bucket_Logging) GetLogObjectPrefix() string { - if x != nil { - return x.LogObjectPrefix - } - return "" -} - -// Retention policy properties of a bucket. -type Bucket_RetentionPolicy struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Server-determined value that indicates the time from which policy was - // enforced and effective. This value is in - // [https://tools.ietf.org/html/rfc3339][RFC 3339] format. - EffectiveTime *timestamp.Timestamp `protobuf:"bytes,1,opt,name=effective_time,json=effectiveTime,proto3" json:"effective_time,omitempty"` - // Once locked, an object retention policy cannot be modified. - IsLocked bool `protobuf:"varint,2,opt,name=is_locked,json=isLocked,proto3" json:"is_locked,omitempty"` - // The duration in seconds that objects need to be retained. Retention - // duration must be greater than zero and less than 100 years. Note that - // enforcement of retention periods less than a day is not guaranteed. Such - // periods should only be used for testing purposes. - RetentionPeriod int64 `protobuf:"varint,3,opt,name=retention_period,json=retentionPeriod,proto3" json:"retention_period,omitempty"` -} - -func (x *Bucket_RetentionPolicy) Reset() { - *x = Bucket_RetentionPolicy{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_RetentionPolicy) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_RetentionPolicy) ProtoMessage() {} - -func (x *Bucket_RetentionPolicy) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[26] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_RetentionPolicy.ProtoReflect.Descriptor instead. -func (*Bucket_RetentionPolicy) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 6} -} - -func (x *Bucket_RetentionPolicy) GetEffectiveTime() *timestamp.Timestamp { - if x != nil { - return x.EffectiveTime - } - return nil -} - -func (x *Bucket_RetentionPolicy) GetIsLocked() bool { - if x != nil { - return x.IsLocked - } - return false -} - -func (x *Bucket_RetentionPolicy) GetRetentionPeriod() int64 { - if x != nil { - return x.RetentionPeriod - } - return 0 -} - -// Properties of a bucket related to versioning. -// For more on GCS versioning, see -// https://cloud.google.com/storage/docs/object-versioning. -type Bucket_Versioning struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // While set to true, versioning is fully enabled for this bucket. - Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` -} - -func (x *Bucket_Versioning) Reset() { - *x = Bucket_Versioning{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Versioning) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Versioning) ProtoMessage() {} - -func (x *Bucket_Versioning) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[27] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Versioning.ProtoReflect.Descriptor instead. -func (*Bucket_Versioning) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 7} -} - -func (x *Bucket_Versioning) GetEnabled() bool { - if x != nil { - return x.Enabled - } - return false -} - -// Properties of a bucket related to accessing the contents as a static -// website. For more on hosting a static website via GCS, see -// https://cloud.google.com/storage/docs/hosting-static-website. -type Bucket_Website struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // If the requested object path is missing, the service will ensure the path - // has a trailing '/', append this suffix, and attempt to retrieve the - // resulting object. This allows the creation of `index.html` - // objects to represent directory pages. - MainPageSuffix string `protobuf:"bytes,1,opt,name=main_page_suffix,json=mainPageSuffix,proto3" json:"main_page_suffix,omitempty"` - // If the requested object path is missing, and any - // `mainPageSuffix` object is missing, if applicable, the service - // will return the named object from this bucket as the content for a - // [https://tools.ietf.org/html/rfc7231#section-6.5.4][404 Not Found] - // result. - NotFoundPage string `protobuf:"bytes,2,opt,name=not_found_page,json=notFoundPage,proto3" json:"not_found_page,omitempty"` -} - -func (x *Bucket_Website) Reset() { - *x = Bucket_Website{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Website) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Website) ProtoMessage() {} - -func (x *Bucket_Website) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[28] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Website.ProtoReflect.Descriptor instead. -func (*Bucket_Website) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 8} -} - -func (x *Bucket_Website) GetMainPageSuffix() string { - if x != nil { - return x.MainPageSuffix - } - return "" -} - -func (x *Bucket_Website) GetNotFoundPage() string { - if x != nil { - return x.NotFoundPage - } - return "" -} - -// Configuration for a bucket's Autoclass feature. -type Bucket_Autoclass struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Enables Autoclass. - Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` - // Latest instant at which the `enabled` bit was flipped. - ToggleTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=toggle_time,json=toggleTime,proto3" json:"toggle_time,omitempty"` -} - -func (x *Bucket_Autoclass) Reset() { - *x = Bucket_Autoclass{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Autoclass) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Autoclass) ProtoMessage() {} - -func (x *Bucket_Autoclass) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[29] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Autoclass.ProtoReflect.Descriptor instead. -func (*Bucket_Autoclass) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 9} -} - -func (x *Bucket_Autoclass) GetEnabled() bool { - if x != nil { - return x.Enabled - } - return false -} - -func (x *Bucket_Autoclass) GetToggleTime() *timestamp.Timestamp { - if x != nil { - return x.ToggleTime - } - return nil -} - -type Bucket_IamConfiguration_UniformBucketLevelAccess struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // If set, access checks only use bucket-level IAM policies or above. - Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"` - // The deadline time for changing - // iamConfiguration.uniformBucketLevelAccess.enabled from - // true to false in [https://tools.ietf.org/html/rfc3339][RFC 3339]. After - // the deadline is passed the field is immutable. - LockedTime *timestamp.Timestamp `protobuf:"bytes,2,opt,name=locked_time,json=lockedTime,proto3" json:"locked_time,omitempty"` -} - -func (x *Bucket_IamConfiguration_UniformBucketLevelAccess) Reset() { - *x = Bucket_IamConfiguration_UniformBucketLevelAccess{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_IamConfiguration_UniformBucketLevelAccess) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_IamConfiguration_UniformBucketLevelAccess) ProtoMessage() {} - -func (x *Bucket_IamConfiguration_UniformBucketLevelAccess) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[31] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_IamConfiguration_UniformBucketLevelAccess.ProtoReflect.Descriptor instead. -func (*Bucket_IamConfiguration_UniformBucketLevelAccess) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 3, 0} -} - -func (x *Bucket_IamConfiguration_UniformBucketLevelAccess) GetEnabled() bool { - if x != nil { - return x.Enabled - } - return false -} - -func (x *Bucket_IamConfiguration_UniformBucketLevelAccess) GetLockedTime() *timestamp.Timestamp { - if x != nil { - return x.LockedTime - } - return nil -} - -// A lifecycle Rule, combining an action to take on an object and a -// condition which will trigger that action. -type Bucket_Lifecycle_Rule struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The action to take. - Action *Bucket_Lifecycle_Rule_Action `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"` - // The condition(s) under which the action will be taken. - Condition *Bucket_Lifecycle_Rule_Condition `protobuf:"bytes,2,opt,name=condition,proto3" json:"condition,omitempty"` -} - -func (x *Bucket_Lifecycle_Rule) Reset() { - *x = Bucket_Lifecycle_Rule{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Lifecycle_Rule) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Lifecycle_Rule) ProtoMessage() {} - -func (x *Bucket_Lifecycle_Rule) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[32] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Lifecycle_Rule.ProtoReflect.Descriptor instead. -func (*Bucket_Lifecycle_Rule) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 4, 0} -} - -func (x *Bucket_Lifecycle_Rule) GetAction() *Bucket_Lifecycle_Rule_Action { - if x != nil { - return x.Action - } - return nil -} - -func (x *Bucket_Lifecycle_Rule) GetCondition() *Bucket_Lifecycle_Rule_Condition { - if x != nil { - return x.Condition - } - return nil -} - -// An action to take on an object. -type Bucket_Lifecycle_Rule_Action struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Type of the action. Currently, only `Delete`, `SetStorageClass`, and - // `AbortIncompleteMultipartUpload` are supported. - Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` - // Target storage class. Required iff the type of the action is - // SetStorageClass. - StorageClass string `protobuf:"bytes,2,opt,name=storage_class,json=storageClass,proto3" json:"storage_class,omitempty"` -} - -func (x *Bucket_Lifecycle_Rule_Action) Reset() { - *x = Bucket_Lifecycle_Rule_Action{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Lifecycle_Rule_Action) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Lifecycle_Rule_Action) ProtoMessage() {} - -func (x *Bucket_Lifecycle_Rule_Action) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[33] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Lifecycle_Rule_Action.ProtoReflect.Descriptor instead. -func (*Bucket_Lifecycle_Rule_Action) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 4, 0, 0} -} - -func (x *Bucket_Lifecycle_Rule_Action) GetType() string { - if x != nil { - return x.Type - } - return "" -} - -func (x *Bucket_Lifecycle_Rule_Action) GetStorageClass() string { - if x != nil { - return x.StorageClass - } - return "" -} - -// A condition of an object which triggers some action. -type Bucket_Lifecycle_Rule_Condition struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Age of an object (in days). This condition is satisfied when an - // object reaches the specified age. - Age int32 `protobuf:"varint,1,opt,name=age,proto3" json:"age,omitempty"` - // A date in [RFC 3339][1] format with only the date part (for - // instance, "2013-01-15"). This condition is satisfied when an - // object is created before midnight of the specified date in UTC. - // [1]: https://tools.ietf.org/html/rfc3339 - CreatedBefore *timestamp.Timestamp `protobuf:"bytes,2,opt,name=created_before,json=createdBefore,proto3" json:"created_before,omitempty"` - // Relevant only for versioned objects. If the value is - // `true`, this condition matches live objects; if the value - // is `false`, it matches archived objects. - IsLive *wrappers.BoolValue `protobuf:"bytes,3,opt,name=is_live,json=isLive,proto3" json:"is_live,omitempty"` - // Relevant only for versioned objects. If the value is N, this - // condition is satisfied when there are at least N versions (including - // the live version) newer than this version of the object. - NumNewerVersions int32 `protobuf:"varint,4,opt,name=num_newer_versions,json=numNewerVersions,proto3" json:"num_newer_versions,omitempty"` - // Objects having any of the storage classes specified by this condition - // will be matched. Values include `MULTI_REGIONAL`, `REGIONAL`, - // `NEARLINE`, `COLDLINE`, `STANDARD`, and - // `DURABLE_REDUCED_AVAILABILITY`. - MatchesStorageClass []string `protobuf:"bytes,5,rep,name=matches_storage_class,json=matchesStorageClass,proto3" json:"matches_storage_class,omitempty"` - // A regular expression that satisfies the RE2 syntax. This condition is - // satisfied when the name of the object matches the RE2 pattern. Note: - // This feature is currently in the "Early Access" launch stage and is - // only available to an allowlisted set of users; that means that this - // feature may be changed in backward-incompatible ways and that it is - // not guaranteed to be released. - MatchesPattern string `protobuf:"bytes,6,opt,name=matches_pattern,json=matchesPattern,proto3" json:"matches_pattern,omitempty"` - // Number of days that has elapsed since the custom timestamp set on an - // object. - DaysSinceCustomTime int32 `protobuf:"varint,7,opt,name=days_since_custom_time,json=daysSinceCustomTime,proto3" json:"days_since_custom_time,omitempty"` - // An object matches this condition if the custom timestamp set on the - // object is before this timestamp. - CustomTimeBefore *timestamp.Timestamp `protobuf:"bytes,8,opt,name=custom_time_before,json=customTimeBefore,proto3" json:"custom_time_before,omitempty"` - // This condition is relevant only for versioned objects. An object - // version satisfies this condition only if these many days have been - // passed since it became noncurrent. The value of the field must be a - // nonnegative integer. If it's zero, the object version will become - // eligible for Lifecycle action as soon as it becomes noncurrent. - DaysSinceNoncurrentTime int32 `protobuf:"varint,9,opt,name=days_since_noncurrent_time,json=daysSinceNoncurrentTime,proto3" json:"days_since_noncurrent_time,omitempty"` - // This condition is relevant only for versioned objects. An object - // version satisfies this condition only if it became noncurrent before - // the specified timestamp. - NoncurrentTimeBefore *timestamp.Timestamp `protobuf:"bytes,10,opt,name=noncurrent_time_before,json=noncurrentTimeBefore,proto3" json:"noncurrent_time_before,omitempty"` - // List of object name prefixes. If any prefix exactly matches the - // beginning of the object name, the condition evaluates to true. - MatchesPrefix []string `protobuf:"bytes,11,rep,name=matches_prefix,json=matchesPrefix,proto3" json:"matches_prefix,omitempty"` - // List of object name suffixes. If any suffix exactly matches the - // end of the object name, the condition evaluates to true. - MatchesSuffix []string `protobuf:"bytes,12,rep,name=matches_suffix,json=matchesSuffix,proto3" json:"matches_suffix,omitempty"` -} - -func (x *Bucket_Lifecycle_Rule_Condition) Reset() { - *x = Bucket_Lifecycle_Rule_Condition{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Bucket_Lifecycle_Rule_Condition) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Bucket_Lifecycle_Rule_Condition) ProtoMessage() {} - -func (x *Bucket_Lifecycle_Rule_Condition) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[34] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Bucket_Lifecycle_Rule_Condition.ProtoReflect.Descriptor instead. -func (*Bucket_Lifecycle_Rule_Condition) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{0, 4, 0, 1} -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetAge() int32 { - if x != nil { - return x.Age - } - return 0 -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetCreatedBefore() *timestamp.Timestamp { - if x != nil { - return x.CreatedBefore - } - return nil -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetIsLive() *wrappers.BoolValue { - if x != nil { - return x.IsLive - } - return nil -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetNumNewerVersions() int32 { - if x != nil { - return x.NumNewerVersions - } - return 0 -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetMatchesStorageClass() []string { - if x != nil { - return x.MatchesStorageClass - } - return nil -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetMatchesPattern() string { - if x != nil { - return x.MatchesPattern - } - return "" -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetDaysSinceCustomTime() int32 { - if x != nil { - return x.DaysSinceCustomTime - } - return 0 -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetCustomTimeBefore() *timestamp.Timestamp { - if x != nil { - return x.CustomTimeBefore - } - return nil -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetDaysSinceNoncurrentTime() int32 { - if x != nil { - return x.DaysSinceNoncurrentTime - } - return 0 -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetNoncurrentTimeBefore() *timestamp.Timestamp { - if x != nil { - return x.NoncurrentTimeBefore - } - return nil -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetMatchesPrefix() []string { - if x != nil { - return x.MatchesPrefix - } - return nil -} - -func (x *Bucket_Lifecycle_Rule_Condition) GetMatchesSuffix() []string { - if x != nil { - return x.MatchesSuffix - } - return nil -} - -type ListChannelsResponse_Items struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // User-specified name for a channel. Needed to unsubscribe. - ChannelId string `protobuf:"bytes,1,opt,name=channel_id,json=channelId,proto3" json:"channel_id,omitempty"` - // Opaque value generated by GCS representing a bucket. Needed to - // unsubscribe. - ResourceId string `protobuf:"bytes,2,opt,name=resource_id,json=resourceId,proto3" json:"resource_id,omitempty"` - // Url used to identify where notifications are sent to. - PushUrl string `protobuf:"bytes,3,opt,name=push_url,json=pushUrl,proto3" json:"push_url,omitempty"` - // Email address of the subscriber. - SubscriberEmail string `protobuf:"bytes,4,opt,name=subscriber_email,json=subscriberEmail,proto3" json:"subscriber_email,omitempty"` - // Time when the channel was created. - CreationTime *timestamp.Timestamp `protobuf:"bytes,5,opt,name=creation_time,json=creationTime,proto3" json:"creation_time,omitempty"` -} - -func (x *ListChannelsResponse_Items) Reset() { - *x = ListChannelsResponse_Items{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ListChannelsResponse_Items) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ListChannelsResponse_Items) ProtoMessage() {} - -func (x *ListChannelsResponse_Items) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[36] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use ListChannelsResponse_Items.ProtoReflect.Descriptor instead. -func (*ListChannelsResponse_Items) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{5, 0} -} - -func (x *ListChannelsResponse_Items) GetChannelId() string { - if x != nil { - return x.ChannelId - } - return "" -} - -func (x *ListChannelsResponse_Items) GetResourceId() string { - if x != nil { - return x.ResourceId - } - return "" -} - -func (x *ListChannelsResponse_Items) GetPushUrl() string { - if x != nil { - return x.PushUrl - } - return "" -} - -func (x *ListChannelsResponse_Items) GetSubscriberEmail() string { - if x != nil { - return x.SubscriberEmail - } - return "" -} - -func (x *ListChannelsResponse_Items) GetCreationTime() *timestamp.Timestamp { - if x != nil { - return x.CreationTime - } - return nil -} - -// Describes the customer-specified mechanism used to store the data at rest. -type Object_CustomerEncryption struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // The encryption algorithm. - EncryptionAlgorithm string `protobuf:"bytes,1,opt,name=encryption_algorithm,json=encryptionAlgorithm,proto3" json:"encryption_algorithm,omitempty"` - // SHA256 hash value of the encryption key. - KeySha256 string `protobuf:"bytes,2,opt,name=key_sha256,json=keySha256,proto3" json:"key_sha256,omitempty"` -} - -func (x *Object_CustomerEncryption) Reset() { - *x = Object_CustomerEncryption{} - if protoimpl.UnsafeEnabled { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *Object_CustomerEncryption) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*Object_CustomerEncryption) ProtoMessage() {} - -func (x *Object_CustomerEncryption) ProtoReflect() protoreflect.Message { - mi := &file_google_storage_v1_storage_resources_proto_msgTypes[38] - if protoimpl.UnsafeEnabled && x != nil { - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - if ms.LoadMessageInfo() == nil { - ms.StoreMessageInfo(mi) - } - return ms - } - return mi.MessageOf(x) -} - -// Deprecated: Use Object_CustomerEncryption.ProtoReflect.Descriptor instead. -func (*Object_CustomerEncryption) Descriptor() ([]byte, []int) { - return file_google_storage_v1_storage_resources_proto_rawDescGZIP(), []int{13, 0} -} - -func (x *Object_CustomerEncryption) GetEncryptionAlgorithm() string { - if x != nil { - return x.EncryptionAlgorithm - } - return "" -} - -func (x *Object_CustomerEncryption) GetKeySha256() string { - if x != nil { - return x.KeySha256 - } - return "" -} - -var File_google_storage_v1_storage_resources_proto protoreflect.FileDescriptor - -var file_google_storage_v1_storage_resources_proto_rawDesc = []byte{ - 0x0a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2f, 0x76, 0x31, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x1a, 0x1f, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, - 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, - 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, - 0xcb, 0x1c, 0x0a, 0x06, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x38, 0x0a, 0x03, 0x61, 0x63, - 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, - 0x03, 0x61, 0x63, 0x6c, 0x12, 0x54, 0x0a, 0x12, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, - 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x10, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, - 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x12, 0x41, 0x0a, 0x09, 0x6c, 0x69, - 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, - 0x6c, 0x65, 0x52, 0x09, 0x6c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x3d, 0x0a, - 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, - 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x61, 0x67, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0e, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x32, 0x0a, 0x04, 0x63, 0x6f, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x43, 0x6f, 0x72, 0x73, 0x52, 0x04, 0x63, - 0x6f, 0x72, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, - 0x6c, 0x61, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x34, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x37, - 0x0a, 0x18, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, - 0x62, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x15, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x61, - 0x73, 0x65, 0x64, 0x48, 0x6f, 0x6c, 0x64, 0x12, 0x3d, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, - 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x3b, 0x0a, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, - 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x2e, 0x57, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x52, 0x07, 0x77, 0x65, 0x62, 0x73, - 0x69, 0x74, 0x65, 0x12, 0x44, 0x0a, 0x0a, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, - 0x67, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, - 0x65, 0x74, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x0a, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x3b, 0x0a, 0x07, 0x6c, 0x6f, 0x67, - 0x67, 0x69, 0x6e, 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x07, 0x6c, - 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x2e, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, - 0x13, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, - 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x0a, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x52, 0x0a, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x07, - 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, - 0x52, 0x07, 0x62, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x54, 0x0a, 0x10, 0x72, 0x65, 0x74, - 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x16, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x52, - 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0f, - 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, - 0x23, 0x0a, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x57, 0x0a, 0x11, 0x69, 0x61, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x49, 0x61, 0x6d, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x69, 0x61, 0x6d, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, - 0x0d, 0x7a, 0x6f, 0x6e, 0x65, 0x5f, 0x61, 0x66, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x18, 0x19, - 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0c, 0x7a, 0x6f, 0x6e, 0x65, 0x41, 0x66, - 0x66, 0x69, 0x6e, 0x69, 0x74, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, - 0x69, 0x65, 0x73, 0x5f, 0x70, 0x7a, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, - 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73, 0x50, 0x7a, 0x73, 0x12, 0x41, 0x0a, 0x09, 0x61, - 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x52, 0x09, 0x61, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x1a, 0x30, - 0x0a, 0x07, 0x42, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x65, 0x72, 0x5f, 0x70, 0x61, 0x79, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x72, 0x50, 0x61, 0x79, 0x73, - 0x1a, 0x87, 0x01, 0x0a, 0x04, 0x43, 0x6f, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x72, 0x69, - 0x67, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, - 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x61, 0x78, 0x5f, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, 0x61, 0x78, - 0x41, 0x67, 0x65, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x1a, 0x3d, 0x0a, 0x0a, 0x45, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x14, 0x64, 0x65, 0x66, 0x61, - 0x75, 0x6c, 0x74, 0x5f, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4b, - 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0xe8, 0x03, 0x0a, 0x10, 0x49, 0x61, - 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x82, - 0x01, 0x0a, 0x1b, 0x75, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x5f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, - 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, - 0x49, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x65, - 0x76, 0x65, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x52, 0x18, 0x75, 0x6e, 0x69, 0x66, 0x6f, - 0x72, 0x6d, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x12, 0x7b, 0x0a, 0x18, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x61, 0x63, - 0x63, 0x65, 0x73, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x2e, 0x49, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, - 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x16, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x50, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, - 0x1a, 0x71, 0x0a, 0x18, 0x55, 0x6e, 0x69, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x75, 0x63, 0x6b, 0x65, - 0x74, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x54, - 0x69, 0x6d, 0x65, 0x22, 0x5f, 0x0a, 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x41, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x50, 0x72, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, - 0x24, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x50, - 0x52, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, - 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x45, 0x4e, 0x46, 0x4f, 0x52, - 0x43, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x49, 0x4e, 0x48, 0x45, 0x52, 0x49, 0x54, - 0x45, 0x44, 0x10, 0x02, 0x1a, 0xaf, 0x07, 0x0a, 0x09, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, - 0x6c, 0x65, 0x12, 0x3c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x4c, 0x69, 0x66, 0x65, - 0x63, 0x79, 0x63, 0x6c, 0x65, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, - 0x1a, 0xe3, 0x06, 0x0a, 0x04, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x47, 0x0a, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, - 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x2e, 0x52, - 0x75, 0x6c, 0x65, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x12, 0x50, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x2e, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x2e, 0x52, 0x75, 0x6c, 0x65, 0x2e, - 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x63, 0x6f, 0x6e, 0x64, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x41, 0x0a, 0x06, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, - 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x1a, 0xfc, 0x04, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x64, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x03, 0x61, 0x67, 0x65, 0x12, 0x41, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x5f, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0d, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x69, 0x73, - 0x5f, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, - 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x69, 0x73, 0x4c, 0x69, 0x76, 0x65, 0x12, - 0x2c, 0x0a, 0x12, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x65, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6e, 0x75, 0x6d, - 0x4e, 0x65, 0x77, 0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x32, 0x0a, - 0x15, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, - 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x6d, 0x61, - 0x74, 0x63, 0x68, 0x65, 0x73, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, - 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x70, 0x61, 0x74, - 0x74, 0x65, 0x72, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x65, 0x73, 0x50, 0x61, 0x74, 0x74, 0x65, 0x72, 0x6e, 0x12, 0x33, 0x0a, 0x16, 0x64, 0x61, - 0x79, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x64, 0x61, 0x79, 0x73, - 0x53, 0x69, 0x6e, 0x63, 0x65, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x48, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, - 0x65, 0x66, 0x6f, 0x72, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, - 0x69, 0x6d, 0x65, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x64, 0x61, 0x79, - 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x17, 0x64, - 0x61, 0x79, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x4e, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, - 0x6e, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x50, 0x0a, 0x16, 0x6e, 0x6f, 0x6e, 0x63, 0x75, 0x72, - 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x52, 0x14, 0x6e, 0x6f, 0x6e, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x74, 0x63, - 0x68, 0x65, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, - 0x25, 0x0a, 0x0e, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x5f, 0x73, 0x75, 0x66, 0x66, 0x69, - 0x78, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, - 0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x1a, 0x54, 0x0a, 0x07, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, - 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, - 0x12, 0x2a, 0x0a, 0x11, 0x6c, 0x6f, 0x67, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x70, - 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6c, 0x6f, 0x67, - 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x1a, 0x9c, 0x01, 0x0a, - 0x0f, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, - 0x12, 0x41, 0x0a, 0x0e, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x69, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0d, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x4c, 0x6f, 0x63, 0x6b, 0x65, 0x64, - 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x72, 0x65, 0x74, 0x65, - 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x1a, 0x26, 0x0a, 0x0a, 0x56, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, - 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x1a, 0x59, 0x0a, 0x07, 0x57, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x12, 0x28, - 0x0a, 0x10, 0x6d, 0x61, 0x69, 0x6e, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x75, 0x66, 0x66, - 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x61, 0x69, 0x6e, 0x50, 0x61, - 0x67, 0x65, 0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x12, 0x24, 0x0a, 0x0e, 0x6e, 0x6f, 0x74, 0x5f, - 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x46, 0x6f, 0x75, 0x6e, 0x64, 0x50, 0x61, 0x67, 0x65, 0x1a, 0x62, - 0x0a, 0x09, 0x41, 0x75, 0x74, 0x6f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x65, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x8b, 0x02, - 0x0a, 0x13, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, - 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, - 0x61, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, - 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x41, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x0b, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x22, 0x60, 0x0a, 0x20, 0x4c, - 0x69, 0x73, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x3c, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, - 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x6e, 0x0a, - 0x13, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, - 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, - 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xf2, 0x02, - 0x0a, 0x07, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x55, 0x72, 0x69, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x12, 0x3a, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x3e, 0x0a, - 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x18, 0x0a, - 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, - 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x1a, 0x39, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x61, 0x6d, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0xac, 0x02, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, - 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4c, - 0x69, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, - 0x1a, 0xce, 0x01, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x68, - 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x73, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x75, - 0x73, 0x68, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x75, - 0x73, 0x68, 0x55, 0x72, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, - 0x62, 0x65, 0x72, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x12, 0x3f, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, - 0x65, 0x22, 0x61, 0x0a, 0x0f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x6d, 0x65, 0x64, - 0x44, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x34, - 0x0a, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x63, 0x72, - 0x63, 0x33, 0x32, 0x63, 0x22, 0x62, 0x0a, 0x0f, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x68, - 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x12, 0x34, 0x0a, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32, - 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, - 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x19, 0x0a, - 0x08, 0x6d, 0x64, 0x35, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x64, 0x35, 0x48, 0x61, 0x73, 0x68, 0x22, 0xa7, 0x04, 0x0a, 0x0b, 0x43, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x45, 0x6e, 0x75, 0x6d, 0x73, 0x22, 0x3e, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x6a, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x4f, 0x5f, 0x41, 0x43, 0x4c, 0x10, 0x01, 0x12, 0x08, - 0x0a, 0x04, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x02, 0x22, 0xd5, 0x01, 0x0a, 0x13, 0x50, 0x72, 0x65, - 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x41, 0x63, 0x6c, - 0x12, 0x25, 0x0a, 0x21, 0x50, 0x52, 0x45, 0x44, 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x5f, 0x42, - 0x55, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, - 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x42, 0x55, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, - 0x54, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x42, 0x55, - 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, - 0x10, 0x02, 0x12, 0x1e, 0x0a, 0x1a, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x41, 0x43, 0x4c, - 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, - 0x10, 0x03, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x41, 0x43, 0x4c, - 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x10, 0x04, 0x12, 0x20, - 0x0a, 0x1c, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x50, 0x55, 0x42, - 0x4c, 0x49, 0x43, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x57, 0x52, 0x49, 0x54, 0x45, 0x10, 0x05, - 0x22, 0xff, 0x01, 0x0a, 0x13, 0x50, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x4f, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x6c, 0x12, 0x25, 0x0a, 0x21, 0x50, 0x52, 0x45, 0x44, - 0x45, 0x46, 0x49, 0x4e, 0x45, 0x44, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x43, - 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, - 0x21, 0x0a, 0x1d, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x41, 0x55, - 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x52, 0x45, 0x41, 0x44, - 0x10, 0x01, 0x12, 0x28, 0x0a, 0x24, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x4c, - 0x5f, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x4f, 0x57, 0x4e, 0x45, 0x52, 0x5f, 0x46, 0x55, - 0x4c, 0x4c, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x52, 0x4f, 0x4c, 0x10, 0x02, 0x12, 0x20, 0x0a, 0x1c, - 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x42, 0x55, 0x43, 0x4b, 0x45, - 0x54, 0x5f, 0x4f, 0x57, 0x4e, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x10, 0x03, 0x12, 0x16, - 0x0a, 0x12, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x50, 0x52, 0x49, - 0x56, 0x41, 0x54, 0x45, 0x10, 0x04, 0x12, 0x1e, 0x0a, 0x1a, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x50, 0x52, 0x4f, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x50, 0x52, 0x49, - 0x56, 0x41, 0x54, 0x45, 0x10, 0x05, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, - 0x5f, 0x41, 0x43, 0x4c, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x5f, 0x52, 0x45, 0x41, 0x44, - 0x10, 0x06, 0x22, 0x5f, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x61, 0x6e, - 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, - 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x4c, 0x65, 0x6e, - 0x67, 0x74, 0x68, 0x22, 0xb0, 0x02, 0x0a, 0x0f, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x4d, - 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x15, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x13, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x3d, 0x0a, - 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, - 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x07, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x22, 0xe7, 0x02, 0x0a, 0x0c, 0x4e, 0x6f, 0x74, 0x69, 0x66, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x1f, 0x0a, - 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x62, - 0x0a, 0x11, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, - 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4e, 0x6f, - 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, - 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x2c, 0x0a, 0x12, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x50, 0x72, - 0x65, 0x66, 0x69, 0x78, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, - 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, - 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x1a, 0x43, 0x0a, 0x15, 0x43, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, - 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, - 0x22, 0x52, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, - 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, - 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x22, 0x86, 0x0c, 0x0a, 0x06, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, - 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, - 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x44, 0x69, 0x73, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x63, - 0x61, 0x63, 0x68, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x63, 0x61, 0x63, 0x68, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, - 0x12, 0x38, 0x0a, 0x03, 0x61, 0x63, 0x6c, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, - 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x03, 0x61, 0x63, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x61, 0x6e, - 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, - 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x6d, - 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3d, 0x0a, - 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, - 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, - 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x73, - 0x69, 0x7a, 0x65, 0x12, 0x3d, 0x0a, 0x0c, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0b, 0x74, 0x69, 0x6d, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x34, 0x0a, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x70, - 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x64, 0x35, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x64, 0x35, 0x48, 0x61, 0x73, 0x68, 0x12, 0x12, 0x0a, 0x04, - 0x65, 0x74, 0x61, 0x67, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, - 0x12, 0x34, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, - 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, - 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x20, 0x0a, 0x0c, 0x6b, - 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x57, 0x0a, - 0x1a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, - 0x61, 0x73, 0x73, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x17, 0x74, - 0x69, 0x6d, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, - 0x61, 0x72, 0x79, 0x5f, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, - 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, 0x79, 0x48, 0x6f, 0x6c, 0x64, 0x12, 0x56, 0x0a, - 0x19, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x78, 0x70, 0x69, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x17, 0x72, 0x65, - 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x43, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x18, 0x15, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x44, 0x0a, 0x10, 0x65, 0x76, - 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x1d, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x42, 0x6f, 0x6f, 0x6c, 0x56, 0x61, 0x6c, 0x75, 0x65, - 0x52, 0x0e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x73, 0x65, 0x64, 0x48, 0x6f, 0x6c, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x19, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2e, 0x0a, 0x05, - 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, - 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x5d, 0x0a, 0x13, - 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, 0x72, 0x45, 0x6e, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x65, - 0x72, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x0b, 0x63, - 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, - 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x75, - 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x1a, 0x66, 0x0a, 0x12, 0x43, 0x75, 0x73, 0x74, - 0x6f, 0x6d, 0x65, 0x72, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x31, - 0x0a, 0x14, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61, 0x6c, 0x67, - 0x6f, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x65, 0x6e, - 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6c, 0x67, 0x6f, 0x72, 0x69, 0x74, 0x68, - 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x68, 0x61, 0x32, 0x35, 0x36, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x53, 0x68, 0x61, 0x32, 0x35, 0x36, - 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xc3, 0x02, - 0x0a, 0x13, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x62, - 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, - 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, - 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, - 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, - 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, - 0x12, 0x41, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, - 0x65, 0x61, 0x6d, 0x22, 0x60, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x8a, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, - 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x08, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x05, 0x69, 0x74, 0x65, - 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x62, 0x6a, - 0x65, 0x63, 0x74, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, - 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x22, 0x48, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x54, 0x65, 0x61, - 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x6f, 0x6a, 0x65, - 0x63, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, 0x35, 0x0a, 0x0e, - 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x23, - 0x0a, 0x0d, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x22, 0x3c, 0x0a, 0x05, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, - 0x64, 0x42, 0x6f, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x31, 0x42, 0x1a, 0x43, 0x6c, 0x6f, 0x75, - 0x64, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, - 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x38, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, - 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x74, 0x6f, 0x72, 0x61, - 0x67, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, -} - -var ( - file_google_storage_v1_storage_resources_proto_rawDescOnce sync.Once - file_google_storage_v1_storage_resources_proto_rawDescData = file_google_storage_v1_storage_resources_proto_rawDesc -) - -func file_google_storage_v1_storage_resources_proto_rawDescGZIP() []byte { - file_google_storage_v1_storage_resources_proto_rawDescOnce.Do(func() { - file_google_storage_v1_storage_resources_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_storage_v1_storage_resources_proto_rawDescData) - }) - return file_google_storage_v1_storage_resources_proto_rawDescData -} - -var file_google_storage_v1_storage_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_google_storage_v1_storage_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 40) -var file_google_storage_v1_storage_resources_proto_goTypes = []interface{}{ - (Bucket_IamConfiguration_PublicAccessPrevention)(0), // 0: google.storage.v1.Bucket.IamConfiguration.PublicAccessPrevention - (CommonEnums_Projection)(0), // 1: google.storage.v1.CommonEnums.Projection - (CommonEnums_PredefinedBucketAcl)(0), // 2: google.storage.v1.CommonEnums.PredefinedBucketAcl - (CommonEnums_PredefinedObjectAcl)(0), // 3: google.storage.v1.CommonEnums.PredefinedObjectAcl - (*Bucket)(nil), // 4: google.storage.v1.Bucket - (*BucketAccessControl)(nil), // 5: google.storage.v1.BucketAccessControl - (*ListBucketAccessControlsResponse)(nil), // 6: google.storage.v1.ListBucketAccessControlsResponse - (*ListBucketsResponse)(nil), // 7: google.storage.v1.ListBucketsResponse - (*Channel)(nil), // 8: google.storage.v1.Channel - (*ListChannelsResponse)(nil), // 9: google.storage.v1.ListChannelsResponse - (*ChecksummedData)(nil), // 10: google.storage.v1.ChecksummedData - (*ObjectChecksums)(nil), // 11: google.storage.v1.ObjectChecksums - (*CommonEnums)(nil), // 12: google.storage.v1.CommonEnums - (*ContentRange)(nil), // 13: google.storage.v1.ContentRange - (*HmacKeyMetadata)(nil), // 14: google.storage.v1.HmacKeyMetadata - (*Notification)(nil), // 15: google.storage.v1.Notification - (*ListNotificationsResponse)(nil), // 16: google.storage.v1.ListNotificationsResponse - (*Object)(nil), // 17: google.storage.v1.Object - (*ObjectAccessControl)(nil), // 18: google.storage.v1.ObjectAccessControl - (*ListObjectAccessControlsResponse)(nil), // 19: google.storage.v1.ListObjectAccessControlsResponse - (*ListObjectsResponse)(nil), // 20: google.storage.v1.ListObjectsResponse - (*ProjectTeam)(nil), // 21: google.storage.v1.ProjectTeam - (*ServiceAccount)(nil), // 22: google.storage.v1.ServiceAccount - (*Owner)(nil), // 23: google.storage.v1.Owner - (*Bucket_Billing)(nil), // 24: google.storage.v1.Bucket.Billing - (*Bucket_Cors)(nil), // 25: google.storage.v1.Bucket.Cors - (*Bucket_Encryption)(nil), // 26: google.storage.v1.Bucket.Encryption - (*Bucket_IamConfiguration)(nil), // 27: google.storage.v1.Bucket.IamConfiguration - (*Bucket_Lifecycle)(nil), // 28: google.storage.v1.Bucket.Lifecycle - (*Bucket_Logging)(nil), // 29: google.storage.v1.Bucket.Logging - (*Bucket_RetentionPolicy)(nil), // 30: google.storage.v1.Bucket.RetentionPolicy - (*Bucket_Versioning)(nil), // 31: google.storage.v1.Bucket.Versioning - (*Bucket_Website)(nil), // 32: google.storage.v1.Bucket.Website - (*Bucket_Autoclass)(nil), // 33: google.storage.v1.Bucket.Autoclass - nil, // 34: google.storage.v1.Bucket.LabelsEntry - (*Bucket_IamConfiguration_UniformBucketLevelAccess)(nil), // 35: google.storage.v1.Bucket.IamConfiguration.UniformBucketLevelAccess - (*Bucket_Lifecycle_Rule)(nil), // 36: google.storage.v1.Bucket.Lifecycle.Rule - (*Bucket_Lifecycle_Rule_Action)(nil), // 37: google.storage.v1.Bucket.Lifecycle.Rule.Action - (*Bucket_Lifecycle_Rule_Condition)(nil), // 38: google.storage.v1.Bucket.Lifecycle.Rule.Condition - nil, // 39: google.storage.v1.Channel.ParamsEntry - (*ListChannelsResponse_Items)(nil), // 40: google.storage.v1.ListChannelsResponse.Items - nil, // 41: google.storage.v1.Notification.CustomAttributesEntry - (*Object_CustomerEncryption)(nil), // 42: google.storage.v1.Object.CustomerEncryption - nil, // 43: google.storage.v1.Object.MetadataEntry - (*timestamp.Timestamp)(nil), // 44: google.protobuf.Timestamp - (*wrappers.UInt32Value)(nil), // 45: google.protobuf.UInt32Value - (*wrappers.BoolValue)(nil), // 46: google.protobuf.BoolValue -} -var file_google_storage_v1_storage_resources_proto_depIdxs = []int32{ - 5, // 0: google.storage.v1.Bucket.acl:type_name -> google.storage.v1.BucketAccessControl - 18, // 1: google.storage.v1.Bucket.default_object_acl:type_name -> google.storage.v1.ObjectAccessControl - 28, // 2: google.storage.v1.Bucket.lifecycle:type_name -> google.storage.v1.Bucket.Lifecycle - 44, // 3: google.storage.v1.Bucket.time_created:type_name -> google.protobuf.Timestamp - 25, // 4: google.storage.v1.Bucket.cors:type_name -> google.storage.v1.Bucket.Cors - 44, // 5: google.storage.v1.Bucket.updated:type_name -> google.protobuf.Timestamp - 34, // 6: google.storage.v1.Bucket.labels:type_name -> google.storage.v1.Bucket.LabelsEntry - 32, // 7: google.storage.v1.Bucket.website:type_name -> google.storage.v1.Bucket.Website - 31, // 8: google.storage.v1.Bucket.versioning:type_name -> google.storage.v1.Bucket.Versioning - 29, // 9: google.storage.v1.Bucket.logging:type_name -> google.storage.v1.Bucket.Logging - 23, // 10: google.storage.v1.Bucket.owner:type_name -> google.storage.v1.Owner - 26, // 11: google.storage.v1.Bucket.encryption:type_name -> google.storage.v1.Bucket.Encryption - 24, // 12: google.storage.v1.Bucket.billing:type_name -> google.storage.v1.Bucket.Billing - 30, // 13: google.storage.v1.Bucket.retention_policy:type_name -> google.storage.v1.Bucket.RetentionPolicy - 27, // 14: google.storage.v1.Bucket.iam_configuration:type_name -> google.storage.v1.Bucket.IamConfiguration - 33, // 15: google.storage.v1.Bucket.autoclass:type_name -> google.storage.v1.Bucket.Autoclass - 21, // 16: google.storage.v1.BucketAccessControl.project_team:type_name -> google.storage.v1.ProjectTeam - 5, // 17: google.storage.v1.ListBucketAccessControlsResponse.items:type_name -> google.storage.v1.BucketAccessControl - 4, // 18: google.storage.v1.ListBucketsResponse.items:type_name -> google.storage.v1.Bucket - 44, // 19: google.storage.v1.Channel.expiration:type_name -> google.protobuf.Timestamp - 39, // 20: google.storage.v1.Channel.params:type_name -> google.storage.v1.Channel.ParamsEntry - 40, // 21: google.storage.v1.ListChannelsResponse.items:type_name -> google.storage.v1.ListChannelsResponse.Items - 45, // 22: google.storage.v1.ChecksummedData.crc32c:type_name -> google.protobuf.UInt32Value - 45, // 23: google.storage.v1.ObjectChecksums.crc32c:type_name -> google.protobuf.UInt32Value - 44, // 24: google.storage.v1.HmacKeyMetadata.time_created:type_name -> google.protobuf.Timestamp - 44, // 25: google.storage.v1.HmacKeyMetadata.updated:type_name -> google.protobuf.Timestamp - 41, // 26: google.storage.v1.Notification.custom_attributes:type_name -> google.storage.v1.Notification.CustomAttributesEntry - 15, // 27: google.storage.v1.ListNotificationsResponse.items:type_name -> google.storage.v1.Notification - 18, // 28: google.storage.v1.Object.acl:type_name -> google.storage.v1.ObjectAccessControl - 44, // 29: google.storage.v1.Object.time_deleted:type_name -> google.protobuf.Timestamp - 44, // 30: google.storage.v1.Object.time_created:type_name -> google.protobuf.Timestamp - 45, // 31: google.storage.v1.Object.crc32c:type_name -> google.protobuf.UInt32Value - 44, // 32: google.storage.v1.Object.updated:type_name -> google.protobuf.Timestamp - 44, // 33: google.storage.v1.Object.time_storage_class_updated:type_name -> google.protobuf.Timestamp - 44, // 34: google.storage.v1.Object.retention_expiration_time:type_name -> google.protobuf.Timestamp - 43, // 35: google.storage.v1.Object.metadata:type_name -> google.storage.v1.Object.MetadataEntry - 46, // 36: google.storage.v1.Object.event_based_hold:type_name -> google.protobuf.BoolValue - 23, // 37: google.storage.v1.Object.owner:type_name -> google.storage.v1.Owner - 42, // 38: google.storage.v1.Object.customer_encryption:type_name -> google.storage.v1.Object.CustomerEncryption - 44, // 39: google.storage.v1.Object.custom_time:type_name -> google.protobuf.Timestamp - 21, // 40: google.storage.v1.ObjectAccessControl.project_team:type_name -> google.storage.v1.ProjectTeam - 18, // 41: google.storage.v1.ListObjectAccessControlsResponse.items:type_name -> google.storage.v1.ObjectAccessControl - 17, // 42: google.storage.v1.ListObjectsResponse.items:type_name -> google.storage.v1.Object - 35, // 43: google.storage.v1.Bucket.IamConfiguration.uniform_bucket_level_access:type_name -> google.storage.v1.Bucket.IamConfiguration.UniformBucketLevelAccess - 0, // 44: google.storage.v1.Bucket.IamConfiguration.public_access_prevention:type_name -> google.storage.v1.Bucket.IamConfiguration.PublicAccessPrevention - 36, // 45: google.storage.v1.Bucket.Lifecycle.rule:type_name -> google.storage.v1.Bucket.Lifecycle.Rule - 44, // 46: google.storage.v1.Bucket.RetentionPolicy.effective_time:type_name -> google.protobuf.Timestamp - 44, // 47: google.storage.v1.Bucket.Autoclass.toggle_time:type_name -> google.protobuf.Timestamp - 44, // 48: google.storage.v1.Bucket.IamConfiguration.UniformBucketLevelAccess.locked_time:type_name -> google.protobuf.Timestamp - 37, // 49: google.storage.v1.Bucket.Lifecycle.Rule.action:type_name -> google.storage.v1.Bucket.Lifecycle.Rule.Action - 38, // 50: google.storage.v1.Bucket.Lifecycle.Rule.condition:type_name -> google.storage.v1.Bucket.Lifecycle.Rule.Condition - 44, // 51: google.storage.v1.Bucket.Lifecycle.Rule.Condition.created_before:type_name -> google.protobuf.Timestamp - 46, // 52: google.storage.v1.Bucket.Lifecycle.Rule.Condition.is_live:type_name -> google.protobuf.BoolValue - 44, // 53: google.storage.v1.Bucket.Lifecycle.Rule.Condition.custom_time_before:type_name -> google.protobuf.Timestamp - 44, // 54: google.storage.v1.Bucket.Lifecycle.Rule.Condition.noncurrent_time_before:type_name -> google.protobuf.Timestamp - 44, // 55: google.storage.v1.ListChannelsResponse.Items.creation_time:type_name -> google.protobuf.Timestamp - 56, // [56:56] is the sub-list for method output_type - 56, // [56:56] is the sub-list for method input_type - 56, // [56:56] is the sub-list for extension type_name - 56, // [56:56] is the sub-list for extension extendee - 0, // [0:56] is the sub-list for field type_name -} - -func init() { file_google_storage_v1_storage_resources_proto_init() } -func file_google_storage_v1_storage_resources_proto_init() { - if File_google_storage_v1_storage_resources_proto != nil { - return - } - if !protoimpl.UnsafeEnabled { - file_google_storage_v1_storage_resources_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BucketAccessControl); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListBucketAccessControlsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListBucketsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Channel); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListChannelsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChecksummedData); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ObjectChecksums); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CommonEnums); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ContentRange); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*HmacKeyMetadata); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Notification); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListNotificationsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Object); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ObjectAccessControl); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListObjectAccessControlsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListObjectsResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProjectTeam); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ServiceAccount); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Owner); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Billing); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Cors); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Encryption); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_IamConfiguration); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Lifecycle); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Logging); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_RetentionPolicy); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Versioning); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Website); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Autoclass); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_IamConfiguration_UniformBucketLevelAccess); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Lifecycle_Rule); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Lifecycle_Rule_Action); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Bucket_Lifecycle_Rule_Condition); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListChannelsResponse_Items); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_google_storage_v1_storage_resources_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Object_CustomerEncryption); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } - type x struct{} - out := protoimpl.TypeBuilder{ - File: protoimpl.DescBuilder{ - GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_google_storage_v1_storage_resources_proto_rawDesc, - NumEnums: 4, - NumMessages: 40, - NumExtensions: 0, - NumServices: 0, - }, - GoTypes: file_google_storage_v1_storage_resources_proto_goTypes, - DependencyIndexes: file_google_storage_v1_storage_resources_proto_depIdxs, - EnumInfos: file_google_storage_v1_storage_resources_proto_enumTypes, - MessageInfos: file_google_storage_v1_storage_resources_proto_msgTypes, - }.Build() - File_google_storage_v1_storage_resources_proto = out.File - file_google_storage_v1_storage_resources_proto_rawDesc = nil - file_google_storage_v1_storage_resources_proto_goTypes = nil - file_google_storage_v1_storage_resources_proto_depIdxs = nil -} diff --git a/go.mod b/go.mod index 6bea75801c..ec0bd5e364 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,7 @@ require ( cloud.google.com/go/pubsub v1.44.0 cloud.google.com/go/storage v1.44.0 github.com/fsouza/slognil v0.4.1 + github.com/golang/protobuf v1.5.4 github.com/google/go-cmp v0.6.0 github.com/gorilla/handlers v1.5.2 github.com/gorilla/mux v1.8.1 @@ -12,7 +13,6 @@ require ( github.com/stretchr/testify v1.9.0 golang.org/x/oauth2 v0.23.0 google.golang.org/api v0.199.0 - google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1 ) require ( @@ -50,17 +50,17 @@ require ( go.opentelemetry.io/otel/trace v1.29.0 // indirect golang.org/x/crypto v0.28.0 // indirect golang.org/x/time v0.6.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240903143218-8af14fe29dc1 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240903143218-8af14fe29dc1 // indirect google.golang.org/grpc/stats/opentelemetry v0.0.0-20240907200651-3ffb98b2c93a // indirect ) require ( cloud.google.com/go v0.115.1 // indirect - cloud.google.com/go/iam v1.2.1 + cloud.google.com/go/iam v1.2.1 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect - github.com/golang/protobuf v1.5.4 github.com/google/renameio/v2 v2.0.0 github.com/google/uuid v1.6.0 // indirect github.com/googleapis/enterprise-certificate-proxy v0.3.4 // indirect diff --git a/internal/grpc/fake_grpc_servers_test.go b/internal/grpc/fake_grpc_servers_test.go new file mode 100644 index 0000000000..2c46f1064d --- /dev/null +++ b/internal/grpc/fake_grpc_servers_test.go @@ -0,0 +1,52 @@ +package grpc + +import ( + "context" + + pb "google.golang.org/genproto/googleapis/storage/v1" + "google.golang.org/grpc/metadata" +) + +type fakeInsertObjectServer struct { + req *pb.InsertObjectRequest +} + +// Context implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) Context() context.Context { + panic("unimplemented") +} + +// Recv implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) Recv() (*pb.InsertObjectRequest, error) { + return f.req, nil +} + +// RecvMsg implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) RecvMsg(m any) error { + panic("unimplemented") +} + +// SendAndClose implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) SendAndClose(*pb.Object) error { + panic("unimplemented") +} + +// SendHeader implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) SendHeader(metadata.MD) error { + panic("unimplemented") +} + +// SendMsg implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) SendMsg(m any) error { + panic("unimplemented") +} + +// SetHeader implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) SetHeader(metadata.MD) error { + panic("unimplemented") +} + +// SetTrailer implements storage.Storage_InsertObjectServer. +func (f *fakeInsertObjectServer) SetTrailer(metadata.MD) { + panic("unimplemented") +} diff --git a/internal/grpc/server.go b/internal/grpc/server.go index befe7a0873..6538666bc7 100644 --- a/internal/grpc/server.go +++ b/internal/grpc/server.go @@ -2,17 +2,17 @@ package grpc import ( "context" - "io" - pb "github.com/fsouza/fake-gcs-server/genproto/googleapis/storage/v1" "github.com/fsouza/fake-gcs-server/internal/backend" + pb "google.golang.org/genproto/googleapis/storage/v1" "google.golang.org/grpc" "google.golang.org/grpc/reflection" + "google.golang.org/protobuf/types/known/emptypb" "google.golang.org/protobuf/types/known/timestamppb" ) type Server struct { - pb.UnimplementedStorageServerServer // To satisfy the interface without having to implement every method + pb.UnimplementedStorageServer // To satisfy the interface without having to implement every method backend backend.Storage // share the same backend as fakeserver does } @@ -23,7 +23,7 @@ func InitServer(backend backend.Storage) *Server { func NewServerWithBackend(backend backend.Storage) *grpc.Server { grpcServer := grpc.NewServer() - pb.RegisterStorageServerServer(grpcServer, InitServer(backend)) + pb.RegisterStorageServer(grpcServer, InitServer(backend)) reflection.Register(grpcServer) return grpcServer } @@ -46,14 +46,14 @@ func (g *Server) GetBucket(ctx context.Context, req *pb.GetBucketRequest) (*pb.B return grpc_bucket, nil } -func (g *Server) DeleteBucket(ctx context.Context, req *pb.DeleteBucketRequest) (*pb.Empty, error) { +func (g *Server) DeleteBucket(ctx context.Context, req *pb.DeleteBucketRequest) (*emptypb.Empty, error) { err := g.backend.DeleteBucket(req.Bucket) - return &pb.Empty{}, err + return &emptypb.Empty{}, err } -func (g *Server) InsertBucket(ctx context.Context, req *pb.InsertBucketRequest) (*pb.Empty, error) { +func (g *Server) InsertBucket(ctx context.Context, req *pb.InsertBucketRequest) (*pb.Bucket, error) { err := g.backend.CreateBucket(req.Bucket.Name, backend.BucketAttrs{DefaultEventBasedHold: req.Bucket.DefaultEventBasedHold}) - return &pb.Empty{}, err + return &pb.Bucket{Name: req.Bucket.Name}, err } func (g *Server) UpdateBucket(ctx context.Context, req *pb.UpdateBucketRequest) (*pb.Bucket, error) { @@ -64,33 +64,31 @@ func (g *Server) UpdateBucket(ctx context.Context, req *pb.UpdateBucketRequest) return &pb.Bucket{}, err } -func (g *Server) ListBuckets(context.Context, *pb.ListBucketsRequest) (*pb.Buckets, error) { +func (g *Server) ListBuckets(context.Context, *pb.ListBucketsRequest) (*pb.ListBucketsResponse, error) { buckets, err := g.backend.ListBuckets() if err != nil { return nil, err } - resp := &pb.Buckets{} - + var resp pb.ListBucketsResponse for _, bucket := range buckets { - // tc, err := ptypes.TimestampProto(bucket.TimeCreated) - tc := timestamppb.Now() - if err != nil { - return nil, err - } - resp.Bucket = append(resp.Bucket, &pb.Bucket{ + resp.Items = append(resp.Items, &pb.Bucket{ Name: bucket.Name, - TimeCreated: tc, + TimeCreated: timestamppb.New(bucket.TimeCreated), Versioning: &pb.Bucket_Versioning{ Enabled: bucket.VersioningEnabled, }, }) } - return resp, nil + return &resp, nil } -func (g *Server) InsertObject(ctx context.Context, req *pb.InsertObjectRequest) (*pb.Empty, error) { +func (g *Server) InsertObject(server pb.Storage_InsertObjectServer) error { + req, err := server.Recv() + if err != nil { + return err + } insert_obj_req := *(req.GetFirstMessage().(*pb.InsertObjectRequest_InsertObjectSpec)) validObject := backend.Object{ ObjectAttrs: backend.ObjectAttrs{ @@ -99,83 +97,69 @@ func (g *Server) InsertObject(ctx context.Context, req *pb.InsertObjectRequest) }, Content: req.GetChecksummedData().Content, } - _, err := g.backend.CreateObject(validObject.StreamingObject(), backend.NoConditions{}) - if err != nil { - return nil, err - } - return &pb.Empty{}, nil + _, err = g.backend.CreateObject(validObject.StreamingObject(), backend.NoConditions{}) + return err } -func (g *Server) GetObject(ctx context.Context, req *pb.GetObjectRequest) (*pb.GetObjectMediaResponse, error) { +func (g *Server) GetObject(ctx context.Context, req *pb.GetObjectRequest) (*pb.Object, error) { obj, err := g.backend.GetObject(req.Bucket, req.Object) if err != nil { return nil, err } - content, err := io.ReadAll(obj.Content) - if err != nil { - return nil, err - } - checksummed_data := &pb.ChecksummedData{ - Content: content, - } - metadata := &pb.Object{ + return &pb.Object{ Name: obj.ObjectAttrs.Name, Bucket: obj.ObjectAttrs.BucketName, Md5Hash: obj.ObjectAttrs.Md5Hash, Generation: obj.ObjectAttrs.Generation, ContentType: obj.ObjectAttrs.ContentType, ContentDisposition: obj.ObjectAttrs.ContentDisposition, - } - return &pb.GetObjectMediaResponse{ - ChecksummedData: checksummed_data, - Metadata: metadata, }, nil } -func (g *Server) DeleteObject(ctx context.Context, req *pb.DeleteObjectRequest) (*pb.Empty, error) { +func (g *Server) DeleteObject(ctx context.Context, req *pb.DeleteObjectRequest) (*emptypb.Empty, error) { err := g.backend.DeleteObject(req.Bucket, req.Object) - return &pb.Empty{}, err + return &emptypb.Empty{}, err } -func (g *Server) UpdateObject(ctx context.Context, req *pb.UpdateObjectRequest) (*pb.Empty, error) { +func (g *Server) UpdateObject(ctx context.Context, req *pb.UpdateObjectRequest) (*pb.Object, error) { attrs := backend.ObjectAttrs{ Metadata: req.Metadata.Metadata, } - _, err := g.backend.UpdateObject(req.Bucket, req.Object, attrs) - return &pb.Empty{}, err + obj, err := g.backend.UpdateObject(req.Bucket, req.Object, attrs) + return makeObject(obj), err } -func (g *Server) PatchObject(ctx context.Context, req *pb.PatchObjectRequest) (*pb.Empty, error) { +func (g *Server) PatchObject(ctx context.Context, req *pb.PatchObjectRequest) (*pb.Object, error) { attrs := backend.ObjectAttrs{ Metadata: req.Metadata.Metadata, ContentType: req.Metadata.ContentType, ContentEncoding: req.Metadata.ContentEncoding, ContentDisposition: req.Metadata.ContentDisposition, } - _, err := g.backend.PatchObject(req.Bucket, req.Object, attrs) - return &pb.Empty{}, err + obj, err := g.backend.PatchObject(req.Bucket, req.Object, attrs) + return makeObject(obj), err } // ComposeObject(bucketName string, objectNames []string, destinationName string, metadata map[string]string, contentType string) -func (g *Server) ComposeObject(ctx context.Context, req *pb.ComposeObjectRequest) (*pb.Empty, error) { +func (g *Server) ComposeObject(ctx context.Context, req *pb.ComposeObjectRequest) (*pb.Object, error) { sourceObjNames := make([]string, 2) for i := 0; i < len(req.SourceObjects); i++ { sourceObjNames[i] = req.SourceObjects[i].Name } - _, err := g.backend.ComposeObject(req.DestinationBucket, sourceObjNames, req.DestinationObject, map[string]string{}, "") - return &pb.Empty{}, err + obj, err := g.backend.ComposeObject(req.DestinationBucket, sourceObjNames, req.DestinationObject, map[string]string{}, "") + return makeObject(obj), err } -func (g *Server) ListObjects(ctx context.Context, req *pb.ListObjectsRequest) (*pb.Objects, error) { +func (g *Server) ListObjects(ctx context.Context, req *pb.ListObjectsRequest) (*pb.ListObjectsResponse, error) { objs, err := g.backend.ListObjects(req.Bucket, req.Prefix, req.Versions) if err != nil { return nil, err } - resp := &pb.Objects{} + var resp pb.ListObjectsResponse for _, obj := range objs { - resp.Object = append(resp.Object, &pb.Object{ + resp.Items = append(resp.Items, &pb.Object{ Name: obj.Name, Bucket: obj.BucketName, Md5Hash: obj.Md5Hash, @@ -184,5 +168,15 @@ func (g *Server) ListObjects(ctx context.Context, req *pb.ListObjectsRequest) (* }) } - return resp, nil + return &resp, nil +} + +func makeObject(obj backend.StreamingObject) *pb.Object { + return &pb.Object{ + Name: obj.Name, + Bucket: obj.BucketName, + Md5Hash: obj.Md5Hash, + Generation: obj.Generation, + ContentType: obj.ContentType, + } } diff --git a/internal/grpc/server_test.go b/internal/grpc/server_test.go index 0c40b2835d..dc96852aec 100644 --- a/internal/grpc/server_test.go +++ b/internal/grpc/server_test.go @@ -10,9 +10,9 @@ import ( "runtime" "testing" - pb "github.com/fsouza/fake-gcs-server/genproto/googleapis/storage/v1" "github.com/fsouza/fake-gcs-server/internal/backend" "github.com/fsouza/fake-gcs-server/internal/checksum" + pb "google.golang.org/genproto/googleapis/storage/v1" ) func tempDir() string { @@ -125,7 +125,7 @@ func TestObjectInsertGetUpdateCompose(t *testing.T) { Metadata: origMetadata, } // Test Insert Object - _, err := grpcServer.InsertObject(ctx, &pb.InsertObjectRequest{ + req := &pb.InsertObjectRequest{ FirstMessage: &pb.InsertObjectRequest_InsertObjectSpec{ InsertObjectSpec: &pb.InsertObjectSpec{ Resource: &pb.Object{ @@ -140,7 +140,8 @@ func TestObjectInsertGetUpdateCompose(t *testing.T) { Content: content, }, }, - }) + } + err := grpcServer.InsertObject(&fakeInsertObjectServer{req: req}) if err != nil { t.Fatal(err) } @@ -153,17 +154,14 @@ func TestObjectInsertGetUpdateCompose(t *testing.T) { contentEqual(t, obj.Content, content) // Test Get Object - grpc_get_obj_resp, err := grpcServer.GetObject(ctx, &pb.GetObjectRequest{ + grpcObj, err := grpcServer.GetObject(ctx, &pb.GetObjectRequest{ Bucket: bucketName, Object: obj1Name, }) if err != nil { t.Fatal(err) } - compareGrpcObjAttrs(t, grpc_get_obj_resp.Metadata, obj.ObjectAttrs) - if !bytes.Equal(grpc_get_obj_resp.ChecksummedData.Content, content) { - t.Errorf("Wrong object content. Expected '%q', Got '%q'", grpc_get_obj_resp.ChecksummedData.Content, content) - } + compareGrpcObjAttrs(t, grpcObj, obj.ObjectAttrs) // Test List Objects objs, err := grpcServer.ListObjects(ctx, &pb.ListObjectsRequest{ @@ -174,10 +172,10 @@ func TestObjectInsertGetUpdateCompose(t *testing.T) { if err != nil { t.Fatal(err) } - if len(objs.Object) != 1 { - t.Errorf("Wrong object length. Expected 1, got %q", len(objs.Object)) + if len(objs.Items) != 1 { + t.Errorf("Wrong object length. Expected 1, got %q", len(objs.Items)) } - compareGrpcObjAttrs(t, objs.Object[0], obj.ObjectAttrs) + compareGrpcObjAttrs(t, objs.Items[0], obj.ObjectAttrs) // Test Patch Object newMetadata := map[string]string{ @@ -199,14 +197,14 @@ func TestObjectInsertGetUpdateCompose(t *testing.T) { if err != nil { t.Fatal(err) } - if !reflect.DeepEqual(obj.ObjectAttrs.Metadata, newMetadata) { + if !reflect.DeepEqual(obj.Metadata, newMetadata) { t.Errorf("Wrong object metadata. Expected '%q', Got '%q'", obj.ObjectAttrs.Metadata, newMetadata) } // Insert another object obj2Name := "object2" obj2Content := []byte("object2-content") - _, err = grpcServer.InsertObject(ctx, &pb.InsertObjectRequest{ + req = &pb.InsertObjectRequest{ FirstMessage: &pb.InsertObjectRequest_InsertObjectSpec{ InsertObjectSpec: &pb.InsertObjectSpec{ Resource: &pb.Object{ @@ -221,7 +219,8 @@ func TestObjectInsertGetUpdateCompose(t *testing.T) { Content: obj2Content, }, }, - }) + } + err = grpcServer.InsertObject(&fakeInsertObjectServer{req: req}) if err != nil { t.Fatal(err) } @@ -247,8 +246,8 @@ func TestObjectInsertGetUpdateCompose(t *testing.T) { if err != nil { t.Fatal(err) } - expected_content := []byte("object1-contentobject2-content") - contentEqual(t, obj.Content, expected_content) + expectedContent := []byte("object1-contentobject2-content") + contentEqual(t, obj.Content, expectedContent) }) } @@ -268,69 +267,69 @@ func TestBucketInsertGetListUpdateDelete(t *testing.T) { if err != nil { t.Errorf("Error while inserting bucket: %v", err) } - bucket, storage_err := storage.GetBucket(bucketName) - if storage_err != nil { - t.Errorf("Error while getting bucket from backend: %v", storage_err) + bucket, storageErr := storage.GetBucket(bucketName) + if storageErr != nil { + t.Errorf("Error while getting bucket from backend: %v", storageErr) } if bucket.Name != bucketName { t.Errorf("Expected '%s', got '%s'", bucketName, bucket.Name) } // Test GRPC GetBucket endpoint - grpc_bucket, get_err := grpcServer.GetBucket(ctx, &pb.GetBucketRequest{ + grpcBucket, getErr := grpcServer.GetBucket(ctx, &pb.GetBucketRequest{ Bucket: bucketName, }) - if get_err != nil { + if getErr != nil { t.Errorf("Error while getting bucket from grpc: %v", err) } - if grpc_bucket.Name != bucketName { - t.Errorf("Expected '%s', got '%s'", bucketName, grpc_bucket.Name) + if grpcBucket.Name != bucketName { + t.Errorf("Expected '%s', got '%s'", bucketName, grpcBucket.Name) } - if !grpc_bucket.DefaultEventBasedHold { - t.Errorf("Expected true, got '%v'", grpc_bucket.DefaultEventBasedHold) + if !grpcBucket.DefaultEventBasedHold { + t.Errorf("Expected true, got '%v'", grpcBucket.DefaultEventBasedHold) } // Test GRPC ListBucket endpoint - grpc_buckets, list_err := grpcServer.ListBuckets(ctx, &pb.ListBucketsRequest{}) - if list_err != nil { + grpcBuckets, listErr := grpcServer.ListBuckets(ctx, &pb.ListBucketsRequest{}) + if listErr != nil { t.Errorf("List bucket error") } - if len(grpc_buckets.Bucket) != 1 { + if len(grpcBuckets.Items) != 1 { t.Fatal("List buckets wrong length") } - if grpc_buckets.Bucket[0].Name != bucketName { + if grpcBuckets.Items[0].Name != bucketName { t.Errorf("Wrong bucket name") } // Test GRPC UpdateBucket endpoint - _, update_err := grpcServer.UpdateBucket(ctx, &pb.UpdateBucketRequest{ + _, updateErr := grpcServer.UpdateBucket(ctx, &pb.UpdateBucketRequest{ Bucket: bucketName, Metadata: &pb.Bucket{ DefaultEventBasedHold: false, }, }) - if update_err != nil { - t.Fatal(update_err) + if updateErr != nil { + t.Fatal(updateErr) } - grpc_bucket, err = grpcServer.GetBucket(ctx, &pb.GetBucketRequest{ + grpcBucket, err = grpcServer.GetBucket(ctx, &pb.GetBucketRequest{ Bucket: bucketName, }) if err != nil { t.Fatal(err) } - if grpc_bucket.DefaultEventBasedHold { - t.Errorf("After update, expected false, got '%v'", grpc_bucket.DefaultEventBasedHold) + if grpcBucket.DefaultEventBasedHold { + t.Errorf("After update, expected false, got '%v'", grpcBucket.DefaultEventBasedHold) } // Test GRPC DeleteBucket endpoint - _, delete_err := grpcServer.DeleteBucket(ctx, &pb.DeleteBucketRequest{ + _, deleteErr := grpcServer.DeleteBucket(ctx, &pb.DeleteBucketRequest{ Bucket: bucketName, }) - if delete_err != nil { - t.Errorf("Got unexpected error when call 'DeleteBucket' endpoint of the GRPC server: %v", delete_err) + if deleteErr != nil { + t.Errorf("Got unexpected error when call 'DeleteBucket' endpoint of the GRPC server: %v", deleteErr) } - _, storage_err = storage.GetBucket(bucketName) - if storage_err == nil { + _, storageErr = storage.GetBucket(bucketName) + if storageErr == nil { t.Errorf("Expected to get err when getting '%s' from backend, but got none", bucketName) } })