mirror of
https://github.com/rocky-linux/peridot.git
synced 2024-10-19 15:55:08 +00:00
ad0f7a5305
Upgrade to Go 1.20.5, Hydra v2 SDK, rules-go v0.44.2 (with proper resolves), protobuf v25.3 and mass upgrade of Go dependencies.
11661 lines
520 KiB
Go
11661 lines
520 KiB
Go
// Copyright 2023 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.31.0
|
|
// protoc v4.23.2
|
|
// source: google/storage/v2/storage.proto
|
|
|
|
package storagepb
|
|
|
|
import (
|
|
context "context"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
|
|
iampb "cloud.google.com/go/iam/apiv1/iampb"
|
|
_ "google.golang.org/genproto/googleapis/api/annotations"
|
|
date "google.golang.org/genproto/googleapis/type/date"
|
|
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"
|
|
durationpb "google.golang.org/protobuf/types/known/durationpb"
|
|
emptypb "google.golang.org/protobuf/types/known/emptypb"
|
|
fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
|
|
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
|
|
)
|
|
|
|
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)
|
|
)
|
|
|
|
// A collection of constant values meaningful to the Storage API.
|
|
type ServiceConstants_Values int32
|
|
|
|
const (
|
|
// Unused. Proto3 requires first enum to be 0.
|
|
ServiceConstants_VALUES_UNSPECIFIED ServiceConstants_Values = 0
|
|
// The maximum size chunk that can will be returned in a single
|
|
// ReadRequest.
|
|
// 2 MiB.
|
|
ServiceConstants_MAX_READ_CHUNK_BYTES ServiceConstants_Values = 2097152
|
|
// The maximum size chunk that can be sent in a single WriteObjectRequest.
|
|
// 2 MiB.
|
|
ServiceConstants_MAX_WRITE_CHUNK_BYTES ServiceConstants_Values = 2097152
|
|
// The maximum size of an object in MB - whether written in a single stream
|
|
// or composed from multiple other objects.
|
|
// 5 TiB.
|
|
ServiceConstants_MAX_OBJECT_SIZE_MB ServiceConstants_Values = 5242880
|
|
// The maximum length field name that can be sent in a single
|
|
// custom metadata field.
|
|
// 1 KiB.
|
|
ServiceConstants_MAX_CUSTOM_METADATA_FIELD_NAME_BYTES ServiceConstants_Values = 1024
|
|
// The maximum length field value that can be sent in a single
|
|
// custom_metadata field.
|
|
// 4 KiB.
|
|
ServiceConstants_MAX_CUSTOM_METADATA_FIELD_VALUE_BYTES ServiceConstants_Values = 4096
|
|
// The maximum total bytes that can be populated into all field names and
|
|
// values of the custom_metadata for one object.
|
|
// 8 KiB.
|
|
ServiceConstants_MAX_CUSTOM_METADATA_TOTAL_SIZE_BYTES ServiceConstants_Values = 8192
|
|
// The maximum total bytes that can be populated into all bucket metadata
|
|
// fields.
|
|
// 20 KiB.
|
|
ServiceConstants_MAX_BUCKET_METADATA_TOTAL_SIZE_BYTES ServiceConstants_Values = 20480
|
|
// The maximum number of NotificationConfigs that can be registered
|
|
// for a given bucket.
|
|
ServiceConstants_MAX_NOTIFICATION_CONFIGS_PER_BUCKET ServiceConstants_Values = 100
|
|
// The maximum number of LifecycleRules that can be registered for a given
|
|
// bucket.
|
|
ServiceConstants_MAX_LIFECYCLE_RULES_PER_BUCKET ServiceConstants_Values = 100
|
|
// The maximum number of custom attributes per NotificationConfigs.
|
|
ServiceConstants_MAX_NOTIFICATION_CUSTOM_ATTRIBUTES ServiceConstants_Values = 5
|
|
// The maximum length of a custom attribute key included in
|
|
// NotificationConfig.
|
|
ServiceConstants_MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_KEY_LENGTH ServiceConstants_Values = 256
|
|
// The maximum length of a custom attribute value included in a
|
|
// NotificationConfig.
|
|
ServiceConstants_MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_VALUE_LENGTH ServiceConstants_Values = 1024
|
|
// The maximum number of key/value entries per bucket label.
|
|
ServiceConstants_MAX_LABELS_ENTRIES_COUNT ServiceConstants_Values = 64
|
|
// The maximum character length of the key or value in a bucket
|
|
// label map.
|
|
ServiceConstants_MAX_LABELS_KEY_VALUE_LENGTH ServiceConstants_Values = 63
|
|
// The maximum byte size of the key or value in a bucket label
|
|
// map.
|
|
ServiceConstants_MAX_LABELS_KEY_VALUE_BYTES ServiceConstants_Values = 128
|
|
// The maximum number of object IDs that can be included in a
|
|
// DeleteObjectsRequest.
|
|
ServiceConstants_MAX_OBJECT_IDS_PER_DELETE_OBJECTS_REQUEST ServiceConstants_Values = 1000
|
|
// The maximum number of days for which a token returned by the
|
|
// GetListObjectsSplitPoints RPC is valid.
|
|
ServiceConstants_SPLIT_TOKEN_MAX_VALID_DAYS ServiceConstants_Values = 14
|
|
)
|
|
|
|
// Enum value maps for ServiceConstants_Values.
|
|
var (
|
|
ServiceConstants_Values_name = map[int32]string{
|
|
0: "VALUES_UNSPECIFIED",
|
|
2097152: "MAX_READ_CHUNK_BYTES",
|
|
// Duplicate value: 2097152: "MAX_WRITE_CHUNK_BYTES",
|
|
5242880: "MAX_OBJECT_SIZE_MB",
|
|
1024: "MAX_CUSTOM_METADATA_FIELD_NAME_BYTES",
|
|
4096: "MAX_CUSTOM_METADATA_FIELD_VALUE_BYTES",
|
|
8192: "MAX_CUSTOM_METADATA_TOTAL_SIZE_BYTES",
|
|
20480: "MAX_BUCKET_METADATA_TOTAL_SIZE_BYTES",
|
|
100: "MAX_NOTIFICATION_CONFIGS_PER_BUCKET",
|
|
// Duplicate value: 100: "MAX_LIFECYCLE_RULES_PER_BUCKET",
|
|
5: "MAX_NOTIFICATION_CUSTOM_ATTRIBUTES",
|
|
256: "MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_KEY_LENGTH",
|
|
// Duplicate value: 1024: "MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_VALUE_LENGTH",
|
|
64: "MAX_LABELS_ENTRIES_COUNT",
|
|
63: "MAX_LABELS_KEY_VALUE_LENGTH",
|
|
128: "MAX_LABELS_KEY_VALUE_BYTES",
|
|
1000: "MAX_OBJECT_IDS_PER_DELETE_OBJECTS_REQUEST",
|
|
14: "SPLIT_TOKEN_MAX_VALID_DAYS",
|
|
}
|
|
ServiceConstants_Values_value = map[string]int32{
|
|
"VALUES_UNSPECIFIED": 0,
|
|
"MAX_READ_CHUNK_BYTES": 2097152,
|
|
"MAX_WRITE_CHUNK_BYTES": 2097152,
|
|
"MAX_OBJECT_SIZE_MB": 5242880,
|
|
"MAX_CUSTOM_METADATA_FIELD_NAME_BYTES": 1024,
|
|
"MAX_CUSTOM_METADATA_FIELD_VALUE_BYTES": 4096,
|
|
"MAX_CUSTOM_METADATA_TOTAL_SIZE_BYTES": 8192,
|
|
"MAX_BUCKET_METADATA_TOTAL_SIZE_BYTES": 20480,
|
|
"MAX_NOTIFICATION_CONFIGS_PER_BUCKET": 100,
|
|
"MAX_LIFECYCLE_RULES_PER_BUCKET": 100,
|
|
"MAX_NOTIFICATION_CUSTOM_ATTRIBUTES": 5,
|
|
"MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_KEY_LENGTH": 256,
|
|
"MAX_NOTIFICATION_CUSTOM_ATTRIBUTE_VALUE_LENGTH": 1024,
|
|
"MAX_LABELS_ENTRIES_COUNT": 64,
|
|
"MAX_LABELS_KEY_VALUE_LENGTH": 63,
|
|
"MAX_LABELS_KEY_VALUE_BYTES": 128,
|
|
"MAX_OBJECT_IDS_PER_DELETE_OBJECTS_REQUEST": 1000,
|
|
"SPLIT_TOKEN_MAX_VALID_DAYS": 14,
|
|
}
|
|
)
|
|
|
|
func (x ServiceConstants_Values) Enum() *ServiceConstants_Values {
|
|
p := new(ServiceConstants_Values)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x ServiceConstants_Values) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (ServiceConstants_Values) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_google_storage_v2_storage_proto_enumTypes[0].Descriptor()
|
|
}
|
|
|
|
func (ServiceConstants_Values) Type() protoreflect.EnumType {
|
|
return &file_google_storage_v2_storage_proto_enumTypes[0]
|
|
}
|
|
|
|
func (x ServiceConstants_Values) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use ServiceConstants_Values.Descriptor instead.
|
|
func (ServiceConstants_Values) EnumDescriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{42, 0}
|
|
}
|
|
|
|
// Request message for DeleteBucket.
|
|
type DeleteBucketRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. Name of a bucket to delete.
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
// If set, only deletes the bucket if its metageneration matches this value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// If set, only deletes the bucket if its metageneration does not match this
|
|
// value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,omitempty"`
|
|
}
|
|
|
|
func (x *DeleteBucketRequest) Reset() {
|
|
*x = DeleteBucketRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[0]
|
|
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_v2_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 DeleteBucketRequest.ProtoReflect.Descriptor instead.
|
|
func (*DeleteBucketRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *DeleteBucketRequest) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DeleteBucketRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DeleteBucketRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// Request message for GetBucket.
|
|
type GetBucketRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. Name of a bucket.
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
// If set, and if the bucket's current metageneration does not match the
|
|
// specified value, the request will return an error.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// If set, and if the bucket's current metageneration matches the specified
|
|
// value, the request will return an error.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,omitempty"`
|
|
// Mask specifying which fields to read.
|
|
// A "*" field may be used to indicate all fields.
|
|
// If no mask is specified, will default to all fields.
|
|
ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,5,opt,name=read_mask,json=readMask,proto3,oneof" json:"read_mask,omitempty"`
|
|
}
|
|
|
|
func (x *GetBucketRequest) Reset() {
|
|
*x = GetBucketRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[1]
|
|
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_v2_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 GetBucketRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetBucketRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *GetBucketRequest) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *GetBucketRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *GetBucketRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *GetBucketRequest) GetReadMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.ReadMask
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Request message for CreateBucket.
|
|
type CreateBucketRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The project to which this bucket will belong.
|
|
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
|
|
// Properties of the new bucket being inserted.
|
|
// The name of the bucket is specified in the `bucket_id` field. Populating
|
|
// `bucket.name` field will result in an error.
|
|
// The project of the bucket must be specified in the `bucket.project` field.
|
|
// This field must be in `projects/{projectIdentifier}` format,
|
|
// {projectIdentifier} can be the project ID or project number. The `parent`
|
|
// field must be either empty or `projects/_`.
|
|
Bucket *Bucket `protobuf:"bytes,2,opt,name=bucket,proto3" json:"bucket,omitempty"`
|
|
// Required. The ID to use for this bucket, which will become the final
|
|
// component of the bucket's resource name. For example, the value `foo` might
|
|
// result in a bucket with the name `projects/123456/buckets/foo`.
|
|
BucketId string `protobuf:"bytes,3,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
|
|
// Apply a predefined set of access controls to this bucket.
|
|
// Valid values are "authenticatedRead", "private", "projectPrivate",
|
|
// "publicRead", or "publicReadWrite".
|
|
PredefinedAcl string `protobuf:"bytes,6,opt,name=predefined_acl,json=predefinedAcl,proto3" json:"predefined_acl,omitempty"`
|
|
// Apply a predefined set of default object access controls to this bucket.
|
|
// Valid values are "authenticatedRead", "bucketOwnerFullControl",
|
|
// "bucketOwnerRead", "private", "projectPrivate", or "publicRead".
|
|
PredefinedDefaultObjectAcl string `protobuf:"bytes,7,opt,name=predefined_default_object_acl,json=predefinedDefaultObjectAcl,proto3" json:"predefined_default_object_acl,omitempty"`
|
|
}
|
|
|
|
func (x *CreateBucketRequest) Reset() {
|
|
*x = CreateBucketRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CreateBucketRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CreateBucketRequest) ProtoMessage() {}
|
|
|
|
func (x *CreateBucketRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 CreateBucketRequest.ProtoReflect.Descriptor instead.
|
|
func (*CreateBucketRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *CreateBucketRequest) GetParent() string {
|
|
if x != nil {
|
|
return x.Parent
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CreateBucketRequest) GetBucket() *Bucket {
|
|
if x != nil {
|
|
return x.Bucket
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *CreateBucketRequest) GetBucketId() string {
|
|
if x != nil {
|
|
return x.BucketId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CreateBucketRequest) GetPredefinedAcl() string {
|
|
if x != nil {
|
|
return x.PredefinedAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CreateBucketRequest) GetPredefinedDefaultObjectAcl() string {
|
|
if x != nil {
|
|
return x.PredefinedDefaultObjectAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request message for ListBuckets.
|
|
type ListBucketsRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The project whose buckets we are listing.
|
|
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
|
|
// Maximum number of buckets to return in a single response. The service will
|
|
// use this parameter or 1,000 items, whichever is smaller. If "acl" is
|
|
// present in the read_mask, the service will use this parameter of 200 items,
|
|
// whichever is smaller.
|
|
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
|
|
// A previously-returned page token representing part of the larger set of
|
|
// results to view.
|
|
PageToken string `protobuf:"bytes,3,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,4,opt,name=prefix,proto3" json:"prefix,omitempty"`
|
|
// Mask specifying which fields to read from each result.
|
|
// If no mask is specified, will default to all fields except items.owner,
|
|
// items.acl, and items.default_object_acl.
|
|
// * may be used to mean "all fields".
|
|
ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,5,opt,name=read_mask,json=readMask,proto3,oneof" json:"read_mask,omitempty"`
|
|
}
|
|
|
|
func (x *ListBucketsRequest) Reset() {
|
|
*x = ListBucketsRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[3]
|
|
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_v2_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 ListBucketsRequest.ProtoReflect.Descriptor instead.
|
|
func (*ListBucketsRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *ListBucketsRequest) GetParent() string {
|
|
if x != nil {
|
|
return x.Parent
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ListBucketsRequest) GetPageSize() int32 {
|
|
if x != nil {
|
|
return x.PageSize
|
|
}
|
|
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) GetReadMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.ReadMask
|
|
}
|
|
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.
|
|
Buckets []*Bucket `protobuf:"bytes,1,rep,name=buckets,proto3" json:"buckets,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_v2_storage_proto_msgTypes[4]
|
|
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_v2_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 ListBucketsResponse.ProtoReflect.Descriptor instead.
|
|
func (*ListBucketsResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *ListBucketsResponse) GetBuckets() []*Bucket {
|
|
if x != nil {
|
|
return x.Buckets
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ListBucketsResponse) GetNextPageToken() string {
|
|
if x != nil {
|
|
return x.NextPageToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request message for LockBucketRetentionPolicyRequest.
|
|
type LockBucketRetentionPolicyRequest 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. 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"`
|
|
}
|
|
|
|
func (x *LockBucketRetentionPolicyRequest) Reset() {
|
|
*x = LockBucketRetentionPolicyRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *LockBucketRetentionPolicyRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*LockBucketRetentionPolicyRequest) ProtoMessage() {}
|
|
|
|
func (x *LockBucketRetentionPolicyRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 LockBucketRetentionPolicyRequest.ProtoReflect.Descriptor instead.
|
|
func (*LockBucketRetentionPolicyRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *LockBucketRetentionPolicyRequest) GetBucket() string {
|
|
if x != nil {
|
|
return x.Bucket
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *LockBucketRetentionPolicyRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil {
|
|
return x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// Request for UpdateBucket method.
|
|
type UpdateBucketRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The bucket to update.
|
|
// The bucket's `name` field will be used to identify the bucket.
|
|
Bucket *Bucket `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"`
|
|
// If set, will only modify the bucket if its metageneration matches this
|
|
// value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,2,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// If set, will only modify the bucket if its metageneration does not match
|
|
// this value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,3,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,omitempty"`
|
|
// Apply a predefined set of access controls to this bucket.
|
|
// Valid values are "authenticatedRead", "private", "projectPrivate",
|
|
// "publicRead", or "publicReadWrite".
|
|
PredefinedAcl string `protobuf:"bytes,8,opt,name=predefined_acl,json=predefinedAcl,proto3" json:"predefined_acl,omitempty"`
|
|
// Apply a predefined set of default object access controls to this bucket.
|
|
// Valid values are "authenticatedRead", "bucketOwnerFullControl",
|
|
// "bucketOwnerRead", "private", "projectPrivate", or "publicRead".
|
|
PredefinedDefaultObjectAcl string `protobuf:"bytes,9,opt,name=predefined_default_object_acl,json=predefinedDefaultObjectAcl,proto3" json:"predefined_default_object_acl,omitempty"`
|
|
// Required. 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.
|
|
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,6,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
|
|
}
|
|
|
|
func (x *UpdateBucketRequest) Reset() {
|
|
*x = UpdateBucketRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[6]
|
|
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_v2_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 UpdateBucketRequest.ProtoReflect.Descriptor instead.
|
|
func (*UpdateBucketRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *UpdateBucketRequest) GetBucket() *Bucket {
|
|
if x != nil {
|
|
return x.Bucket
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *UpdateBucketRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *UpdateBucketRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *UpdateBucketRequest) GetPredefinedAcl() string {
|
|
if x != nil {
|
|
return x.PredefinedAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *UpdateBucketRequest) GetPredefinedDefaultObjectAcl() string {
|
|
if x != nil {
|
|
return x.PredefinedDefaultObjectAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *UpdateBucketRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.UpdateMask
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Request message for DeleteNotificationConfig.
|
|
type DeleteNotificationConfigRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The parent bucket of the NotificationConfig.
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
}
|
|
|
|
func (x *DeleteNotificationConfigRequest) Reset() {
|
|
*x = DeleteNotificationConfigRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *DeleteNotificationConfigRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DeleteNotificationConfigRequest) ProtoMessage() {}
|
|
|
|
func (x *DeleteNotificationConfigRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 DeleteNotificationConfigRequest.ProtoReflect.Descriptor instead.
|
|
func (*DeleteNotificationConfigRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *DeleteNotificationConfigRequest) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request message for GetNotificationConfig.
|
|
type GetNotificationConfigRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The parent bucket of the NotificationConfig.
|
|
// Format:
|
|
// `projects/{project}/buckets/{bucket}/notificationConfigs/{notificationConfig}`
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
}
|
|
|
|
func (x *GetNotificationConfigRequest) Reset() {
|
|
*x = GetNotificationConfigRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *GetNotificationConfigRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*GetNotificationConfigRequest) ProtoMessage() {}
|
|
|
|
func (x *GetNotificationConfigRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 GetNotificationConfigRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetNotificationConfigRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *GetNotificationConfigRequest) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request message for CreateNotificationConfig.
|
|
type CreateNotificationConfigRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The bucket to which this NotificationConfig belongs.
|
|
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
|
|
// Required. Properties of the NotificationConfig to be inserted.
|
|
NotificationConfig *NotificationConfig `protobuf:"bytes,2,opt,name=notification_config,json=notificationConfig,proto3" json:"notification_config,omitempty"`
|
|
}
|
|
|
|
func (x *CreateNotificationConfigRequest) Reset() {
|
|
*x = CreateNotificationConfigRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CreateNotificationConfigRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CreateNotificationConfigRequest) ProtoMessage() {}
|
|
|
|
func (x *CreateNotificationConfigRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 CreateNotificationConfigRequest.ProtoReflect.Descriptor instead.
|
|
func (*CreateNotificationConfigRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (x *CreateNotificationConfigRequest) GetParent() string {
|
|
if x != nil {
|
|
return x.Parent
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CreateNotificationConfigRequest) GetNotificationConfig() *NotificationConfig {
|
|
if x != nil {
|
|
return x.NotificationConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Request message for ListNotifications.
|
|
type ListNotificationConfigsRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. Name of a Google Cloud Storage bucket.
|
|
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
|
|
// The maximum number of NotificationConfigs to return. The service may
|
|
// return fewer than this value. The default value is 100. Specifying a value
|
|
// above 100 will result in a page_size of 100.
|
|
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
|
|
// A page token, received from a previous `ListNotificationConfigs` call.
|
|
// Provide this to retrieve the subsequent page.
|
|
//
|
|
// When paginating, all other parameters provided to `ListNotificationConfigs`
|
|
// must match the call that provided the page token.
|
|
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
|
|
}
|
|
|
|
func (x *ListNotificationConfigsRequest) Reset() {
|
|
*x = ListNotificationConfigsRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[10]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ListNotificationConfigsRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ListNotificationConfigsRequest) ProtoMessage() {}
|
|
|
|
func (x *ListNotificationConfigsRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 ListNotificationConfigsRequest.ProtoReflect.Descriptor instead.
|
|
func (*ListNotificationConfigsRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
func (x *ListNotificationConfigsRequest) GetParent() string {
|
|
if x != nil {
|
|
return x.Parent
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ListNotificationConfigsRequest) GetPageSize() int32 {
|
|
if x != nil {
|
|
return x.PageSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ListNotificationConfigsRequest) GetPageToken() string {
|
|
if x != nil {
|
|
return x.PageToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// The result of a call to ListNotificationConfigs
|
|
type ListNotificationConfigsResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The list of items.
|
|
NotificationConfigs []*NotificationConfig `protobuf:"bytes,1,rep,name=notification_configs,json=notificationConfigs,proto3" json:"notification_configs,omitempty"`
|
|
// A token, which can be sent as `page_token` to retrieve the next page.
|
|
// If this field is omitted, there are no subsequent pages.
|
|
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
|
|
}
|
|
|
|
func (x *ListNotificationConfigsResponse) Reset() {
|
|
*x = ListNotificationConfigsResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[11]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ListNotificationConfigsResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ListNotificationConfigsResponse) ProtoMessage() {}
|
|
|
|
func (x *ListNotificationConfigsResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 ListNotificationConfigsResponse.ProtoReflect.Descriptor instead.
|
|
func (*ListNotificationConfigsResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
func (x *ListNotificationConfigsResponse) GetNotificationConfigs() []*NotificationConfig {
|
|
if x != nil {
|
|
return x.NotificationConfigs
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ListNotificationConfigsResponse) GetNextPageToken() string {
|
|
if x != nil {
|
|
return x.NextPageToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request message for ComposeObject.
|
|
type ComposeObjectRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. Properties of the resulting object.
|
|
Destination *Object `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
|
|
// The list of source objects that will be concatenated into a single object.
|
|
SourceObjects []*ComposeObjectRequest_SourceObject `protobuf:"bytes,2,rep,name=source_objects,json=sourceObjects,proto3" json:"source_objects,omitempty"`
|
|
// Apply a predefined set of access controls to the destination object.
|
|
// Valid values are "authenticatedRead", "bucketOwnerFullControl",
|
|
// "bucketOwnerRead", "private", "projectPrivate", or "publicRead".
|
|
DestinationPredefinedAcl string `protobuf:"bytes,9,opt,name=destination_predefined_acl,json=destinationPredefinedAcl,proto3" 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 *int64 `protobuf:"varint,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,5,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" 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.
|
|
KmsKey string `protobuf:"bytes,6,opt,name=kms_key,json=kmsKey,proto3" json:"kms_key,omitempty"`
|
|
// A set of parameters common to Storage API requests concerning an object.
|
|
CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,7,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"`
|
|
// The checksums of the complete object. This will be validated against the
|
|
// combined checksums of the component objects.
|
|
ObjectChecksums *ObjectChecksums `protobuf:"bytes,10,opt,name=object_checksums,json=objectChecksums,proto3" json:"object_checksums,omitempty"`
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) Reset() {
|
|
*x = ComposeObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[12]
|
|
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_v2_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 ComposeObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*ComposeObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetDestination() *Object {
|
|
if x != nil {
|
|
return x.Destination
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetSourceObjects() []*ComposeObjectRequest_SourceObject {
|
|
if x != nil {
|
|
return x.SourceObjects
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetDestinationPredefinedAcl() string {
|
|
if x != nil {
|
|
return x.DestinationPredefinedAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetKmsKey() string {
|
|
if x != nil {
|
|
return x.KmsKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ComposeObjectRequest) GetObjectChecksums() *ObjectChecksums {
|
|
if x != nil {
|
|
return x.ObjectChecksums
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Message for deleting an object.
|
|
// `bucket` and `object` **must** be set.
|
|
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 finalized object to delete.
|
|
// Note: If you want to delete an unfinalized resumable upload please use
|
|
// `CancelResumableWrite`.
|
|
Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,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 *int64 `protobuf:"varint,5,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's live 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 *int64 `protobuf:"varint,6,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3,oneof" json:"if_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,7,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration does not match the given value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,8,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" 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"`
|
|
}
|
|
|
|
func (x *DeleteObjectRequest) Reset() {
|
|
*x = DeleteObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[13]
|
|
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_v2_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 DeleteObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*DeleteObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{13}
|
|
}
|
|
|
|
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) GetGeneration() int64 {
|
|
if x != nil {
|
|
return x.Generation
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DeleteObjectRequest) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DeleteObjectRequest) GetIfGenerationNotMatch() int64 {
|
|
if x != nil && x.IfGenerationNotMatch != nil {
|
|
return *x.IfGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DeleteObjectRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DeleteObjectRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DeleteObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Message for restoring an object.
|
|
// `bucket`, `object`, and `generation` **must** be set.
|
|
type RestoreObjectRequest 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 restore.
|
|
Object string `protobuf:"bytes,2,opt,name=object,proto3" json:"object,omitempty"`
|
|
// Required. The specific revision of the object to restore.
|
|
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 *int64 `protobuf:"varint,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's live 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 *int64 `protobuf:"varint,5,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3,oneof" json:"if_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,6,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration does not match the given value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,7,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,omitempty"`
|
|
// If false or unset, the bucket's default object ACL will be used.
|
|
// If true, copy the source object's access controls.
|
|
// Return an error if bucket has UBLA enabled.
|
|
CopySourceAcl *bool `protobuf:"varint,9,opt,name=copy_source_acl,json=copySourceAcl,proto3,oneof" json:"copy_source_acl,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"`
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) Reset() {
|
|
*x = RestoreObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[14]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*RestoreObjectRequest) ProtoMessage() {}
|
|
|
|
func (x *RestoreObjectRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 RestoreObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*RestoreObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{14}
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetBucket() string {
|
|
if x != nil {
|
|
return x.Bucket
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetObject() string {
|
|
if x != nil {
|
|
return x.Object
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetGeneration() int64 {
|
|
if x != nil {
|
|
return x.Generation
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetIfGenerationNotMatch() int64 {
|
|
if x != nil && x.IfGenerationNotMatch != nil {
|
|
return *x.IfGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetCopySourceAcl() bool {
|
|
if x != nil && x.CopySourceAcl != nil {
|
|
return *x.CopySourceAcl
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *RestoreObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Message for canceling an in-progress resumable upload.
|
|
// `upload_id` **must** be set.
|
|
type CancelResumableWriteRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The upload_id of the resumable upload to cancel. This should be
|
|
// copied from the `upload_id` field of `StartResumableWriteResponse`.
|
|
UploadId string `protobuf:"bytes,1,opt,name=upload_id,json=uploadId,proto3" json:"upload_id,omitempty"`
|
|
}
|
|
|
|
func (x *CancelResumableWriteRequest) Reset() {
|
|
*x = CancelResumableWriteRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[15]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CancelResumableWriteRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CancelResumableWriteRequest) ProtoMessage() {}
|
|
|
|
func (x *CancelResumableWriteRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 CancelResumableWriteRequest.ProtoReflect.Descriptor instead.
|
|
func (*CancelResumableWriteRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{15}
|
|
}
|
|
|
|
func (x *CancelResumableWriteRequest) GetUploadId() string {
|
|
if x != nil {
|
|
return x.UploadId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Empty response message for canceling an in-progress resumable upload, will be
|
|
// extended as needed.
|
|
type CancelResumableWriteResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *CancelResumableWriteResponse) Reset() {
|
|
*x = CancelResumableWriteResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[16]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CancelResumableWriteResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CancelResumableWriteResponse) ProtoMessage() {}
|
|
|
|
func (x *CancelResumableWriteResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 CancelResumableWriteResponse.ProtoReflect.Descriptor instead.
|
|
func (*CancelResumableWriteResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{16}
|
|
}
|
|
|
|
// Request message for ReadObject.
|
|
type ReadObjectRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The name of the bucket containing the object to read.
|
|
Bucket string `protobuf:"bytes,1,opt,name=bucket,proto3" json:"bucket,omitempty"`
|
|
// Required. 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 ReadObjectRequest with `read_offset` = -5 and
|
|
// `read_limit` = 3 would return bytes 10 through 12 of the object. Requesting
|
|
// a negative offset with magnitude larger than the size of the object will
|
|
// return the entire object.
|
|
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 *int64 `protobuf:"varint,6,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's live 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 *int64 `protobuf:"varint,7,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3,oneof" json:"if_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,8,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration does not match the given value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,9,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" 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"`
|
|
// Mask specifying which fields to read.
|
|
// The checksummed_data field and its children will always be present.
|
|
// If no mask is specified, will default to all fields except metadata.owner
|
|
// and metadata.acl.
|
|
// * may be used to mean "all fields".
|
|
ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,12,opt,name=read_mask,json=readMask,proto3,oneof" json:"read_mask,omitempty"`
|
|
}
|
|
|
|
func (x *ReadObjectRequest) Reset() {
|
|
*x = ReadObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[17]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ReadObjectRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ReadObjectRequest) ProtoMessage() {}
|
|
|
|
func (x *ReadObjectRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 ReadObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*ReadObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{17}
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetBucket() string {
|
|
if x != nil {
|
|
return x.Bucket
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetObject() string {
|
|
if x != nil {
|
|
return x.Object
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetGeneration() int64 {
|
|
if x != nil {
|
|
return x.Generation
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetReadOffset() int64 {
|
|
if x != nil {
|
|
return x.ReadOffset
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetReadLimit() int64 {
|
|
if x != nil {
|
|
return x.ReadLimit
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetIfGenerationNotMatch() int64 {
|
|
if x != nil && x.IfGenerationNotMatch != nil {
|
|
return *x.IfGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ReadObjectRequest) GetReadMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.ReadMask
|
|
}
|
|
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"`
|
|
// If true, return the soft-deleted version of this object.
|
|
SoftDeleted *bool `protobuf:"varint,11,opt,name=soft_deleted,json=softDeleted,proto3,oneof" json:"soft_deleted,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 *int64 `protobuf:"varint,4,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's live 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 *int64 `protobuf:"varint,5,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3,oneof" json:"if_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,6,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration does not match the given value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,7,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,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"`
|
|
// Mask specifying which fields to read.
|
|
// If no mask is specified, will default to all fields except metadata.acl and
|
|
// metadata.owner.
|
|
// * may be used to mean "all fields".
|
|
ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,10,opt,name=read_mask,json=readMask,proto3,oneof" json:"read_mask,omitempty"`
|
|
}
|
|
|
|
func (x *GetObjectRequest) Reset() {
|
|
*x = GetObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[18]
|
|
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_v2_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 GetObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{18}
|
|
}
|
|
|
|
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) GetSoftDeleted() bool {
|
|
if x != nil && x.SoftDeleted != nil {
|
|
return *x.SoftDeleted
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *GetObjectRequest) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *GetObjectRequest) GetIfGenerationNotMatch() int64 {
|
|
if x != nil && x.IfGenerationNotMatch != nil {
|
|
return *x.IfGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *GetObjectRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *GetObjectRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *GetObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *GetObjectRequest) GetReadMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.ReadMask
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Response message for ReadObject.
|
|
type ReadObjectResponse 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. If the object is downloaded in full,
|
|
// 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
|
|
// ReadObjectRequest, ContentRange will be populated on the first
|
|
// ReadObjectResponse 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 *ReadObjectResponse) Reset() {
|
|
*x = ReadObjectResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[19]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ReadObjectResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ReadObjectResponse) ProtoMessage() {}
|
|
|
|
func (x *ReadObjectResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 ReadObjectResponse.ProtoReflect.Descriptor instead.
|
|
func (*ReadObjectResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{19}
|
|
}
|
|
|
|
func (x *ReadObjectResponse) GetChecksummedData() *ChecksummedData {
|
|
if x != nil {
|
|
return x.ChecksummedData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ReadObjectResponse) GetObjectChecksums() *ObjectChecksums {
|
|
if x != nil {
|
|
return x.ObjectChecksums
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ReadObjectResponse) GetContentRange() *ContentRange {
|
|
if x != nil {
|
|
return x.ContentRange
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ReadObjectResponse) GetMetadata() *Object {
|
|
if x != nil {
|
|
return x.Metadata
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Describes an attempt to insert an object, possibly over multiple requests.
|
|
type WriteObjectSpec struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. 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.
|
|
// Valid values are "authenticatedRead", "bucketOwnerFullControl",
|
|
// "bucketOwnerRead", "private", "projectPrivate", or "publicRead".
|
|
PredefinedAcl string `protobuf:"bytes,7,opt,name=predefined_acl,json=predefinedAcl,proto3" 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 *int64 `protobuf:"varint,3,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's live
|
|
// 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 *int64 `protobuf:"varint,4,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3,oneof" json:"if_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,5,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration does not match the given value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,6,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,omitempty"`
|
|
// The expected final object size being uploaded.
|
|
// If this value is set, closing the stream after writing fewer or more than
|
|
// `object_size` bytes will result in an OUT_OF_RANGE error.
|
|
//
|
|
// This situation is considered a client error, and if such an error occurs
|
|
// you must start the upload over from scratch, this time sending the correct
|
|
// number of bytes.
|
|
ObjectSize *int64 `protobuf:"varint,8,opt,name=object_size,json=objectSize,proto3,oneof" json:"object_size,omitempty"`
|
|
}
|
|
|
|
func (x *WriteObjectSpec) Reset() {
|
|
*x = WriteObjectSpec{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[20]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *WriteObjectSpec) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*WriteObjectSpec) ProtoMessage() {}
|
|
|
|
func (x *WriteObjectSpec) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 WriteObjectSpec.ProtoReflect.Descriptor instead.
|
|
func (*WriteObjectSpec) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{20}
|
|
}
|
|
|
|
func (x *WriteObjectSpec) GetResource() *Object {
|
|
if x != nil {
|
|
return x.Resource
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WriteObjectSpec) GetPredefinedAcl() string {
|
|
if x != nil {
|
|
return x.PredefinedAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *WriteObjectSpec) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *WriteObjectSpec) GetIfGenerationNotMatch() int64 {
|
|
if x != nil && x.IfGenerationNotMatch != nil {
|
|
return *x.IfGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *WriteObjectSpec) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *WriteObjectSpec) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *WriteObjectSpec) GetObjectSize() int64 {
|
|
if x != nil && x.ObjectSize != nil {
|
|
return *x.ObjectSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// Request message for WriteObject.
|
|
type WriteObjectRequest 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:
|
|
// *WriteObjectRequest_UploadId
|
|
// *WriteObjectRequest_WriteObjectSpec
|
|
FirstMessage isWriteObjectRequest_FirstMessage `protobuf_oneof:"first_message"`
|
|
// Required. The offset from the beginning of the object at which the data
|
|
// should be written.
|
|
//
|
|
// In the first `WriteObjectRequest` of a `WriteObject()` action, it
|
|
// indicates the initial offset for the `Write()` call. The value **must** be
|
|
// equal to the `persisted_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:
|
|
// *WriteObjectRequest_ChecksummedData
|
|
Data isWriteObjectRequest_Data `protobuf_oneof:"data"`
|
|
// Checksums for the complete object. If the checksums computed by the service
|
|
// don't match the specified 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
|
|
// `WriteObjectRequest`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"`
|
|
}
|
|
|
|
func (x *WriteObjectRequest) Reset() {
|
|
*x = WriteObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[21]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *WriteObjectRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*WriteObjectRequest) ProtoMessage() {}
|
|
|
|
func (x *WriteObjectRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 WriteObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*WriteObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{21}
|
|
}
|
|
|
|
func (m *WriteObjectRequest) GetFirstMessage() isWriteObjectRequest_FirstMessage {
|
|
if m != nil {
|
|
return m.FirstMessage
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WriteObjectRequest) GetUploadId() string {
|
|
if x, ok := x.GetFirstMessage().(*WriteObjectRequest_UploadId); ok {
|
|
return x.UploadId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *WriteObjectRequest) GetWriteObjectSpec() *WriteObjectSpec {
|
|
if x, ok := x.GetFirstMessage().(*WriteObjectRequest_WriteObjectSpec); ok {
|
|
return x.WriteObjectSpec
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WriteObjectRequest) GetWriteOffset() int64 {
|
|
if x != nil {
|
|
return x.WriteOffset
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *WriteObjectRequest) GetData() isWriteObjectRequest_Data {
|
|
if m != nil {
|
|
return m.Data
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WriteObjectRequest) GetChecksummedData() *ChecksummedData {
|
|
if x, ok := x.GetData().(*WriteObjectRequest_ChecksummedData); ok {
|
|
return x.ChecksummedData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WriteObjectRequest) GetObjectChecksums() *ObjectChecksums {
|
|
if x != nil {
|
|
return x.ObjectChecksums
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WriteObjectRequest) GetFinishWrite() bool {
|
|
if x != nil {
|
|
return x.FinishWrite
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *WriteObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isWriteObjectRequest_FirstMessage interface {
|
|
isWriteObjectRequest_FirstMessage()
|
|
}
|
|
|
|
type WriteObjectRequest_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 WriteObjectRequest_WriteObjectSpec struct {
|
|
// For non-resumable uploads. Describes the overall upload, including the
|
|
// destination bucket and object name, preconditions, etc.
|
|
WriteObjectSpec *WriteObjectSpec `protobuf:"bytes,2,opt,name=write_object_spec,json=writeObjectSpec,proto3,oneof"`
|
|
}
|
|
|
|
func (*WriteObjectRequest_UploadId) isWriteObjectRequest_FirstMessage() {}
|
|
|
|
func (*WriteObjectRequest_WriteObjectSpec) isWriteObjectRequest_FirstMessage() {}
|
|
|
|
type isWriteObjectRequest_Data interface {
|
|
isWriteObjectRequest_Data()
|
|
}
|
|
|
|
type WriteObjectRequest_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"`
|
|
}
|
|
|
|
func (*WriteObjectRequest_ChecksummedData) isWriteObjectRequest_Data() {}
|
|
|
|
// Response message for WriteObject.
|
|
type WriteObjectResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The response will set one of the following.
|
|
//
|
|
// Types that are assignable to WriteStatus:
|
|
// *WriteObjectResponse_PersistedSize
|
|
// *WriteObjectResponse_Resource
|
|
WriteStatus isWriteObjectResponse_WriteStatus `protobuf_oneof:"write_status"`
|
|
}
|
|
|
|
func (x *WriteObjectResponse) Reset() {
|
|
*x = WriteObjectResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[22]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *WriteObjectResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*WriteObjectResponse) ProtoMessage() {}
|
|
|
|
func (x *WriteObjectResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 WriteObjectResponse.ProtoReflect.Descriptor instead.
|
|
func (*WriteObjectResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{22}
|
|
}
|
|
|
|
func (m *WriteObjectResponse) GetWriteStatus() isWriteObjectResponse_WriteStatus {
|
|
if m != nil {
|
|
return m.WriteStatus
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *WriteObjectResponse) GetPersistedSize() int64 {
|
|
if x, ok := x.GetWriteStatus().(*WriteObjectResponse_PersistedSize); ok {
|
|
return x.PersistedSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *WriteObjectResponse) GetResource() *Object {
|
|
if x, ok := x.GetWriteStatus().(*WriteObjectResponse_Resource); ok {
|
|
return x.Resource
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isWriteObjectResponse_WriteStatus interface {
|
|
isWriteObjectResponse_WriteStatus()
|
|
}
|
|
|
|
type WriteObjectResponse_PersistedSize struct {
|
|
// The total number of bytes that have been processed for the given object
|
|
// from all `WriteObject` calls. Only set if the upload has not finalized.
|
|
PersistedSize int64 `protobuf:"varint,1,opt,name=persisted_size,json=persistedSize,proto3,oneof"`
|
|
}
|
|
|
|
type WriteObjectResponse_Resource struct {
|
|
// A resource containing the metadata for the uploaded object. Only set if
|
|
// the upload has finalized.
|
|
Resource *Object `protobuf:"bytes,2,opt,name=resource,proto3,oneof"`
|
|
}
|
|
|
|
func (*WriteObjectResponse_PersistedSize) isWriteObjectResponse_WriteStatus() {}
|
|
|
|
func (*WriteObjectResponse_Resource) isWriteObjectResponse_WriteStatus() {}
|
|
|
|
// Request message for BidiWriteObject.
|
|
type BidiWriteObjectRequest 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:
|
|
// *BidiWriteObjectRequest_UploadId
|
|
// *BidiWriteObjectRequest_WriteObjectSpec
|
|
FirstMessage isBidiWriteObjectRequest_FirstMessage `protobuf_oneof:"first_message"`
|
|
// Required. The offset from the beginning of the object at which the data
|
|
// should be written.
|
|
//
|
|
// In the first `WriteObjectRequest` of a `WriteObject()` action, it
|
|
// indicates the initial offset for the `Write()` call. The value **must** be
|
|
// equal to the `persisted_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 invalid 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:
|
|
// *BidiWriteObjectRequest_ChecksummedData
|
|
Data isBidiWriteObjectRequest_Data `protobuf_oneof:"data"`
|
|
// Checksums for the complete object. If the checksums computed by the service
|
|
// don't match the specified 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"`
|
|
// For each BidiWriteObjectRequest where state_lookup is `true` or the client
|
|
// closes the stream, the service will send a BidiWriteObjectResponse
|
|
// containing the current persisted size. The persisted size sent in responses
|
|
// covers all the bytes the server has persisted thus far and can be used to
|
|
// decide what data is safe for the client to drop. Note that the object's
|
|
// current size reported by the BidiWriteObjectResponse may lag behind the
|
|
// number of bytes written by the client.
|
|
StateLookup bool `protobuf:"varint,7,opt,name=state_lookup,json=stateLookup,proto3" json:"state_lookup,omitempty"`
|
|
// Persists data written on the stream, up to and including the current
|
|
// message, to permanent storage. This option should be used sparingly as it
|
|
// may reduce performance. Ongoing writes will periodically be persisted on
|
|
// the server even when `flush` is not set.
|
|
Flush bool `protobuf:"varint,8,opt,name=flush,proto3" json:"flush,omitempty"`
|
|
// If `true`, this indicates that the write is complete. Sending any
|
|
// `WriteObjectRequest`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,9,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,10,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"`
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) Reset() {
|
|
*x = BidiWriteObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[23]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*BidiWriteObjectRequest) ProtoMessage() {}
|
|
|
|
func (x *BidiWriteObjectRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 BidiWriteObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*BidiWriteObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{23}
|
|
}
|
|
|
|
func (m *BidiWriteObjectRequest) GetFirstMessage() isBidiWriteObjectRequest_FirstMessage {
|
|
if m != nil {
|
|
return m.FirstMessage
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetUploadId() string {
|
|
if x, ok := x.GetFirstMessage().(*BidiWriteObjectRequest_UploadId); ok {
|
|
return x.UploadId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetWriteObjectSpec() *WriteObjectSpec {
|
|
if x, ok := x.GetFirstMessage().(*BidiWriteObjectRequest_WriteObjectSpec); ok {
|
|
return x.WriteObjectSpec
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetWriteOffset() int64 {
|
|
if x != nil {
|
|
return x.WriteOffset
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *BidiWriteObjectRequest) GetData() isBidiWriteObjectRequest_Data {
|
|
if m != nil {
|
|
return m.Data
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetChecksummedData() *ChecksummedData {
|
|
if x, ok := x.GetData().(*BidiWriteObjectRequest_ChecksummedData); ok {
|
|
return x.ChecksummedData
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetObjectChecksums() *ObjectChecksums {
|
|
if x != nil {
|
|
return x.ObjectChecksums
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetStateLookup() bool {
|
|
if x != nil {
|
|
return x.StateLookup
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetFlush() bool {
|
|
if x != nil {
|
|
return x.Flush
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetFinishWrite() bool {
|
|
if x != nil {
|
|
return x.FinishWrite
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *BidiWriteObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isBidiWriteObjectRequest_FirstMessage interface {
|
|
isBidiWriteObjectRequest_FirstMessage()
|
|
}
|
|
|
|
type BidiWriteObjectRequest_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 BidiWriteObjectRequest_WriteObjectSpec struct {
|
|
// For non-resumable uploads. Describes the overall upload, including the
|
|
// destination bucket and object name, preconditions, etc.
|
|
WriteObjectSpec *WriteObjectSpec `protobuf:"bytes,2,opt,name=write_object_spec,json=writeObjectSpec,proto3,oneof"`
|
|
}
|
|
|
|
func (*BidiWriteObjectRequest_UploadId) isBidiWriteObjectRequest_FirstMessage() {}
|
|
|
|
func (*BidiWriteObjectRequest_WriteObjectSpec) isBidiWriteObjectRequest_FirstMessage() {}
|
|
|
|
type isBidiWriteObjectRequest_Data interface {
|
|
isBidiWriteObjectRequest_Data()
|
|
}
|
|
|
|
type BidiWriteObjectRequest_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"`
|
|
}
|
|
|
|
func (*BidiWriteObjectRequest_ChecksummedData) isBidiWriteObjectRequest_Data() {}
|
|
|
|
// Response message for BidiWriteObject.
|
|
type BidiWriteObjectResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The response will set one of the following.
|
|
//
|
|
// Types that are assignable to WriteStatus:
|
|
// *BidiWriteObjectResponse_PersistedSize
|
|
// *BidiWriteObjectResponse_Resource
|
|
WriteStatus isBidiWriteObjectResponse_WriteStatus `protobuf_oneof:"write_status"`
|
|
}
|
|
|
|
func (x *BidiWriteObjectResponse) Reset() {
|
|
*x = BidiWriteObjectResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[24]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *BidiWriteObjectResponse) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*BidiWriteObjectResponse) ProtoMessage() {}
|
|
|
|
func (x *BidiWriteObjectResponse) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 BidiWriteObjectResponse.ProtoReflect.Descriptor instead.
|
|
func (*BidiWriteObjectResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{24}
|
|
}
|
|
|
|
func (m *BidiWriteObjectResponse) GetWriteStatus() isBidiWriteObjectResponse_WriteStatus {
|
|
if m != nil {
|
|
return m.WriteStatus
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *BidiWriteObjectResponse) GetPersistedSize() int64 {
|
|
if x, ok := x.GetWriteStatus().(*BidiWriteObjectResponse_PersistedSize); ok {
|
|
return x.PersistedSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *BidiWriteObjectResponse) GetResource() *Object {
|
|
if x, ok := x.GetWriteStatus().(*BidiWriteObjectResponse_Resource); ok {
|
|
return x.Resource
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isBidiWriteObjectResponse_WriteStatus interface {
|
|
isBidiWriteObjectResponse_WriteStatus()
|
|
}
|
|
|
|
type BidiWriteObjectResponse_PersistedSize struct {
|
|
// The total number of bytes that have been processed for the given object
|
|
// from all `WriteObject` calls. Only set if the upload has not finalized.
|
|
PersistedSize int64 `protobuf:"varint,1,opt,name=persisted_size,json=persistedSize,proto3,oneof"`
|
|
}
|
|
|
|
type BidiWriteObjectResponse_Resource struct {
|
|
// A resource containing the metadata for the uploaded object. Only set if
|
|
// the upload has finalized.
|
|
Resource *Object `protobuf:"bytes,2,opt,name=resource,proto3,oneof"`
|
|
}
|
|
|
|
func (*BidiWriteObjectResponse_PersistedSize) isBidiWriteObjectResponse_WriteStatus() {}
|
|
|
|
func (*BidiWriteObjectResponse_Resource) isBidiWriteObjectResponse_WriteStatus() {}
|
|
|
|
// 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.
|
|
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,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.
|
|
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
|
|
// A previously-returned page token representing part of the larger set of
|
|
// results to view.
|
|
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
|
|
// If set, 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,4,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,5,opt,name=include_trailing_delimiter,json=includeTrailingDelimiter,proto3" json:"include_trailing_delimiter,omitempty"`
|
|
// Filter results to objects whose names begin with this prefix.
|
|
Prefix string `protobuf:"bytes,6,opt,name=prefix,proto3" json:"prefix,omitempty"`
|
|
// If `true`, lists all versions of an object as distinct results.
|
|
// For more information, see
|
|
// [Object
|
|
// Versioning](https://cloud.google.com/storage/docs/object-versioning).
|
|
Versions bool `protobuf:"varint,7,opt,name=versions,proto3" json:"versions,omitempty"`
|
|
// Mask specifying which fields to read from each result.
|
|
// If no mask is specified, will default to all fields except items.acl and
|
|
// items.owner.
|
|
// * may be used to mean "all fields".
|
|
ReadMask *fieldmaskpb.FieldMask `protobuf:"bytes,8,opt,name=read_mask,json=readMask,proto3,oneof" json:"read_mask,omitempty"`
|
|
// Optional. 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,10,opt,name=lexicographic_start,json=lexicographicStart,proto3" json:"lexicographic_start,omitempty"`
|
|
// Optional. 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,11,opt,name=lexicographic_end,json=lexicographicEnd,proto3" json:"lexicographic_end,omitempty"`
|
|
// Optional. If true, only list all soft-deleted versions of the object.
|
|
// Soft delete policy is required to set this option.
|
|
SoftDeleted bool `protobuf:"varint,12,opt,name=soft_deleted,json=softDeleted,proto3" json:"soft_deleted,omitempty"`
|
|
// Optional. Filter results to objects and prefixes that match this glob
|
|
// pattern. See [List Objects Using
|
|
// Glob](https://cloud.google.com/storage/docs/json_api/v1/objects/list#list-objects-and-prefixes-using-glob)
|
|
// for the full syntax.
|
|
MatchGlob string `protobuf:"bytes,14,opt,name=match_glob,json=matchGlob,proto3" json:"match_glob,omitempty"`
|
|
}
|
|
|
|
func (x *ListObjectsRequest) Reset() {
|
|
*x = ListObjectsRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[25]
|
|
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_v2_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 ListObjectsRequest.ProtoReflect.Descriptor instead.
|
|
func (*ListObjectsRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{25}
|
|
}
|
|
|
|
func (x *ListObjectsRequest) GetParent() string {
|
|
if x != nil {
|
|
return x.Parent
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ListObjectsRequest) GetPageSize() int32 {
|
|
if x != nil {
|
|
return x.PageSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ListObjectsRequest) GetPageToken() string {
|
|
if x != nil {
|
|
return x.PageToken
|
|
}
|
|
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) GetPrefix() string {
|
|
if x != nil {
|
|
return x.Prefix
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ListObjectsRequest) GetVersions() bool {
|
|
if x != nil {
|
|
return x.Versions
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ListObjectsRequest) GetReadMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.ReadMask
|
|
}
|
|
return nil
|
|
}
|
|
|
|
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) GetSoftDeleted() bool {
|
|
if x != nil {
|
|
return x.SoftDeleted
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ListObjectsRequest) GetMatchGlob() string {
|
|
if x != nil {
|
|
return x.MatchGlob
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 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"`
|
|
}
|
|
|
|
func (x *QueryWriteStatusRequest) Reset() {
|
|
*x = QueryWriteStatusRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[26]
|
|
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_v2_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 QueryWriteStatusRequest.ProtoReflect.Descriptor instead.
|
|
func (*QueryWriteStatusRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{26}
|
|
}
|
|
|
|
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
|
|
}
|
|
|
|
// Response object for `QueryWriteStatus`.
|
|
type QueryWriteStatusResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The response will set one of the following.
|
|
//
|
|
// Types that are assignable to WriteStatus:
|
|
// *QueryWriteStatusResponse_PersistedSize
|
|
// *QueryWriteStatusResponse_Resource
|
|
WriteStatus isQueryWriteStatusResponse_WriteStatus `protobuf_oneof:"write_status"`
|
|
}
|
|
|
|
func (x *QueryWriteStatusResponse) Reset() {
|
|
*x = QueryWriteStatusResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[27]
|
|
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_v2_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 QueryWriteStatusResponse.ProtoReflect.Descriptor instead.
|
|
func (*QueryWriteStatusResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{27}
|
|
}
|
|
|
|
func (m *QueryWriteStatusResponse) GetWriteStatus() isQueryWriteStatusResponse_WriteStatus {
|
|
if m != nil {
|
|
return m.WriteStatus
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *QueryWriteStatusResponse) GetPersistedSize() int64 {
|
|
if x, ok := x.GetWriteStatus().(*QueryWriteStatusResponse_PersistedSize); ok {
|
|
return x.PersistedSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *QueryWriteStatusResponse) GetResource() *Object {
|
|
if x, ok := x.GetWriteStatus().(*QueryWriteStatusResponse_Resource); ok {
|
|
return x.Resource
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type isQueryWriteStatusResponse_WriteStatus interface {
|
|
isQueryWriteStatusResponse_WriteStatus()
|
|
}
|
|
|
|
type QueryWriteStatusResponse_PersistedSize struct {
|
|
// The total number of bytes that have been processed for the given object
|
|
// from all `WriteObject` calls. This is the correct value for the
|
|
// 'write_offset' field to use when resuming the `WriteObject` operation.
|
|
// Only set if the upload has not finalized.
|
|
PersistedSize int64 `protobuf:"varint,1,opt,name=persisted_size,json=persistedSize,proto3,oneof"`
|
|
}
|
|
|
|
type QueryWriteStatusResponse_Resource struct {
|
|
// A resource containing the metadata for the uploaded object. Only set if
|
|
// the upload has finalized.
|
|
Resource *Object `protobuf:"bytes,2,opt,name=resource,proto3,oneof"`
|
|
}
|
|
|
|
func (*QueryWriteStatusResponse_PersistedSize) isQueryWriteStatusResponse_WriteStatus() {}
|
|
|
|
func (*QueryWriteStatusResponse_Resource) isQueryWriteStatusResponse_WriteStatus() {}
|
|
|
|
// Request message for RewriteObject.
|
|
// If the source object is encrypted using a Customer-Supplied Encryption Key
|
|
// the key information must be provided in the copy_source_encryption_algorithm,
|
|
// copy_source_encryption_key_bytes, and copy_source_encryption_key_sha256_bytes
|
|
// fields. If the destination object should be encrypted the keying information
|
|
// should be provided in the encryption_algorithm, encryption_key_bytes, and
|
|
// encryption_key_sha256_bytes fields of the
|
|
// common_object_request_params.customer_encryption field.
|
|
type RewriteObjectRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. Immutable. The name of the destination object.
|
|
// See the
|
|
// [Naming Guidelines](https://cloud.google.com/storage/docs/objects#naming).
|
|
// Example: `test.txt`
|
|
// The `name` field by itself does not uniquely identify a Cloud Storage
|
|
// object. A Cloud Storage object is uniquely identified by the tuple of
|
|
// (bucket, object, generation).
|
|
DestinationName string `protobuf:"bytes,24,opt,name=destination_name,json=destinationName,proto3" json:"destination_name,omitempty"`
|
|
// Required. Immutable. The name of the bucket containing the destination
|
|
// object.
|
|
DestinationBucket string `protobuf:"bytes,25,opt,name=destination_bucket,json=destinationBucket,proto3" json:"destination_bucket,omitempty"`
|
|
// The name of the Cloud KMS key that will be used to encrypt the destination
|
|
// object. The Cloud KMS key must be located in same location as the object.
|
|
// If the parameter is not specified, the request uses the destination
|
|
// bucket's default encryption key, if any, or else the Google-managed
|
|
// encryption key.
|
|
DestinationKmsKey string `protobuf:"bytes,27,opt,name=destination_kms_key,json=destinationKmsKey,proto3" json:"destination_kms_key,omitempty"`
|
|
// Properties of the destination, post-rewrite object.
|
|
// The `name`, `bucket` and `kms_key` fields must not be populated (these
|
|
// values are specified in the `destination_name`, `destination_bucket`, and
|
|
// `destination_kms_key` fields).
|
|
// If `destination` is present it will be used to construct the destination
|
|
// object's metadata; otherwise the destination object's metadata will be
|
|
// copied from the source object.
|
|
Destination *Object `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
|
|
// Required. Name of the bucket in which to find the source object.
|
|
SourceBucket string `protobuf:"bytes,2,opt,name=source_bucket,json=sourceBucket,proto3" json:"source_bucket,omitempty"`
|
|
// Required. Name of the source object.
|
|
SourceObject string `protobuf:"bytes,3,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,4,opt,name=source_generation,json=sourceGeneration,proto3" json:"source_generation,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,5,opt,name=rewrite_token,json=rewriteToken,proto3" json:"rewrite_token,omitempty"`
|
|
// Apply a predefined set of access controls to the destination object.
|
|
// Valid values are "authenticatedRead", "bucketOwnerFullControl",
|
|
// "bucketOwnerRead", "private", "projectPrivate", or "publicRead".
|
|
DestinationPredefinedAcl string `protobuf:"bytes,28,opt,name=destination_predefined_acl,json=destinationPredefinedAcl,proto3" 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 *int64 `protobuf:"varint,7,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's live 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 *int64 `protobuf:"varint,8,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3,oneof" json:"if_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the destination object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,9,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// Makes the operation conditional on whether the destination object's current
|
|
// metageneration does not match the given value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,10,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the source object's live
|
|
// generation matches the given value.
|
|
IfSourceGenerationMatch *int64 `protobuf:"varint,11,opt,name=if_source_generation_match,json=ifSourceGenerationMatch,proto3,oneof" json:"if_source_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the source object's live
|
|
// generation does not match the given value.
|
|
IfSourceGenerationNotMatch *int64 `protobuf:"varint,12,opt,name=if_source_generation_not_match,json=ifSourceGenerationNotMatch,proto3,oneof" json:"if_source_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the source object's current
|
|
// metageneration matches the given value.
|
|
IfSourceMetagenerationMatch *int64 `protobuf:"varint,13,opt,name=if_source_metageneration_match,json=ifSourceMetagenerationMatch,proto3,oneof" 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 *int64 `protobuf:"varint,14,opt,name=if_source_metageneration_not_match,json=ifSourceMetagenerationNotMatch,proto3,oneof" 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,15,opt,name=max_bytes_rewritten_per_call,json=maxBytesRewrittenPerCall,proto3" json:"max_bytes_rewritten_per_call,omitempty"`
|
|
// The algorithm used to encrypt the source object, if any. Used if the source
|
|
// object was encrypted with a Customer-Supplied Encryption Key.
|
|
CopySourceEncryptionAlgorithm string `protobuf:"bytes,16,opt,name=copy_source_encryption_algorithm,json=copySourceEncryptionAlgorithm,proto3" json:"copy_source_encryption_algorithm,omitempty"`
|
|
// The raw bytes (not base64-encoded) AES-256 encryption key used to encrypt
|
|
// the source object, if it was encrypted with a Customer-Supplied Encryption
|
|
// Key.
|
|
CopySourceEncryptionKeyBytes []byte `protobuf:"bytes,21,opt,name=copy_source_encryption_key_bytes,json=copySourceEncryptionKeyBytes,proto3" json:"copy_source_encryption_key_bytes,omitempty"`
|
|
// The raw bytes (not base64-encoded) SHA256 hash of the encryption key used
|
|
// to encrypt the source object, if it was encrypted with a Customer-Supplied
|
|
// Encryption Key.
|
|
CopySourceEncryptionKeySha256Bytes []byte `protobuf:"bytes,22,opt,name=copy_source_encryption_key_sha256_bytes,json=copySourceEncryptionKeySha256Bytes,proto3" json:"copy_source_encryption_key_sha256_bytes,omitempty"`
|
|
// A set of parameters common to Storage API requests concerning an object.
|
|
CommonObjectRequestParams *CommonObjectRequestParams `protobuf:"bytes,19,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"`
|
|
// The checksums of the complete object. This will be used to validate the
|
|
// destination object after rewriting.
|
|
ObjectChecksums *ObjectChecksums `protobuf:"bytes,29,opt,name=object_checksums,json=objectChecksums,proto3" json:"object_checksums,omitempty"`
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) Reset() {
|
|
*x = RewriteObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[28]
|
|
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_v2_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 RewriteObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*RewriteObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{28}
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetDestinationName() string {
|
|
if x != nil {
|
|
return x.DestinationName
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetDestinationBucket() string {
|
|
if x != nil {
|
|
return x.DestinationBucket
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetDestinationKmsKey() string {
|
|
if x != nil {
|
|
return x.DestinationKmsKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetDestination() *Object {
|
|
if x != nil {
|
|
return x.Destination
|
|
}
|
|
return nil
|
|
}
|
|
|
|
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) GetRewriteToken() string {
|
|
if x != nil {
|
|
return x.RewriteToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetDestinationPredefinedAcl() string {
|
|
if x != nil {
|
|
return x.DestinationPredefinedAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfGenerationNotMatch() int64 {
|
|
if x != nil && x.IfGenerationNotMatch != nil {
|
|
return *x.IfGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfSourceGenerationMatch() int64 {
|
|
if x != nil && x.IfSourceGenerationMatch != nil {
|
|
return *x.IfSourceGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfSourceGenerationNotMatch() int64 {
|
|
if x != nil && x.IfSourceGenerationNotMatch != nil {
|
|
return *x.IfSourceGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfSourceMetagenerationMatch() int64 {
|
|
if x != nil && x.IfSourceMetagenerationMatch != nil {
|
|
return *x.IfSourceMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetIfSourceMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfSourceMetagenerationNotMatch != nil {
|
|
return *x.IfSourceMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetMaxBytesRewrittenPerCall() int64 {
|
|
if x != nil {
|
|
return x.MaxBytesRewrittenPerCall
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetCopySourceEncryptionAlgorithm() string {
|
|
if x != nil {
|
|
return x.CopySourceEncryptionAlgorithm
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetCopySourceEncryptionKeyBytes() []byte {
|
|
if x != nil {
|
|
return x.CopySourceEncryptionKeyBytes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetCopySourceEncryptionKeySha256Bytes() []byte {
|
|
if x != nil {
|
|
return x.CopySourceEncryptionKeySha256Bytes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *RewriteObjectRequest) GetObjectChecksums() *ObjectChecksums {
|
|
if x != nil {
|
|
return x.ObjectChecksums
|
|
}
|
|
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_v2_storage_proto_msgTypes[29]
|
|
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_v2_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 RewriteResponse.ProtoReflect.Descriptor instead.
|
|
func (*RewriteResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{29}
|
|
}
|
|
|
|
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
|
|
|
|
// Required. The destination bucket, object, and metadata, as well as any
|
|
// preconditions.
|
|
WriteObjectSpec *WriteObjectSpec `protobuf:"bytes,1,opt,name=write_object_spec,json=writeObjectSpec,proto3" json:"write_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"`
|
|
// The checksums of the complete object. This will be used to validate the
|
|
// uploaded object. For each upload, object_checksums can be provided with
|
|
// either StartResumableWriteRequest or the WriteObjectRequest with
|
|
// finish_write set to `true`.
|
|
ObjectChecksums *ObjectChecksums `protobuf:"bytes,5,opt,name=object_checksums,json=objectChecksums,proto3" json:"object_checksums,omitempty"`
|
|
}
|
|
|
|
func (x *StartResumableWriteRequest) Reset() {
|
|
*x = StartResumableWriteRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[30]
|
|
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_v2_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 StartResumableWriteRequest.ProtoReflect.Descriptor instead.
|
|
func (*StartResumableWriteRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{30}
|
|
}
|
|
|
|
func (x *StartResumableWriteRequest) GetWriteObjectSpec() *WriteObjectSpec {
|
|
if x != nil {
|
|
return x.WriteObjectSpec
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *StartResumableWriteRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *StartResumableWriteRequest) GetObjectChecksums() *ObjectChecksums {
|
|
if x != nil {
|
|
return x.ObjectChecksums
|
|
}
|
|
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 `WriteObjectRequest.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_v2_storage_proto_msgTypes[31]
|
|
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_v2_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 StartResumableWriteResponse.ProtoReflect.Descriptor instead.
|
|
func (*StartResumableWriteResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{31}
|
|
}
|
|
|
|
func (x *StartResumableWriteResponse) GetUploadId() string {
|
|
if x != nil {
|
|
return x.UploadId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request message for UpdateObject.
|
|
type UpdateObjectRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The object to update.
|
|
// The object's bucket and name fields are used to identify the object to
|
|
// update. If present, the object's generation field selects a specific
|
|
// revision of this object whose metadata should be updated. Otherwise,
|
|
// assumes the live version of the object.
|
|
Object *Object `protobuf:"bytes,1,opt,name=object,proto3" json:"object,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 *int64 `protobuf:"varint,2,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's live 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 *int64 `protobuf:"varint,3,opt,name=if_generation_not_match,json=ifGenerationNotMatch,proto3,oneof" json:"if_generation_not_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration matches the given value.
|
|
IfMetagenerationMatch *int64 `protobuf:"varint,4,opt,name=if_metageneration_match,json=ifMetagenerationMatch,proto3,oneof" json:"if_metageneration_match,omitempty"`
|
|
// Makes the operation conditional on whether the object's current
|
|
// metageneration does not match the given value.
|
|
IfMetagenerationNotMatch *int64 `protobuf:"varint,5,opt,name=if_metageneration_not_match,json=ifMetagenerationNotMatch,proto3,oneof" json:"if_metageneration_not_match,omitempty"`
|
|
// Apply a predefined set of access controls to this object.
|
|
// Valid values are "authenticatedRead", "bucketOwnerFullControl",
|
|
// "bucketOwnerRead", "private", "projectPrivate", or "publicRead".
|
|
PredefinedAcl string `protobuf:"bytes,10,opt,name=predefined_acl,json=predefinedAcl,proto3" json:"predefined_acl,omitempty"`
|
|
// Required. 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.
|
|
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,7,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,8,opt,name=common_object_request_params,json=commonObjectRequestParams,proto3" json:"common_object_request_params,omitempty"`
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) Reset() {
|
|
*x = UpdateObjectRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[32]
|
|
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_v2_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 UpdateObjectRequest.ProtoReflect.Descriptor instead.
|
|
func (*UpdateObjectRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{32}
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetObject() *Object {
|
|
if x != nil {
|
|
return x.Object
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetIfGenerationNotMatch() int64 {
|
|
if x != nil && x.IfGenerationNotMatch != nil {
|
|
return *x.IfGenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetIfMetagenerationMatch() int64 {
|
|
if x != nil && x.IfMetagenerationMatch != nil {
|
|
return *x.IfMetagenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetIfMetagenerationNotMatch() int64 {
|
|
if x != nil && x.IfMetagenerationNotMatch != nil {
|
|
return *x.IfMetagenerationNotMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetPredefinedAcl() string {
|
|
if x != nil {
|
|
return x.PredefinedAcl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.UpdateMask
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *UpdateObjectRequest) GetCommonObjectRequestParams() *CommonObjectRequestParams {
|
|
if x != nil {
|
|
return x.CommonObjectRequestParams
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Request message for GetServiceAccount.
|
|
type GetServiceAccountRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. Project ID, in the format of "projects/{projectIdentifier}".
|
|
// {projectIdentifier} can be the project ID or project number.
|
|
Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
|
|
}
|
|
|
|
func (x *GetServiceAccountRequest) Reset() {
|
|
*x = GetServiceAccountRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[33]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *GetServiceAccountRequest) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*GetServiceAccountRequest) ProtoMessage() {}
|
|
|
|
func (x *GetServiceAccountRequest) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 GetServiceAccountRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetServiceAccountRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{33}
|
|
}
|
|
|
|
func (x *GetServiceAccountRequest) GetProject() string {
|
|
if x != nil {
|
|
return x.Project
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request message for CreateHmacKey.
|
|
type CreateHmacKeyRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The project that the HMAC-owning service account lives in, in the
|
|
// format of "projects/{projectIdentifier}". {projectIdentifier} can be the
|
|
// project ID or project number.
|
|
Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,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"`
|
|
}
|
|
|
|
func (x *CreateHmacKeyRequest) Reset() {
|
|
*x = CreateHmacKeyRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[34]
|
|
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_v2_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 CreateHmacKeyRequest.ProtoReflect.Descriptor instead.
|
|
func (*CreateHmacKeyRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{34}
|
|
}
|
|
|
|
func (x *CreateHmacKeyRequest) GetProject() string {
|
|
if x != nil {
|
|
return x.Project
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CreateHmacKeyRequest) GetServiceAccountEmail() string {
|
|
if x != nil {
|
|
return x.ServiceAccountEmail
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 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.
|
|
// In raw bytes format (not base64-encoded).
|
|
SecretKeyBytes []byte `protobuf:"bytes,3,opt,name=secret_key_bytes,json=secretKeyBytes,proto3" json:"secret_key_bytes,omitempty"`
|
|
}
|
|
|
|
func (x *CreateHmacKeyResponse) Reset() {
|
|
*x = CreateHmacKeyResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[35]
|
|
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_v2_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 CreateHmacKeyResponse.ProtoReflect.Descriptor instead.
|
|
func (*CreateHmacKeyResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{35}
|
|
}
|
|
|
|
func (x *CreateHmacKeyResponse) GetMetadata() *HmacKeyMetadata {
|
|
if x != nil {
|
|
return x.Metadata
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *CreateHmacKeyResponse) GetSecretKeyBytes() []byte {
|
|
if x != nil {
|
|
return x.SecretKeyBytes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// 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 that owns the HMAC key, in the format of
|
|
// "projects/{projectIdentifier}".
|
|
// {projectIdentifier} can be the project ID or project number.
|
|
Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
|
|
}
|
|
|
|
func (x *DeleteHmacKeyRequest) Reset() {
|
|
*x = DeleteHmacKeyRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[36]
|
|
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_v2_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 DeleteHmacKeyRequest.ProtoReflect.Descriptor instead.
|
|
func (*DeleteHmacKeyRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{36}
|
|
}
|
|
|
|
func (x *DeleteHmacKeyRequest) GetAccessId() string {
|
|
if x != nil {
|
|
return x.AccessId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DeleteHmacKeyRequest) GetProject() string {
|
|
if x != nil {
|
|
return x.Project
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 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 the HMAC key lies in, in the format of
|
|
// "projects/{projectIdentifier}".
|
|
// {projectIdentifier} can be the project ID or project number.
|
|
Project string `protobuf:"bytes,2,opt,name=project,proto3" json:"project,omitempty"`
|
|
}
|
|
|
|
func (x *GetHmacKeyRequest) Reset() {
|
|
*x = GetHmacKeyRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[37]
|
|
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_v2_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 GetHmacKeyRequest.ProtoReflect.Descriptor instead.
|
|
func (*GetHmacKeyRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{37}
|
|
}
|
|
|
|
func (x *GetHmacKeyRequest) GetAccessId() string {
|
|
if x != nil {
|
|
return x.AccessId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *GetHmacKeyRequest) GetProject() string {
|
|
if x != nil {
|
|
return x.Project
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 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 to list HMAC keys for, in the format of
|
|
// "projects/{projectIdentifier}".
|
|
// {projectIdentifier} can be the project ID or project number.
|
|
Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
|
|
// The maximum number of keys to return.
|
|
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
|
|
// A previously returned token from ListHmacKeysResponse to get the next page.
|
|
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
|
|
// If set, filters to only return HMAC keys for specified service account.
|
|
ServiceAccountEmail string `protobuf:"bytes,4,opt,name=service_account_email,json=serviceAccountEmail,proto3" json:"service_account_email,omitempty"`
|
|
// If set, return deleted keys that have not yet been wiped out.
|
|
ShowDeletedKeys bool `protobuf:"varint,5,opt,name=show_deleted_keys,json=showDeletedKeys,proto3" json:"show_deleted_keys,omitempty"`
|
|
}
|
|
|
|
func (x *ListHmacKeysRequest) Reset() {
|
|
*x = ListHmacKeysRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[38]
|
|
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_v2_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 ListHmacKeysRequest.ProtoReflect.Descriptor instead.
|
|
func (*ListHmacKeysRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{38}
|
|
}
|
|
|
|
func (x *ListHmacKeysRequest) GetProject() string {
|
|
if x != nil {
|
|
return x.Project
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ListHmacKeysRequest) GetPageSize() int32 {
|
|
if x != nil {
|
|
return x.PageSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ListHmacKeysRequest) GetPageToken() string {
|
|
if x != nil {
|
|
return x.PageToken
|
|
}
|
|
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
|
|
}
|
|
|
|
// Hmac key list response with next page information.
|
|
type ListHmacKeysResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The list of items.
|
|
HmacKeys []*HmacKeyMetadata `protobuf:"bytes,1,rep,name=hmac_keys,json=hmacKeys,proto3" json:"hmac_keys,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 *ListHmacKeysResponse) Reset() {
|
|
*x = ListHmacKeysResponse{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[39]
|
|
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_v2_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 ListHmacKeysResponse.ProtoReflect.Descriptor instead.
|
|
func (*ListHmacKeysResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{39}
|
|
}
|
|
|
|
func (x *ListHmacKeysResponse) GetHmacKeys() []*HmacKeyMetadata {
|
|
if x != nil {
|
|
return x.HmacKeys
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ListHmacKeysResponse) GetNextPageToken() string {
|
|
if x != nil {
|
|
return x.NextPageToken
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Request object to update an HMAC key state.
|
|
// HmacKeyMetadata.state is required and the only writable field in
|
|
// UpdateHmacKey operation. Specifying fields other than state will result in an
|
|
// error.
|
|
type UpdateHmacKeyRequest struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The HMAC key to update.
|
|
// If present, the hmac_key's `id` field will be used to identify the key.
|
|
// Otherwise, the hmac_key's access_id and project fields will be used to
|
|
// identify the key.
|
|
HmacKey *HmacKeyMetadata `protobuf:"bytes,1,opt,name=hmac_key,json=hmacKey,proto3" json:"hmac_key,omitempty"`
|
|
// Update mask for hmac_key.
|
|
// Not specifying any fields will mean only the `state` field is updated to
|
|
// the value specified in `hmac_key`.
|
|
UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
|
|
}
|
|
|
|
func (x *UpdateHmacKeyRequest) Reset() {
|
|
*x = UpdateHmacKeyRequest{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[40]
|
|
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_v2_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 UpdateHmacKeyRequest.ProtoReflect.Descriptor instead.
|
|
func (*UpdateHmacKeyRequest) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{40}
|
|
}
|
|
|
|
func (x *UpdateHmacKeyRequest) GetHmacKey() *HmacKeyMetadata {
|
|
if x != nil {
|
|
return x.HmacKey
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *UpdateHmacKeyRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
|
|
if x != nil {
|
|
return x.UpdateMask
|
|
}
|
|
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 the 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 the Customer-Supplied Encryption Keys feature.
|
|
// In raw bytes format (not base64-encoded).
|
|
EncryptionKeyBytes []byte `protobuf:"bytes,4,opt,name=encryption_key_bytes,json=encryptionKeyBytes,proto3" json:"encryption_key_bytes,omitempty"`
|
|
// SHA256 hash of encryption key used with the Customer-Supplied Encryption
|
|
// Keys feature.
|
|
EncryptionKeySha256Bytes []byte `protobuf:"bytes,5,opt,name=encryption_key_sha256_bytes,json=encryptionKeySha256Bytes,proto3" json:"encryption_key_sha256_bytes,omitempty"`
|
|
}
|
|
|
|
func (x *CommonObjectRequestParams) Reset() {
|
|
*x = CommonObjectRequestParams{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[41]
|
|
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_v2_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 CommonObjectRequestParams.ProtoReflect.Descriptor instead.
|
|
func (*CommonObjectRequestParams) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{41}
|
|
}
|
|
|
|
func (x *CommonObjectRequestParams) GetEncryptionAlgorithm() string {
|
|
if x != nil {
|
|
return x.EncryptionAlgorithm
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CommonObjectRequestParams) GetEncryptionKeyBytes() []byte {
|
|
if x != nil {
|
|
return x.EncryptionKeyBytes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *CommonObjectRequestParams) GetEncryptionKeySha256Bytes() []byte {
|
|
if x != nil {
|
|
return x.EncryptionKeySha256Bytes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Shared constants.
|
|
type ServiceConstants struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
}
|
|
|
|
func (x *ServiceConstants) Reset() {
|
|
*x = ServiceConstants{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[42]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ServiceConstants) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ServiceConstants) ProtoMessage() {}
|
|
|
|
func (x *ServiceConstants) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 ServiceConstants.ProtoReflect.Descriptor instead.
|
|
func (*ServiceConstants) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{42}
|
|
}
|
|
|
|
// A bucket.
|
|
type Bucket struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Immutable. The name of the bucket.
|
|
// Format: `projects/{project}/buckets/{bucket}`
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
// Output only. The user-chosen part of the bucket name. The `{bucket}`
|
|
// portion of the `name` field. For globally unique buckets, this is equal to
|
|
// the "bucket name" of other Cloud Storage APIs. Example: "pub".
|
|
BucketId string `protobuf:"bytes,2,opt,name=bucket_id,json=bucketId,proto3" json:"bucket_id,omitempty"`
|
|
// The etag of the bucket.
|
|
// If included in the metadata of an UpdateBucketRequest, the operation will
|
|
// only be performed if the etag matches that of the bucket.
|
|
Etag string `protobuf:"bytes,29,opt,name=etag,proto3" json:"etag,omitempty"`
|
|
// Immutable. The project which owns this bucket, in the format of
|
|
// "projects/{projectIdentifier}".
|
|
// {projectIdentifier} can be the project ID or project number.
|
|
Project string `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"`
|
|
// Output only. The metadata generation of this bucket.
|
|
Metageneration int64 `protobuf:"varint,4,opt,name=metageneration,proto3" json:"metageneration,omitempty"`
|
|
// Immutable. 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,5,opt,name=location,proto3" json:"location,omitempty"`
|
|
// Output only. The location type of the bucket (region, dual-region,
|
|
// multi-region, etc).
|
|
LocationType string `protobuf:"bytes,6,opt,name=location_type,json=locationType,proto3" json:"location_type,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,7,opt,name=storage_class,json=storageClass,proto3" json:"storage_class,omitempty"`
|
|
// The recovery point objective for cross-region replication of the bucket.
|
|
// Applicable only for dual- and multi-region buckets. "DEFAULT" uses default
|
|
// replication. "ASYNC_TURBO" enables turbo replication, valid for dual-region
|
|
// buckets only. If rpo is not specified when the bucket is created, it
|
|
// defaults to "DEFAULT". For more information, see
|
|
// https://cloud.google.com/storage/docs/availability-durability#turbo-replication.
|
|
Rpo string `protobuf:"bytes,27,opt,name=rpo,proto3" json:"rpo,omitempty"`
|
|
// Access controls on the bucket.
|
|
// If iam_config.uniform_bucket_level_access is enabled on this bucket,
|
|
// requests to set, read, or modify acl is an error.
|
|
Acl []*BucketAccessControl `protobuf:"bytes,8,rep,name=acl,proto3" json:"acl,omitempty"`
|
|
// Default access controls to apply to new objects when no ACL is provided.
|
|
// If iam_config.uniform_bucket_level_access is enabled on this bucket,
|
|
// requests to set, read, or modify acl is an error.
|
|
DefaultObjectAcl []*ObjectAccessControl `protobuf:"bytes,9,rep,name=default_object_acl,json=defaultObjectAcl,proto3" json:"default_object_acl,omitempty"`
|
|
// The bucket's lifecycle config. See
|
|
// [https://developers.google.com/storage/docs/lifecycle]Lifecycle Management]
|
|
// for more information.
|
|
Lifecycle *Bucket_Lifecycle `protobuf:"bytes,10,opt,name=lifecycle,proto3" json:"lifecycle,omitempty"`
|
|
// Output only. The creation time of the bucket.
|
|
CreateTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
|
|
// The bucket's [https://www.w3.org/TR/cors/][Cross-Origin Resource Sharing]
|
|
// (CORS) config.
|
|
Cors []*Bucket_Cors `protobuf:"bytes,12,rep,name=cors,proto3" json:"cors,omitempty"`
|
|
// Output only. The modification time of the bucket.
|
|
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,13,opt,name=update_time,json=updateTime,proto3" json:"update_time,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 config, 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 config.
|
|
Versioning *Bucket_Versioning `protobuf:"bytes,17,opt,name=versioning,proto3" json:"versioning,omitempty"`
|
|
// The bucket's logging config, which defines the destination bucket
|
|
// and name prefix (if any) for the current bucket's logs.
|
|
Logging *Bucket_Logging `protobuf:"bytes,18,opt,name=logging,proto3" json:"logging,omitempty"`
|
|
// Output only. 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 config for a bucket.
|
|
Encryption *Bucket_Encryption `protobuf:"bytes,20,opt,name=encryption,proto3" json:"encryption,omitempty"`
|
|
// The bucket's billing config.
|
|
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 bucket's IAM config.
|
|
IamConfig *Bucket_IamConfig `protobuf:"bytes,23,opt,name=iam_config,json=iamConfig,proto3" json:"iam_config,omitempty"`
|
|
// Reserved for future use.
|
|
SatisfiesPzs bool `protobuf:"varint,25,opt,name=satisfies_pzs,json=satisfiesPzs,proto3" json:"satisfies_pzs,omitempty"`
|
|
// Configuration that, if present, specifies the data placement for a
|
|
// [https://cloud.google.com/storage/docs/use-dual-regions][Dual Region].
|
|
CustomPlacementConfig *Bucket_CustomPlacementConfig `protobuf:"bytes,26,opt,name=custom_placement_config,json=customPlacementConfig,proto3" json:"custom_placement_config,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"`
|
|
// Optional. The bucket's soft delete policy. The soft delete policy prevents
|
|
// soft-deleted objects from being permanently deleted.
|
|
SoftDeletePolicy *Bucket_SoftDeletePolicy `protobuf:"bytes,31,opt,name=soft_delete_policy,json=softDeletePolicy,proto3" json:"soft_delete_policy,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket) Reset() {
|
|
*x = Bucket{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[43]
|
|
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_v2_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 Bucket.ProtoReflect.Descriptor instead.
|
|
func (*Bucket) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43}
|
|
}
|
|
|
|
func (x *Bucket) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket) GetBucketId() string {
|
|
if x != nil {
|
|
return x.BucketId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket) GetEtag() string {
|
|
if x != nil {
|
|
return x.Etag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket) GetProject() string {
|
|
if x != nil {
|
|
return x.Project
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket) GetMetageneration() int64 {
|
|
if x != nil {
|
|
return x.Metageneration
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Bucket) GetLocation() string {
|
|
if x != nil {
|
|
return x.Location
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket) GetLocationType() string {
|
|
if x != nil {
|
|
return x.LocationType
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket) GetStorageClass() string {
|
|
if x != nil {
|
|
return x.StorageClass
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket) GetRpo() string {
|
|
if x != nil {
|
|
return x.Rpo
|
|
}
|
|
return ""
|
|
}
|
|
|
|
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) GetCreateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.CreateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket) GetCors() []*Bucket_Cors {
|
|
if x != nil {
|
|
return x.Cors
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket) GetUpdateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.UpdateTime
|
|
}
|
|
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) GetIamConfig() *Bucket_IamConfig {
|
|
if x != nil {
|
|
return x.IamConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket) GetSatisfiesPzs() bool {
|
|
if x != nil {
|
|
return x.SatisfiesPzs
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Bucket) GetCustomPlacementConfig() *Bucket_CustomPlacementConfig {
|
|
if x != nil {
|
|
return x.CustomPlacementConfig
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket) GetAutoclass() *Bucket_Autoclass {
|
|
if x != nil {
|
|
return x.Autoclass
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket) GetSoftDeletePolicy() *Bucket_SoftDeletePolicy {
|
|
if x != nil {
|
|
return x.SoftDeletePolicy
|
|
}
|
|
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"`
|
|
// The ID of the access-control entry.
|
|
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
|
|
// The entity holding the permission, in one of the following forms:
|
|
// * `user-{userid}`
|
|
// * `user-{email}`
|
|
// * `group-{groupid}`
|
|
// * `group-{email}`
|
|
// * `domain-{domain}`
|
|
// * `project-{team}-{projectnumber}`
|
|
// * `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`
|
|
// For project entities, `project-{team}-{projectnumber}` format will be
|
|
// returned on response.
|
|
Entity string `protobuf:"bytes,3,opt,name=entity,proto3" json:"entity,omitempty"`
|
|
// Output only. The alternative entity format, if exists. For project
|
|
// entities, `project-{team}-{projectid}` format will be returned on response.
|
|
EntityAlt string `protobuf:"bytes,9,opt,name=entity_alt,json=entityAlt,proto3" json:"entity_alt,omitempty"`
|
|
// The ID for the entity, if any.
|
|
EntityId string `protobuf:"bytes,4,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
|
|
// The etag of the BucketAccessControl.
|
|
// If included in the metadata of an update or delete request message, the
|
|
// operation operation will only be performed if the etag matches that of the
|
|
// bucket's BucketAccessControl.
|
|
Etag string `protobuf:"bytes,8,opt,name=etag,proto3" json:"etag,omitempty"`
|
|
// The email address associated with the entity, if any.
|
|
Email string `protobuf:"bytes,5,opt,name=email,proto3" json:"email,omitempty"`
|
|
// The domain associated with the entity, if any.
|
|
Domain string `protobuf:"bytes,6,opt,name=domain,proto3" json:"domain,omitempty"`
|
|
// The project team associated with the entity, if any.
|
|
ProjectTeam *ProjectTeam `protobuf:"bytes,7,opt,name=project_team,json=projectTeam,proto3" json:"project_team,omitempty"`
|
|
}
|
|
|
|
func (x *BucketAccessControl) Reset() {
|
|
*x = BucketAccessControl{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[44]
|
|
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_v2_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 BucketAccessControl.ProtoReflect.Descriptor instead.
|
|
func (*BucketAccessControl) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{44}
|
|
}
|
|
|
|
func (x *BucketAccessControl) GetRole() string {
|
|
if x != nil {
|
|
return x.Role
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *BucketAccessControl) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *BucketAccessControl) GetEntity() string {
|
|
if x != nil {
|
|
return x.Entity
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *BucketAccessControl) GetEntityAlt() string {
|
|
if x != nil {
|
|
return x.EntityAlt
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *BucketAccessControl) GetEntityId() string {
|
|
if x != nil {
|
|
return x.EntityId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *BucketAccessControl) GetEtag() string {
|
|
if x != nil {
|
|
return x.Etag
|
|
}
|
|
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
|
|
}
|
|
|
|
// Message used to convey content being read or written, along with an optional
|
|
// checksum.
|
|
type ChecksummedData struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Optional. The data.
|
|
Content []byte `protobuf:"bytes,1,opt,name=content,proto3" json:"content,omitempty"`
|
|
// If set, the CRC32C digest of the content field.
|
|
Crc32C *uint32 `protobuf:"fixed32,2,opt,name=crc32c,proto3,oneof" json:"crc32c,omitempty"`
|
|
}
|
|
|
|
func (x *ChecksummedData) Reset() {
|
|
*x = ChecksummedData{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[45]
|
|
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_v2_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 ChecksummedData.ProtoReflect.Descriptor instead.
|
|
func (*ChecksummedData) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{45}
|
|
}
|
|
|
|
func (x *ChecksummedData) GetContent() []byte {
|
|
if x != nil {
|
|
return x.Content
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ChecksummedData) GetCrc32C() uint32 {
|
|
if x != nil && x.Crc32C != nil {
|
|
return *x.Crc32C
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 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 Cloud Storage service for
|
|
// all written objects.
|
|
// If set in a WriteObjectRequest, service will validate that the stored
|
|
// object matches this checksum.
|
|
Crc32C *uint32 `protobuf:"fixed32,1,opt,name=crc32c,proto3,oneof" json:"crc32c,omitempty"`
|
|
// 128 bit MD5 hash of the object data.
|
|
// For more information about using the MD5 hash, see
|
|
// [https://cloud.google.com/storage/docs/hashes-etags#json-api][Hashes and
|
|
// ETags: Best Practices].
|
|
// Not all objects will provide an MD5 hash. For example, composite objects
|
|
// provide only crc32c hashes.
|
|
// This value is equivalent to running `cat object.txt | openssl md5 -binary`
|
|
Md5Hash []byte `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_v2_storage_proto_msgTypes[46]
|
|
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_v2_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 ObjectChecksums.ProtoReflect.Descriptor instead.
|
|
func (*ObjectChecksums) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{46}
|
|
}
|
|
|
|
func (x *ObjectChecksums) GetCrc32C() uint32 {
|
|
if x != nil && x.Crc32C != nil {
|
|
return *x.Crc32C
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ObjectChecksums) GetMd5Hash() []byte {
|
|
if x != nil {
|
|
return x.Md5Hash
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Hmac Key Metadata, which includes all information other than the secret.
|
|
type HmacKeyMetadata struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Immutable. Resource name ID of the key in the format
|
|
// {projectIdentifier}/{accessId}.
|
|
// {projectIdentifier} can be the project ID or project number.
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
// Immutable. Globally unique id for keys.
|
|
AccessId string `protobuf:"bytes,2,opt,name=access_id,json=accessId,proto3" json:"access_id,omitempty"`
|
|
// Immutable. Identifies the project that owns the service account of the
|
|
// specified HMAC key, in the format "projects/{projectIdentifier}".
|
|
// {projectIdentifier} can be the project ID or project number.
|
|
Project string `protobuf:"bytes,3,opt,name=project,proto3" json:"project,omitempty"`
|
|
// Output only. 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.
|
|
// Writable, can be updated by UpdateHmacKey operation.
|
|
State string `protobuf:"bytes,5,opt,name=state,proto3" json:"state,omitempty"`
|
|
// Output only. The creation time of the HMAC key.
|
|
CreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
|
|
// Output only. The last modification time of the HMAC key metadata.
|
|
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
|
|
// The etag of the HMAC key.
|
|
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_v2_storage_proto_msgTypes[47]
|
|
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_v2_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 HmacKeyMetadata.ProtoReflect.Descriptor instead.
|
|
func (*HmacKeyMetadata) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{47}
|
|
}
|
|
|
|
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) GetProject() string {
|
|
if x != nil {
|
|
return x.Project
|
|
}
|
|
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) GetCreateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.CreateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *HmacKeyMetadata) GetUpdateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.UpdateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *HmacKeyMetadata) GetEtag() string {
|
|
if x != nil {
|
|
return x.Etag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// A directive to publish Pub/Sub notifications upon changes to a bucket.
|
|
type NotificationConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. The resource name of this NotificationConfig.
|
|
// Format:
|
|
// `projects/{project}/buckets/{bucket}/notificationConfigs/{notificationConfig}`
|
|
// The `{project}` portion may be `_` for globally unique buckets.
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
// Required. The Pub/Sub topic to which this subscription publishes. Formatted
|
|
// as:
|
|
// '//pubsub.googleapis.com/projects/{project-identifier}/topics/{my-topic}'
|
|
Topic string `protobuf:"bytes,2,opt,name=topic,proto3" json:"topic,omitempty"`
|
|
// The etag of the NotificationConfig.
|
|
// If included in the metadata of GetNotificationConfigRequest, the operation
|
|
// will only be performed if the etag matches that of the NotificationConfig.
|
|
Etag string `protobuf:"bytes,7,opt,name=etag,proto3" json:"etag,omitempty"`
|
|
// If present, only send notifications about listed event types. If
|
|
// empty, sent notifications for all event types.
|
|
EventTypes []string `protobuf:"bytes,3,rep,name=event_types,json=eventTypes,proto3" json:"event_types,omitempty"`
|
|
// A list of additional attributes to attach to each Pub/Sub
|
|
// message published for this NotificationConfig.
|
|
CustomAttributes map[string]string `protobuf:"bytes,4,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"`
|
|
// If present, only apply this NotificationConfig 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"`
|
|
// Required. The desired content of the Payload.
|
|
PayloadFormat string `protobuf:"bytes,6,opt,name=payload_format,json=payloadFormat,proto3" json:"payload_format,omitempty"`
|
|
}
|
|
|
|
func (x *NotificationConfig) Reset() {
|
|
*x = NotificationConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[48]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *NotificationConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*NotificationConfig) ProtoMessage() {}
|
|
|
|
func (x *NotificationConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 NotificationConfig.ProtoReflect.Descriptor instead.
|
|
func (*NotificationConfig) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{48}
|
|
}
|
|
|
|
func (x *NotificationConfig) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NotificationConfig) GetTopic() string {
|
|
if x != nil {
|
|
return x.Topic
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NotificationConfig) GetEtag() string {
|
|
if x != nil {
|
|
return x.Etag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NotificationConfig) GetEventTypes() []string {
|
|
if x != nil {
|
|
return x.EventTypes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NotificationConfig) GetCustomAttributes() map[string]string {
|
|
if x != nil {
|
|
return x.CustomAttributes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *NotificationConfig) GetObjectNamePrefix() string {
|
|
if x != nil {
|
|
return x.ObjectNamePrefix
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *NotificationConfig) GetPayloadFormat() string {
|
|
if x != nil {
|
|
return x.PayloadFormat
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Describes the Customer-Supplied Encryption Key mechanism used to store an
|
|
// Object's data at rest.
|
|
type 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.
|
|
// In raw bytes format (not base64-encoded).
|
|
KeySha256Bytes []byte `protobuf:"bytes,3,opt,name=key_sha256_bytes,json=keySha256Bytes,proto3" json:"key_sha256_bytes,omitempty"`
|
|
}
|
|
|
|
func (x *CustomerEncryption) Reset() {
|
|
*x = CustomerEncryption{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[49]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *CustomerEncryption) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*CustomerEncryption) ProtoMessage() {}
|
|
|
|
func (x *CustomerEncryption) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 CustomerEncryption.ProtoReflect.Descriptor instead.
|
|
func (*CustomerEncryption) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{49}
|
|
}
|
|
|
|
func (x *CustomerEncryption) GetEncryptionAlgorithm() string {
|
|
if x != nil {
|
|
return x.EncryptionAlgorithm
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *CustomerEncryption) GetKeySha256Bytes() []byte {
|
|
if x != nil {
|
|
return x.KeySha256Bytes
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// An object.
|
|
type Object struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Immutable. The name of this object. Nearly any sequence of unicode
|
|
// characters is valid. See
|
|
// [Guidelines](https://cloud.google.com/storage/docs/objects#naming).
|
|
// Example: `test.txt`
|
|
// The `name` field by itself does not uniquely identify a Cloud Storage
|
|
// object. A Cloud Storage object is uniquely identified by the tuple of
|
|
// (bucket, object, generation).
|
|
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
|
|
// Immutable. The name of the bucket containing this object.
|
|
Bucket string `protobuf:"bytes,2,opt,name=bucket,proto3" json:"bucket,omitempty"`
|
|
// The etag of the object.
|
|
// If included in the metadata of an update or delete request message, the
|
|
// operation will only be performed if the etag matches that of the live
|
|
// object.
|
|
Etag string `protobuf:"bytes,27,opt,name=etag,proto3" json:"etag,omitempty"`
|
|
// Immutable. The content generation of this object. Used for object
|
|
// versioning.
|
|
Generation int64 `protobuf:"varint,3,opt,name=generation,proto3" json:"generation,omitempty"`
|
|
// Output only. The version of the metadata for this generation of this
|
|
// object. 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.
|
|
Metageneration int64 `protobuf:"varint,4,opt,name=metageneration,proto3" json:"metageneration,omitempty"`
|
|
// Storage class of the object.
|
|
StorageClass string `protobuf:"bytes,5,opt,name=storage_class,json=storageClass,proto3" json:"storage_class,omitempty"`
|
|
// Output only. Content-Length of the object data in bytes, matching
|
|
// [https://tools.ietf.org/html/rfc7230#section-3.3.2][RFC 7230 §3.3.2].
|
|
Size int64 `protobuf:"varint,6,opt,name=size,proto3" json:"size,omitempty"`
|
|
// 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,7,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,8,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,9,opt,name=cache_control,json=cacheControl,proto3" json:"cache_control,omitempty"`
|
|
// Access controls on the object.
|
|
// If iam_config.uniform_bucket_level_access is enabled on the parent
|
|
// bucket, requests to set, read, or modify acl is an error.
|
|
Acl []*ObjectAccessControl `protobuf:"bytes,10,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,11,opt,name=content_language,json=contentLanguage,proto3" json:"content_language,omitempty"`
|
|
// Output only. If this object is noncurrent, this is the time when the object
|
|
// became noncurrent.
|
|
DeleteTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,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,13,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
|
|
// Output only. The creation time of the object.
|
|
CreateTime *timestamppb.Timestamp `protobuf:"bytes,14,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
|
|
// Output only. Number of underlying components that make up this object.
|
|
// Components are accumulated by compose operations.
|
|
ComponentCount int32 `protobuf:"varint,15,opt,name=component_count,json=componentCount,proto3" json:"component_count,omitempty"`
|
|
// Output only. Hashes for the data part of this object. This field is used
|
|
// for output only and will be silently ignored if provided in requests.
|
|
Checksums *ObjectChecksums `protobuf:"bytes,16,opt,name=checksums,proto3" json:"checksums,omitempty"`
|
|
// Output only. The modification time of the object metadata.
|
|
// Set initially to object creation time and then updated whenever any
|
|
// metadata of the object changes. This includes changes made by a requester,
|
|
// such as modifying custom metadata, as well as changes made by Cloud Storage
|
|
// on behalf of a requester, such as changing the storage class based on an
|
|
// Object Lifecycle Configuration.
|
|
UpdateTime *timestamppb.Timestamp `protobuf:"bytes,17,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
|
|
// Cloud KMS Key used to encrypt this object, if the object is encrypted by
|
|
// such a key.
|
|
KmsKey string `protobuf:"bytes,18,opt,name=kms_key,json=kmsKey,proto3" json:"kms_key,omitempty"`
|
|
// Output only. 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.
|
|
UpdateStorageClassTime *timestamppb.Timestamp `protobuf:"bytes,19,opt,name=update_storage_class_time,json=updateStorageClassTime,proto3" json:"update_storage_class_time,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,20,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.
|
|
// 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).
|
|
RetentionExpireTime *timestamppb.Timestamp `protobuf:"bytes,21,opt,name=retention_expire_time,json=retentionExpireTime,proto3" json:"retention_expire_time,omitempty"`
|
|
// User-provided metadata, in key/value pairs.
|
|
Metadata map[string]string `protobuf:"bytes,22,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.
|
|
// An event-based hold is a way to force the retention of an object until
|
|
// after some event occurs. Once the hold is released by explicitly setting
|
|
// this field to false, the object will become subject to any bucket-level
|
|
// retention policy, except that the retention duration will be calculated
|
|
// from the time the event based hold was lifted, rather than the time the
|
|
// object was created.
|
|
//
|
|
// In a WriteObject request, not setting this field implies that the value
|
|
// should be taken from the parent bucket's "default_event_based_hold" field.
|
|
// In a response, this field will always be set to true or false.
|
|
EventBasedHold *bool `protobuf:"varint,23,opt,name=event_based_hold,json=eventBasedHold,proto3,oneof" json:"event_based_hold,omitempty"`
|
|
// Output only. The owner of the object. This will always be the uploader of
|
|
// the object.
|
|
Owner *Owner `protobuf:"bytes,24,opt,name=owner,proto3" json:"owner,omitempty"`
|
|
// Metadata of Customer-Supplied Encryption Key, if the object is encrypted by
|
|
// such a key.
|
|
CustomerEncryption *CustomerEncryption `protobuf:"bytes,25,opt,name=customer_encryption,json=customerEncryption,proto3" json:"customer_encryption,omitempty"`
|
|
// A user-specified timestamp set on an object.
|
|
CustomTime *timestamppb.Timestamp `protobuf:"bytes,26,opt,name=custom_time,json=customTime,proto3" json:"custom_time,omitempty"`
|
|
}
|
|
|
|
func (x *Object) Reset() {
|
|
*x = Object{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[50]
|
|
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_v2_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 Object.ProtoReflect.Descriptor instead.
|
|
func (*Object) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{50}
|
|
}
|
|
|
|
func (x *Object) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Object) GetBucket() string {
|
|
if x != nil {
|
|
return x.Bucket
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Object) GetEtag() string {
|
|
if x != nil {
|
|
return x.Etag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Object) GetGeneration() int64 {
|
|
if x != nil {
|
|
return x.Generation
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Object) GetMetageneration() int64 {
|
|
if x != nil {
|
|
return x.Metageneration
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Object) GetStorageClass() string {
|
|
if x != nil {
|
|
return x.StorageClass
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Object) GetSize() int64 {
|
|
if x != nil {
|
|
return x.Size
|
|
}
|
|
return 0
|
|
}
|
|
|
|
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) GetDeleteTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.DeleteTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetContentType() string {
|
|
if x != nil {
|
|
return x.ContentType
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Object) GetCreateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.CreateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetComponentCount() int32 {
|
|
if x != nil {
|
|
return x.ComponentCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Object) GetChecksums() *ObjectChecksums {
|
|
if x != nil {
|
|
return x.Checksums
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetUpdateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.UpdateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetKmsKey() string {
|
|
if x != nil {
|
|
return x.KmsKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Object) GetUpdateStorageClassTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.UpdateStorageClassTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetTemporaryHold() bool {
|
|
if x != nil {
|
|
return x.TemporaryHold
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Object) GetRetentionExpireTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.RetentionExpireTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetMetadata() map[string]string {
|
|
if x != nil {
|
|
return x.Metadata
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetEventBasedHold() bool {
|
|
if x != nil && x.EventBasedHold != nil {
|
|
return *x.EventBasedHold
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Object) GetOwner() *Owner {
|
|
if x != nil {
|
|
return x.Owner
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetCustomerEncryption() *CustomerEncryption {
|
|
if x != nil {
|
|
return x.CustomerEncryption
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Object) GetCustomTime() *timestamppb.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"`
|
|
// The ID of the access-control entry.
|
|
Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
|
|
// The entity holding the permission, in one of the following forms:
|
|
// * `user-{userid}`
|
|
// * `user-{email}`
|
|
// * `group-{groupid}`
|
|
// * `group-{email}`
|
|
// * `domain-{domain}`
|
|
// * `project-{team}-{projectnumber}`
|
|
// * `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`.
|
|
// For project entities, `project-{team}-{projectnumber}` format will be
|
|
// returned on response.
|
|
Entity string `protobuf:"bytes,3,opt,name=entity,proto3" json:"entity,omitempty"`
|
|
// Output only. The alternative entity format, if exists. For project
|
|
// entities, `project-{team}-{projectid}` format will be returned on response.
|
|
EntityAlt string `protobuf:"bytes,9,opt,name=entity_alt,json=entityAlt,proto3" json:"entity_alt,omitempty"`
|
|
// The ID for the entity, if any.
|
|
EntityId string `protobuf:"bytes,4,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
|
|
// The etag of the ObjectAccessControl.
|
|
// If included in the metadata of an update or delete request message, the
|
|
// operation will only be performed if the etag matches that of the live
|
|
// object's ObjectAccessControl.
|
|
Etag string `protobuf:"bytes,8,opt,name=etag,proto3" json:"etag,omitempty"`
|
|
// The email address associated with the entity, if any.
|
|
Email string `protobuf:"bytes,5,opt,name=email,proto3" json:"email,omitempty"`
|
|
// The domain associated with the entity, if any.
|
|
Domain string `protobuf:"bytes,6,opt,name=domain,proto3" json:"domain,omitempty"`
|
|
// The project team associated with the entity, if any.
|
|
ProjectTeam *ProjectTeam `protobuf:"bytes,7,opt,name=project_team,json=projectTeam,proto3" json:"project_team,omitempty"`
|
|
}
|
|
|
|
func (x *ObjectAccessControl) Reset() {
|
|
*x = ObjectAccessControl{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[51]
|
|
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_v2_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 ObjectAccessControl.ProtoReflect.Descriptor instead.
|
|
func (*ObjectAccessControl) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{51}
|
|
}
|
|
|
|
func (x *ObjectAccessControl) GetRole() string {
|
|
if x != nil {
|
|
return x.Role
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ObjectAccessControl) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ObjectAccessControl) GetEntity() string {
|
|
if x != nil {
|
|
return x.Entity
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ObjectAccessControl) GetEntityAlt() string {
|
|
if x != nil {
|
|
return x.EntityAlt
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ObjectAccessControl) GetEntityId() string {
|
|
if x != nil {
|
|
return x.EntityId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ObjectAccessControl) GetEtag() string {
|
|
if x != nil {
|
|
return x.Etag
|
|
}
|
|
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 Objects.ListObjects
|
|
type ListObjectsResponse struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The list of items.
|
|
Objects []*Object `protobuf:"bytes,1,rep,name=objects,proto3" json:"objects,omitempty"`
|
|
// The list of prefixes of objects matching-but-not-listed up to and including
|
|
// the requested delimiter.
|
|
Prefixes []string `protobuf:"bytes,2,rep,name=prefixes,proto3" json:"prefixes,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_v2_storage_proto_msgTypes[52]
|
|
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_v2_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 ListObjectsResponse.ProtoReflect.Descriptor instead.
|
|
func (*ListObjectsResponse) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{52}
|
|
}
|
|
|
|
func (x *ListObjectsResponse) GetObjects() []*Object {
|
|
if x != nil {
|
|
return x.Objects
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *ListObjectsResponse) GetPrefixes() []string {
|
|
if x != nil {
|
|
return x.Prefixes
|
|
}
|
|
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_v2_storage_proto_msgTypes[53]
|
|
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_v2_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 ProjectTeam.ProtoReflect.Descriptor instead.
|
|
func (*ProjectTeam) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{53}
|
|
}
|
|
|
|
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 service account, owned by Cloud Storage, which may be used when taking
|
|
// action on behalf of a given project, for example to publish Pub/Sub
|
|
// notifications or to retrieve security keys.
|
|
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_v2_storage_proto_msgTypes[54]
|
|
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_v2_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 ServiceAccount.ProtoReflect.Descriptor instead.
|
|
func (*ServiceAccount) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{54}
|
|
}
|
|
|
|
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_v2_storage_proto_msgTypes[55]
|
|
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_v2_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 Owner.ProtoReflect.Descriptor instead.
|
|
func (*Owner) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{55}
|
|
}
|
|
|
|
func (x *Owner) GetEntity() string {
|
|
if x != nil {
|
|
return x.Entity
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Owner) GetEntityId() string {
|
|
if x != nil {
|
|
return x.EntityId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 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_v2_storage_proto_msgTypes[56]
|
|
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_v2_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 ContentRange.ProtoReflect.Descriptor instead.
|
|
func (*ContentRange) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{56}
|
|
}
|
|
|
|
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
|
|
}
|
|
|
|
// Description of a source object for a composition request.
|
|
type ComposeObjectRequest_SourceObject struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Required. 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_SourceObject_ObjectPreconditions `protobuf:"bytes,3,opt,name=object_preconditions,json=objectPreconditions,proto3" json:"object_preconditions,omitempty"`
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject) Reset() {
|
|
*x = ComposeObjectRequest_SourceObject{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[57]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ComposeObjectRequest_SourceObject) ProtoMessage() {}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 ComposeObjectRequest_SourceObject.ProtoReflect.Descriptor instead.
|
|
func (*ComposeObjectRequest_SourceObject) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{12, 0}
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject) GetGeneration() int64 {
|
|
if x != nil {
|
|
return x.Generation
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject) GetObjectPreconditions() *ComposeObjectRequest_SourceObject_ObjectPreconditions {
|
|
if x != nil {
|
|
return x.ObjectPreconditions
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Preconditions for a source object of a composition request.
|
|
type ComposeObjectRequest_SourceObject_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 *int64 `protobuf:"varint,1,opt,name=if_generation_match,json=ifGenerationMatch,proto3,oneof" json:"if_generation_match,omitempty"`
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject_ObjectPreconditions) Reset() {
|
|
*x = ComposeObjectRequest_SourceObject_ObjectPreconditions{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[58]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject_ObjectPreconditions) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ComposeObjectRequest_SourceObject_ObjectPreconditions) ProtoMessage() {}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject_ObjectPreconditions) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 ComposeObjectRequest_SourceObject_ObjectPreconditions.ProtoReflect.Descriptor instead.
|
|
func (*ComposeObjectRequest_SourceObject_ObjectPreconditions) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{12, 0, 0}
|
|
}
|
|
|
|
func (x *ComposeObjectRequest_SourceObject_ObjectPreconditions) GetIfGenerationMatch() int64 {
|
|
if x != nil && x.IfGenerationMatch != nil {
|
|
return *x.IfGenerationMatch
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 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_v2_storage_proto_msgTypes[59]
|
|
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_v2_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 Bucket_Billing.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_Billing) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 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 Cloud Storage 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_v2_storage_proto_msgTypes[60]
|
|
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_v2_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 Bucket_Cors.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_Cors) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 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
|
|
|
|
// The name of the Cloud KMS key that will be used to encrypt objects
|
|
// inserted into this bucket, if no encryption method is specified.
|
|
DefaultKmsKey string `protobuf:"bytes,1,opt,name=default_kms_key,json=defaultKmsKey,proto3" json:"default_kms_key,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket_Encryption) Reset() {
|
|
*x = Bucket_Encryption{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[61]
|
|
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_v2_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 Bucket_Encryption.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_Encryption) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 2}
|
|
}
|
|
|
|
func (x *Bucket_Encryption) GetDefaultKmsKey() string {
|
|
if x != nil {
|
|
return x.DefaultKmsKey
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// Bucket restriction options.
|
|
type Bucket_IamConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// Bucket restriction options currently enforced on the bucket.
|
|
UniformBucketLevelAccess *Bucket_IamConfig_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. Valid values are
|
|
// "enforced" or "inherited".
|
|
PublicAccessPrevention string `protobuf:"bytes,3,opt,name=public_access_prevention,json=publicAccessPrevention,proto3" json:"public_access_prevention,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket_IamConfig) Reset() {
|
|
*x = Bucket_IamConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[62]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Bucket_IamConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Bucket_IamConfig) ProtoMessage() {}
|
|
|
|
func (x *Bucket_IamConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 Bucket_IamConfig.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_IamConfig) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 3}
|
|
}
|
|
|
|
func (x *Bucket_IamConfig) GetUniformBucketLevelAccess() *Bucket_IamConfig_UniformBucketLevelAccess {
|
|
if x != nil {
|
|
return x.UniformBucketLevelAccess
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket_IamConfig) GetPublicAccessPrevention() string {
|
|
if x != nil {
|
|
return x.PublicAccessPrevention
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 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_v2_storage_proto_msgTypes[63]
|
|
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_v2_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 Bucket_Lifecycle.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_Lifecycle) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 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,
|
|
// using path format (like `projects/123456/buckets/foo`).
|
|
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_v2_storage_proto_msgTypes[64]
|
|
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_v2_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 Bucket_Logging.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_Logging) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 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.
|
|
EffectiveTime *timestamppb.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 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. Any `nanos` value specified will be
|
|
// rounded down to the nearest second.
|
|
RetentionDuration *durationpb.Duration `protobuf:"bytes,4,opt,name=retention_duration,json=retentionDuration,proto3" json:"retention_duration,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket_RetentionPolicy) Reset() {
|
|
*x = Bucket_RetentionPolicy{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[65]
|
|
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_v2_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 Bucket_RetentionPolicy.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_RetentionPolicy) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 6}
|
|
}
|
|
|
|
func (x *Bucket_RetentionPolicy) GetEffectiveTime() *timestamppb.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) GetRetentionDuration() *durationpb.Duration {
|
|
if x != nil {
|
|
return x.RetentionDuration
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Soft delete policy properties of a bucket.
|
|
type Bucket_SoftDeletePolicy struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// The period of time that soft-deleted objects in the bucket must be
|
|
// retained and cannot be permanently deleted. The duration must be greater
|
|
// than or equal to 7 days and less than 1 year.
|
|
RetentionDuration *durationpb.Duration `protobuf:"bytes,1,opt,name=retention_duration,json=retentionDuration,proto3,oneof" json:"retention_duration,omitempty"`
|
|
// Time from which the policy was effective. This is service-provided.
|
|
EffectiveTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=effective_time,json=effectiveTime,proto3,oneof" json:"effective_time,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket_SoftDeletePolicy) Reset() {
|
|
*x = Bucket_SoftDeletePolicy{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[66]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Bucket_SoftDeletePolicy) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Bucket_SoftDeletePolicy) ProtoMessage() {}
|
|
|
|
func (x *Bucket_SoftDeletePolicy) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_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 Bucket_SoftDeletePolicy.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_SoftDeletePolicy) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 7}
|
|
}
|
|
|
|
func (x *Bucket_SoftDeletePolicy) GetRetentionDuration() *durationpb.Duration {
|
|
if x != nil {
|
|
return x.RetentionDuration
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket_SoftDeletePolicy) GetEffectiveTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.EffectiveTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Properties of a bucket related to versioning.
|
|
// For more on Cloud Storage 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_v2_storage_proto_msgTypes[67]
|
|
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_v2_storage_proto_msgTypes[67]
|
|
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_v2_storage_proto_rawDescGZIP(), []int{43, 8}
|
|
}
|
|
|
|
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 Cloud Storage, 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_v2_storage_proto_msgTypes[68]
|
|
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_v2_storage_proto_msgTypes[68]
|
|
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_v2_storage_proto_rawDescGZIP(), []int{43, 9}
|
|
}
|
|
|
|
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 Custom Dual Regions. It should specify precisely two
|
|
// eligible regions within the same Multiregion. More information on regions
|
|
// may be found [https://cloud.google.com/storage/docs/locations][here].
|
|
type Bucket_CustomPlacementConfig struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
// List of locations to use for data placement.
|
|
DataLocations []string `protobuf:"bytes,1,rep,name=data_locations,json=dataLocations,proto3" json:"data_locations,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket_CustomPlacementConfig) Reset() {
|
|
*x = Bucket_CustomPlacementConfig{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[69]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Bucket_CustomPlacementConfig) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Bucket_CustomPlacementConfig) ProtoMessage() {}
|
|
|
|
func (x *Bucket_CustomPlacementConfig) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[69]
|
|
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_CustomPlacementConfig.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_CustomPlacementConfig) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 10}
|
|
}
|
|
|
|
func (x *Bucket_CustomPlacementConfig) GetDataLocations() []string {
|
|
if x != nil {
|
|
return x.DataLocations
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// 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"`
|
|
// Output only. Latest instant at which the `enabled` field was set to true
|
|
// after being disabled/unconfigured or set to false after being enabled. If
|
|
// Autoclass is enabled when the bucket is created, the toggle_time is set
|
|
// to the bucket creation time.
|
|
ToggleTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=toggle_time,json=toggleTime,proto3" json:"toggle_time,omitempty"`
|
|
// An object in an Autoclass bucket will eventually cool down to the
|
|
// terminal storage class if there is no access to the object.
|
|
// The only valid values are NEARLINE and ARCHIVE.
|
|
TerminalStorageClass *string `protobuf:"bytes,3,opt,name=terminal_storage_class,json=terminalStorageClass,proto3,oneof" json:"terminal_storage_class,omitempty"`
|
|
// Output only. Latest instant at which the autoclass terminal storage class
|
|
// was updated.
|
|
TerminalStorageClassUpdateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=terminal_storage_class_update_time,json=terminalStorageClassUpdateTime,proto3,oneof" json:"terminal_storage_class_update_time,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket_Autoclass) Reset() {
|
|
*x = Bucket_Autoclass{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[70]
|
|
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_v2_storage_proto_msgTypes[70]
|
|
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_v2_storage_proto_rawDescGZIP(), []int{43, 11}
|
|
}
|
|
|
|
func (x *Bucket_Autoclass) GetEnabled() bool {
|
|
if x != nil {
|
|
return x.Enabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Bucket_Autoclass) GetToggleTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.ToggleTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket_Autoclass) GetTerminalStorageClass() string {
|
|
if x != nil && x.TerminalStorageClass != nil {
|
|
return *x.TerminalStorageClass
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Bucket_Autoclass) GetTerminalStorageClassUpdateTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.TerminalStorageClassUpdateTime
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Settings for Uniform Bucket level access.
|
|
// See https://cloud.google.com/storage/docs/uniform-bucket-level-access.
|
|
type Bucket_IamConfig_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
|
|
// `iam_config.uniform_bucket_level_access.enabled` from `true` to
|
|
// `false`. Mutable until the specified deadline is reached, but not
|
|
// afterward.
|
|
LockTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=lock_time,json=lockTime,proto3" json:"lock_time,omitempty"`
|
|
}
|
|
|
|
func (x *Bucket_IamConfig_UniformBucketLevelAccess) Reset() {
|
|
*x = Bucket_IamConfig_UniformBucketLevelAccess{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[72]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Bucket_IamConfig_UniformBucketLevelAccess) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Bucket_IamConfig_UniformBucketLevelAccess) ProtoMessage() {}
|
|
|
|
func (x *Bucket_IamConfig_UniformBucketLevelAccess) ProtoReflect() protoreflect.Message {
|
|
mi := &file_google_storage_v2_storage_proto_msgTypes[72]
|
|
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_IamConfig_UniformBucketLevelAccess.ProtoReflect.Descriptor instead.
|
|
func (*Bucket_IamConfig_UniformBucketLevelAccess) Descriptor() ([]byte, []int) {
|
|
return file_google_storage_v2_storage_proto_rawDescGZIP(), []int{43, 3, 0}
|
|
}
|
|
|
|
func (x *Bucket_IamConfig_UniformBucketLevelAccess) GetEnabled() bool {
|
|
if x != nil {
|
|
return x.Enabled
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Bucket_IamConfig_UniformBucketLevelAccess) GetLockTime() *timestamppb.Timestamp {
|
|
if x != nil {
|
|
return x.LockTime
|
|
}
|
|
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_v2_storage_proto_msgTypes[73]
|
|
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_v2_storage_proto_msgTypes[73]
|
|
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_v2_storage_proto_rawDescGZIP(), []int{43, 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_v2_storage_proto_msgTypes[74]
|
|
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_v2_storage_proto_msgTypes[74]
|
|
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_v2_storage_proto_rawDescGZIP(), []int{43, 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.
|
|
// A value of 0 indicates that all objects immediately match this
|
|
// condition.
|
|
AgeDays *int32 `protobuf:"varint,1,opt,name=age_days,json=ageDays,proto3,oneof" json:"age_days,omitempty"`
|
|
// This condition is satisfied when an object is created before midnight
|
|
// of the specified date in UTC.
|
|
CreatedBefore *date.Date `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 *bool `protobuf:"varint,3,opt,name=is_live,json=isLive,proto3,oneof" 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,oneof" 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"`
|
|
// Number of days that have elapsed since the custom timestamp set on an
|
|
// object.
|
|
// The value of the field must be a nonnegative integer.
|
|
DaysSinceCustomTime *int32 `protobuf:"varint,7,opt,name=days_since_custom_time,json=daysSinceCustomTime,proto3,oneof" json:"days_since_custom_time,omitempty"`
|
|
// An object matches this condition if the custom timestamp set on the
|
|
// object is before the specified date in UTC.
|
|
CustomTimeBefore *date.Date `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,oneof" 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 date in UTC.
|
|
NoncurrentTimeBefore *date.Date `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_v2_storage_proto_msgTypes[75]
|
|
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_v2_storage_proto_msgTypes[75]
|
|
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_v2_storage_proto_rawDescGZIP(), []int{43, 4, 0, 1}
|
|
}
|
|
|
|
func (x *Bucket_Lifecycle_Rule_Condition) GetAgeDays() int32 {
|
|
if x != nil && x.AgeDays != nil {
|
|
return *x.AgeDays
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Bucket_Lifecycle_Rule_Condition) GetCreatedBefore() *date.Date {
|
|
if x != nil {
|
|
return x.CreatedBefore
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket_Lifecycle_Rule_Condition) GetIsLive() bool {
|
|
if x != nil && x.IsLive != nil {
|
|
return *x.IsLive
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Bucket_Lifecycle_Rule_Condition) GetNumNewerVersions() int32 {
|
|
if x != nil && x.NumNewerVersions != 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) GetDaysSinceCustomTime() int32 {
|
|
if x != nil && x.DaysSinceCustomTime != nil {
|
|
return *x.DaysSinceCustomTime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Bucket_Lifecycle_Rule_Condition) GetCustomTimeBefore() *date.Date {
|
|
if x != nil {
|
|
return x.CustomTimeBefore
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Bucket_Lifecycle_Rule_Condition) GetDaysSinceNoncurrentTime() int32 {
|
|
if x != nil && x.DaysSinceNoncurrentTime != nil {
|
|
return *x.DaysSinceNoncurrentTime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Bucket_Lifecycle_Rule_Condition) GetNoncurrentTimeBefore() *date.Date {
|
|
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
|
|
}
|
|
|
|
var File_google_storage_v2_storage_proto protoreflect.FileDescriptor
|
|
|
|
var file_google_storage_v2_storage_proto_rawDesc = []byte{
|
|
0x0a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x2f, 0x76, 0x32, 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, 0x32, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
|
|
0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 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, 0x19,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75,
|
|
0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 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, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d, 0x2f,
|
|
0x76, 0x31, 0x2f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
|
|
0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
|
|
0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
|
|
0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
|
|
0x2f, 0x65, 0x6d, 0x70, 0x74, 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, 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,
|
|
0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x64, 0x61, 0x74,
|
|
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8d, 0x02, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65,
|
|
0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
|
|
0x39, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0,
|
|
0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67,
|
|
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3b, 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, 0x48, 0x00, 0x52, 0x15, 0x69,
|
|
0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d,
|
|
0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x42, 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, 0x03, 0x48, 0x01, 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, 0x88, 0x01, 0x01, 0x42, 0x1a, 0x0a, 0x18, 0x5f,
|
|
0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x22, 0xd6, 0x02, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x42,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x04,
|
|
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa,
|
|
0x41, 0x1f, 0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3b, 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, 0x48, 0x00, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65,
|
|
0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63,
|
|
0x68, 0x88, 0x01, 0x01, 0x12, 0x42, 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, 0x03, 0x48, 0x01, 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, 0x88, 0x01, 0x01, 0x12, 0x3c, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64,
|
|
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, 0x48, 0x02, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d,
|
|
0x61, 0x73, 0x6b, 0x88, 0x01, 0x01, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65,
|
|
0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74,
|
|
0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b,
|
|
0x22, 0x93, 0x02, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
|
|
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f,
|
|
0x12, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52,
|
|
0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b,
|
|
0x65, 0x74, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
|
|
0x41, 0x02, 0x52, 0x08, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e,
|
|
0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x06,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64,
|
|
0x41, 0x63, 0x6c, 0x12, 0x41, 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, 0x07, 0x20, 0x01, 0x28, 0x09, 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, 0x22, 0xf3, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x42,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a,
|
|
0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0,
|
|
0x41, 0x02, 0xfa, 0x41, 0x1f, 0x12, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67,
|
|
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09,
|
|
0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52,
|
|
0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67,
|
|
0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 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, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
|
|
0x12, 0x3c, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 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, 0x48,
|
|
0x00, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x88, 0x01, 0x01, 0x42, 0x0c,
|
|
0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x22, 0x72, 0x0a, 0x13,
|
|
0x4c, 0x69, 0x73, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
|
0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 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, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52,
|
|
0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 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, 0x9e, 0x01, 0x0a, 0x20, 0x4c, 0x6f, 0x63, 0x6b, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52,
|
|
0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65,
|
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73,
|
|
0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
|
|
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x12, 0x3b, 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, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65,
|
|
0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63,
|
|
0x68, 0x22, 0xb6, 0x03, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x42, 0x75, 0x63, 0x6b,
|
|
0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x06, 0x62, 0x75, 0x63,
|
|
0x6b, 0x65, 0x74, 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, 0x32, 0x2e, 0x42, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x12, 0x3b, 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, 0x48, 0x00, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65,
|
|
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x42,
|
|
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, 0x03, 0x48, 0x01, 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, 0x88,
|
|
0x01, 0x01, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64,
|
|
0x5f, 0x61, 0x63, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x64,
|
|
0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x41, 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, 0x09, 0x20, 0x01, 0x28, 0x09,
|
|
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, 0x40, 0x0a, 0x0b,
|
|
0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0,
|
|
0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x1a,
|
|
0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x22, 0x68, 0x0a, 0x1f, 0x44, 0x65,
|
|
0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a,
|
|
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x31, 0xe0, 0x41, 0x02,
|
|
0xfa, 0x41, 0x2b, 0x0a, 0x29, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4e, 0x6f, 0x74, 0x69,
|
|
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x04,
|
|
0x6e, 0x61, 0x6d, 0x65, 0x22, 0x65, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66,
|
|
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71,
|
|
0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x09, 0x42, 0x31, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2b, 0x0a, 0x29, 0x73, 0x74, 0x6f, 0x72,
|
|
0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
|
|
0x6f, 0x6d, 0x2f, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43,
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xc9, 0x01, 0x0a, 0x1f,
|
|
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
|
|
0x49, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
|
|
0x31, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2b, 0x12, 0x29, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
|
|
0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
|
|
0x69, 0x67, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x5b, 0x0a, 0x13, 0x6e, 0x6f,
|
|
0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
|
|
0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4e, 0x6f, 0x74, 0x69,
|
|
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03,
|
|
0xe0, 0x41, 0x02, 0x52, 0x12, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xa7, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74,
|
|
0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
|
|
0x69, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x06, 0x70, 0x61,
|
|
0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x31, 0xe0, 0x41, 0x02, 0xfa,
|
|
0x41, 0x2b, 0x12, 0x29, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4e, 0x6f, 0x74, 0x69, 0x66,
|
|
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x70,
|
|
0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69,
|
|
0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69,
|
|
0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65,
|
|
0x6e, 0x22, 0xa3, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
|
|
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x73,
|
|
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x58, 0x0a, 0x14, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x01, 0x20,
|
|
0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x13, 0x6e, 0x6f, 0x74, 0x69,
|
|
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 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, 0xc3, 0x07, 0x0a, 0x14, 0x43, 0x6f, 0x6d, 0x70,
|
|
0x6f, 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
|
0x12, 0x40, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 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, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
|
|
0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x12, 0x5b, 0x0a, 0x0e, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x6f, 0x62, 0x6a,
|
|
0x65, 0x63, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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,
|
|
0x52, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12,
|
|
0x3c, 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, 0x09, 0x20,
|
|
0x01, 0x28, 0x09, 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, 0x33, 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, 0x03, 0x48, 0x00, 0x52, 0x11, 0x69, 0x66,
|
|
0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88,
|
|
0x01, 0x01, 0x12, 0x3b, 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, 0x03, 0x48, 0x01, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12,
|
|
0x3f, 0x0a, 0x07, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
|
|
0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43,
|
|
0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79,
|
|
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, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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,
|
|
0x4d, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73,
|
|
0x75, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x1a, 0xa8,
|
|
0x02, 0x0a, 0x0c, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12,
|
|
0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
|
|
0x41, 0x02, 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, 0x7b, 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, 0x48, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 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, 0x33, 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, 0x03, 0x48, 0x00, 0x52, 0x11, 0x69, 0x66, 0x47,
|
|
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01,
|
|
0x01, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x66,
|
|
0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63,
|
|
0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x22, 0xe2, 0x04,
|
|
0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65,
|
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73,
|
|
0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
|
|
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 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,
|
|
0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x12, 0x33, 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, 0x03, 0x48, 0x00,
|
|
0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61,
|
|
0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x3a, 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, 0x03, 0x48, 0x01, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88,
|
|
0x01, 0x01, 0x12, 0x3b, 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, 0x03, 0x48, 0x02, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12,
|
|
0x42, 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, 0x03, 0x48, 0x03, 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,
|
|
0x88, 0x01, 0x01, 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, 0x32, 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, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69,
|
|
0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74,
|
|
0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65,
|
|
0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74,
|
|
0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x22, 0xa9, 0x05, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x4f, 0x62,
|
|
0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x62,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02,
|
|
0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b,
|
|
0x65, 0x74, 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, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x02,
|
|
0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x33, 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, 0x03, 0x48, 0x00, 0x52, 0x11, 0x69, 0x66, 0x47,
|
|
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01,
|
|
0x01, 0x12, 0x3a, 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, 0x03, 0x48, 0x01, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x3b, 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, 0x03, 0x48, 0x02,
|
|
0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x42, 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, 0x03, 0x48,
|
|
0x03, 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, 0x88, 0x01, 0x01, 0x12, 0x2b,
|
|
0x0a, 0x0f, 0x63, 0x6f, 0x70, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x63,
|
|
0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x48, 0x04, 0x52, 0x0d, 0x63, 0x6f, 0x70, 0x79, 0x53,
|
|
0x6f, 0x75, 0x72, 0x63, 0x65, 0x41, 0x63, 0x6c, 0x88, 0x01, 0x01, 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, 0x32, 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, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69,
|
|
0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74,
|
|
0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a,
|
|
0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x42, 0x12, 0x0a, 0x10, 0x5f, 0x63,
|
|
0x6f, 0x70, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x6c, 0x22, 0x3f,
|
|
0x0a, 0x1b, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c,
|
|
0x65, 0x57, 0x72, 0x69, 0x74, 0x65, 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, 0x22,
|
|
0x1e, 0x0a, 0x1c, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x61, 0x62,
|
|
0x6c, 0x65, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
|
|
0xec, 0x05, 0x0a, 0x11, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65,
|
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73,
|
|
0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
|
|
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 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, 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, 0x33, 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, 0x03, 0x48, 0x00,
|
|
0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61,
|
|
0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x3a, 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, 0x03, 0x48, 0x01, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88,
|
|
0x01, 0x01, 0x12, 0x3b, 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, 0x03, 0x48, 0x02, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12,
|
|
0x42, 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, 0x03, 0x48, 0x03, 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,
|
|
0x88, 0x01, 0x01, 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, 0x32, 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, 0x3c, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 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, 0x48, 0x04, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x88, 0x01, 0x01,
|
|
0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f,
|
|
0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d,
|
|
0x61, 0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61,
|
|
0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68,
|
|
0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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,
|
|
0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x22, 0xe4,
|
|
0x05, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75,
|
|
0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20,
|
|
0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
|
|
0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 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,
|
|
0x26, 0x0a, 0x0c, 0x73, 0x6f, 0x66, 0x74, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18,
|
|
0x0b, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x6f, 0x66, 0x74, 0x44, 0x65, 0x6c,
|
|
0x65, 0x74, 0x65, 0x64, 0x88, 0x01, 0x01, 0x12, 0x33, 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, 0x03, 0x48, 0x01, 0x52, 0x11, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x3a, 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, 0x03, 0x48, 0x02, 0x52,
|
|
0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74,
|
|
0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x3b, 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, 0x03, 0x48, 0x03, 0x52, 0x15, 0x69, 0x66, 0x4d,
|
|
0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74,
|
|
0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x42, 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, 0x03, 0x48, 0x04, 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, 0x88, 0x01, 0x01, 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, 0x32, 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, 0x3c, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64,
|
|
0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69,
|
|
0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x48, 0x05, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d,
|
|
0x61, 0x73, 0x6b, 0x88, 0x01, 0x01, 0x42, 0x0f, 0x0a, 0x0d, 0x5f, 0x73, 0x6f, 0x66, 0x74, 0x5f,
|
|
0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x66, 0x5f, 0x67,
|
|
0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42,
|
|
0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f,
|
|
0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x61, 0x64,
|
|
0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x22, 0xaf, 0x02, 0x0a, 0x12, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x62,
|
|
0x6a, 0x65, 0x63, 0x74, 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, 0x32, 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, 0x32, 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, 0x32, 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, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, 0x6d,
|
|
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x8c, 0x04, 0x0a, 0x0f, 0x57, 0x72, 0x69, 0x74,
|
|
0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x70, 0x65, 0x63, 0x12, 0x3a, 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,
|
|
0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72,
|
|
0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x65,
|
|
0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x0d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x33,
|
|
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, 0x03, 0x48, 0x00, 0x52, 0x11, 0x69,
|
|
0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68,
|
|
0x88, 0x01, 0x01, 0x12, 0x3a, 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, 0x03, 0x48, 0x01, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12,
|
|
0x3b, 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, 0x03,
|
|
0x48, 0x02, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x42, 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,
|
|
0x03, 0x48, 0x03, 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, 0x88, 0x01, 0x01,
|
|
0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18,
|
|
0x08, 0x20, 0x01, 0x28, 0x03, 0x48, 0x04, 0x52, 0x0a, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53,
|
|
0x69, 0x7a, 0x65, 0x88, 0x01, 0x01, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65,
|
|
0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a,
|
|
0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69,
|
|
0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x42, 0x0e, 0x0a, 0x0c, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x22, 0xf8, 0x03, 0x0a, 0x12, 0x57, 0x72, 0x69, 0x74, 0x65,
|
|
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, 0x50, 0x0a, 0x11,
|
|
0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x70, 0x65,
|
|
0x63, 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, 0x32, 0x2e, 0x57, 0x72, 0x69, 0x74,
|
|
0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x0f, 0x77,
|
|
0x72, 0x69, 0x74, 0x65, 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, 0x32, 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, 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, 0x32, 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, 0x32, 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, 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, 0x87, 0x01, 0x0a, 0x13, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x70, 0x65, 0x72,
|
|
0x73, 0x69, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
|
|
0x03, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x64, 0x53, 0x69,
|
|
0x7a, 0x65, 0x12, 0x37, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74,
|
|
0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x48,
|
|
0x00, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x77,
|
|
0x72, 0x69, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xb5, 0x04, 0x0a, 0x16,
|
|
0x42, 0x69, 0x64, 0x69, 0x57, 0x72, 0x69, 0x74, 0x65, 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, 0x50, 0x0a, 0x11, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f,
|
|
0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 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, 0x32, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
|
|
0x53, 0x70, 0x65, 0x63, 0x48, 0x00, 0x52, 0x0f, 0x77, 0x72, 0x69, 0x74, 0x65, 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, 0x32, 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, 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, 0x32, 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, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x18,
|
|
0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x65, 0x4c, 0x6f, 0x6f, 0x6b,
|
|
0x75, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28,
|
|
0x08, 0x52, 0x05, 0x66, 0x6c, 0x75, 0x73, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x69, 0x6e, 0x69,
|
|
0x73, 0x68, 0x5f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x09, 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, 0x0a, 0x20, 0x01, 0x28,
|
|
0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x2e, 0x76, 0x32, 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, 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, 0x8b, 0x01, 0x0a, 0x17, 0x42, 0x69, 0x64, 0x69, 0x57, 0x72, 0x69, 0x74,
|
|
0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
|
|
0x27, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a,
|
|
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x69,
|
|
0x73, 0x74, 0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x37, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f,
|
|
0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4f,
|
|
0x62, 0x6a, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
|
0x65, 0x42, 0x0e, 0x0a, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75,
|
|
0x73, 0x22, 0x9f, 0x04, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
|
|
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
|
|
0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f,
|
|
0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52,
|
|
0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
|
|
0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
|
|
0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b,
|
|
0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f,
|
|
0x6b, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x72,
|
|
0x18, 0x04, 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,
|
|
0x05, 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,
|
|
0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69,
|
|
0x6f, 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x64, 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, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x61, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x88, 0x01,
|
|
0x01, 0x12, 0x34, 0x0a, 0x13, 0x6c, 0x65, 0x78, 0x69, 0x63, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68,
|
|
0x69, 0x63, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
|
|
0xe0, 0x41, 0x01, 0x52, 0x12, 0x6c, 0x65, 0x78, 0x69, 0x63, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68,
|
|
0x69, 0x63, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x11, 0x6c, 0x65, 0x78, 0x69, 0x63,
|
|
0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x5f, 0x65, 0x6e, 0x64, 0x18, 0x0b, 0x20, 0x01,
|
|
0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10, 0x6c, 0x65, 0x78, 0x69, 0x63, 0x6f, 0x67,
|
|
0x72, 0x61, 0x70, 0x68, 0x69, 0x63, 0x45, 0x6e, 0x64, 0x12, 0x26, 0x0a, 0x0c, 0x73, 0x6f, 0x66,
|
|
0x74, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x42,
|
|
0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x73, 0x6f, 0x66, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
|
|
0x64, 0x12, 0x22, 0x0a, 0x0a, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x67, 0x6c, 0x6f, 0x62, 0x18,
|
|
0x0e, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63,
|
|
0x68, 0x47, 0x6c, 0x6f, 0x62, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6d,
|
|
0x61, 0x73, 0x6b, 0x22, 0xaa, 0x01, 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, 0x32, 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,
|
|
0x22, 0x8c, 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, 0x27, 0x0a,
|
|
0x0e, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74,
|
|
0x65, 0x64, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x37, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
|
0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
|
|
0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4f, 0x62, 0x6a,
|
|
0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x42,
|
|
0x0e, 0x0a, 0x0c, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22,
|
|
0xb5, 0x0e, 0x0a, 0x14, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x10, 0x64, 0x65, 0x73, 0x74,
|
|
0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01,
|
|
0x28, 0x09, 0x42, 0x06, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74,
|
|
0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x57, 0x0a, 0x12, 0x64,
|
|
0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xe0, 0x41, 0x05, 0xfa,
|
|
0x41, 0x1f, 0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x12, 0x56, 0x0a, 0x13, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28,
|
|
0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
|
|
0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x11, 0x64, 0x65, 0x73, 0x74, 0x69,
|
|
0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x0b,
|
|
0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 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, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0b, 0x64, 0x65,
|
|
0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4a, 0x0a, 0x0d, 0x73, 0x6f, 0x75,
|
|
0x72, 0x63, 0x65, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
|
|
0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
|
|
0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 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, 0x03, 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, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x73, 0x6f, 0x75, 0x72,
|
|
0x63, 0x65, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d,
|
|
0x72, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x54, 0x6f, 0x6b, 0x65,
|
|
0x6e, 0x12, 0x3c, 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,
|
|
0x1c, 0x20, 0x01, 0x28, 0x09, 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,
|
|
0x33, 0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x11,
|
|
0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63,
|
|
0x68, 0x88, 0x01, 0x01, 0x12, 0x3a, 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,
|
|
0x08, 0x20, 0x01, 0x28, 0x03, 0x48, 0x01, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01,
|
|
0x12, 0x3b, 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, 0x09, 0x20, 0x01, 0x28,
|
|
0x03, 0x48, 0x02, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x42, 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, 0x0a, 0x20, 0x01,
|
|
0x28, 0x03, 0x48, 0x03, 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, 0x88, 0x01,
|
|
0x01, 0x12, 0x40, 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,
|
|
0x0b, 0x20, 0x01, 0x28, 0x03, 0x48, 0x04, 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,
|
|
0x88, 0x01, 0x01, 0x12, 0x47, 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, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x48, 0x05, 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, 0x88, 0x01, 0x01, 0x12, 0x48, 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, 0x0d,
|
|
0x20, 0x01, 0x28, 0x03, 0x48, 0x06, 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, 0x88, 0x01, 0x01, 0x12, 0x4f, 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, 0x0e, 0x20, 0x01,
|
|
0x28, 0x03, 0x48, 0x07, 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, 0x88, 0x01, 0x01, 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, 0x0f, 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, 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, 0x10, 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, 0x46, 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, 0x6b, 0x65, 0x79, 0x5f, 0x62,
|
|
0x79, 0x74, 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x1c, 0x63, 0x6f, 0x70, 0x79,
|
|
0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x4b, 0x65, 0x79, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x53, 0x0a, 0x27, 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, 0x5f, 0x62, 0x79,
|
|
0x74, 0x65, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x22, 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, 0x42, 0x79, 0x74, 0x65, 0x73, 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, 0x13, 0x20,
|
|
0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x4d, 0x0a, 0x10,
|
|
0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73,
|
|
0x18, 0x1d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x42, 0x16, 0x0a, 0x14, 0x5f,
|
|
0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61,
|
|
0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42,
|
|
0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f,
|
|
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, 0x42, 0x1d, 0x0a, 0x1b, 0x5f,
|
|
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, 0x42, 0x21, 0x0a, 0x1f, 0x5f, 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, 0x42, 0x21, 0x0a,
|
|
0x1f, 0x5f, 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,
|
|
0x42, 0x25, 0x0a, 0x23, 0x5f, 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, 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, 0x32, 0x2e,
|
|
0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
|
|
0x22, 0xaf, 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,
|
|
0x53, 0x0a, 0x11, 0x77, 0x72, 0x69, 0x74, 0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f,
|
|
0x73, 0x70, 0x65, 0x63, 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, 0x32, 0x2e, 0x57,
|
|
0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03,
|
|
0xe0, 0x41, 0x02, 0x52, 0x0f, 0x77, 0x72, 0x69, 0x74, 0x65, 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, 0x32, 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, 0x4d, 0x0a, 0x10, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x63, 0x68,
|
|
0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76,
|
|
0x32, 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, 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, 0x87,
|
|
0x05, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52,
|
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74,
|
|
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, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x33,
|
|
0x0a, 0x13, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
|
|
0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x48, 0x00, 0x52, 0x11, 0x69,
|
|
0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68,
|
|
0x88, 0x01, 0x01, 0x12, 0x3a, 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, 0x03,
|
|
0x20, 0x01, 0x28, 0x03, 0x48, 0x01, 0x52, 0x14, 0x69, 0x66, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x6f, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12,
|
|
0x3b, 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, 0x04, 0x20, 0x01, 0x28, 0x03,
|
|
0x48, 0x02, 0x52, 0x15, 0x69, 0x66, 0x4d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x88, 0x01, 0x01, 0x12, 0x42, 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, 0x05, 0x20, 0x01, 0x28,
|
|
0x03, 0x48, 0x03, 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, 0x88, 0x01, 0x01,
|
|
0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61,
|
|
0x63, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x64, 0x65, 0x66,
|
|
0x69, 0x6e, 0x65, 0x64, 0x41, 0x63, 0x6c, 0x12, 0x40, 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, 0x42, 0x03, 0xe0, 0x41, 0x02, 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, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32,
|
|
0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x2e, 0x76, 0x32, 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, 0x42, 0x16, 0x0a, 0x14, 0x5f, 0x69, 0x66, 0x5f,
|
|
0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68,
|
|
0x42, 0x1a, 0x0a, 0x18, 0x5f, 0x69, 0x66, 0x5f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1a, 0x0a, 0x18,
|
|
0x5f, 0x69, 0x66, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 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, 0x22, 0x69, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x53,
|
|
0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71,
|
|
0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x63,
|
|
0x6c, 0x6f, 0x75, 0x64, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61,
|
|
0x67, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
|
|
0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a,
|
|
0x65, 0x63, 0x74, 0x22, 0x9e, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x48, 0x6d,
|
|
0x61, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x07,
|
|
0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0,
|
|
0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x72, 0x65, 0x73, 0x6f,
|
|
0x75, 0x72, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x6a, 0x65,
|
|
0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 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, 0x22, 0x81, 0x01, 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, 0x32, 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, 0x28,
|
|
0x0a, 0x10, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x62, 0x79, 0x74,
|
|
0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0e, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74,
|
|
0x4b, 0x65, 0x79, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0x87, 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, 0x4d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02,
|
|
0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x63, 0x6c,
|
|
0x6f, 0x75, 0x64, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67,
|
|
0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
|
|
0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65,
|
|
0x63, 0x74, 0x22, 0x84, 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, 0x4d, 0x0a, 0x07, 0x70, 0x72,
|
|
0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02,
|
|
0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
|
0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
|
|
0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x80, 0x02, 0x0a, 0x13, 0x4c, 0x69,
|
|
0x73, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
|
0x74, 0x12, 0x4d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x63, 0x6c, 0x6f, 0x75,
|
|
0x64, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
|
|
0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
|
|
0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20,
|
|
0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a,
|
|
0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 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, 0x2a, 0x0a, 0x11, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64,
|
|
0x5f, 0x6b, 0x65, 0x79, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x73, 0x68, 0x6f,
|
|
0x77, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x73, 0x22, 0x7f, 0x0a, 0x14,
|
|
0x4c, 0x69, 0x73, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70,
|
|
0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x09, 0x68, 0x6d, 0x61, 0x63, 0x5f, 0x6b, 0x65, 0x79,
|
|
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x48, 0x6d, 0x61, 0x63,
|
|
0x4b, 0x65, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x68, 0x6d, 0x61,
|
|
0x63, 0x4b, 0x65, 0x79, 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, 0x97, 0x01,
|
|
0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x52,
|
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x08, 0x68, 0x6d, 0x61, 0x63, 0x5f, 0x6b,
|
|
0x65, 0x79, 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, 0x32, 0x2e, 0x48, 0x6d, 0x61,
|
|
0x63, 0x4b, 0x65, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x03, 0xe0, 0x41,
|
|
0x02, 0x52, 0x07, 0x68, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70,
|
|
0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 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, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64,
|
|
0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xbf, 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, 0x30, 0x0a, 0x14, 0x65, 0x6e, 0x63, 0x72,
|
|
0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73,
|
|
0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x3d, 0x0a, 0x1b, 0x65, 0x6e,
|
|
0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x68, 0x61,
|
|
0x32, 0x35, 0x36, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52,
|
|
0x18, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x53, 0x68,
|
|
0x61, 0x32, 0x35, 0x36, 0x42, 0x79, 0x74, 0x65, 0x73, 0x22, 0xca, 0x05, 0x0a, 0x10, 0x53, 0x65,
|
|
0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x22, 0xb5,
|
|
0x05, 0x0a, 0x06, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x56, 0x41, 0x4c,
|
|
0x55, 0x45, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
|
|
0x00, 0x12, 0x1b, 0x0a, 0x14, 0x4d, 0x41, 0x58, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x5f, 0x43, 0x48,
|
|
0x55, 0x4e, 0x4b, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x80, 0x80, 0x80, 0x01, 0x12, 0x1c,
|
|
0x0a, 0x15, 0x4d, 0x41, 0x58, 0x5f, 0x57, 0x52, 0x49, 0x54, 0x45, 0x5f, 0x43, 0x48, 0x55, 0x4e,
|
|
0x4b, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x80, 0x80, 0x80, 0x01, 0x12, 0x19, 0x0a, 0x12,
|
|
0x4d, 0x41, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f,
|
|
0x4d, 0x42, 0x10, 0x80, 0x80, 0xc0, 0x02, 0x12, 0x29, 0x0a, 0x24, 0x4d, 0x41, 0x58, 0x5f, 0x43,
|
|
0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x46,
|
|
0x49, 0x45, 0x4c, 0x44, 0x5f, 0x4e, 0x41, 0x4d, 0x45, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10,
|
|
0x80, 0x08, 0x12, 0x2a, 0x0a, 0x25, 0x4d, 0x41, 0x58, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d,
|
|
0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x46, 0x49, 0x45, 0x4c, 0x44, 0x5f,
|
|
0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x80, 0x20, 0x12, 0x29,
|
|
0x0a, 0x24, 0x4d, 0x41, 0x58, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x4d, 0x45, 0x54,
|
|
0x41, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x54, 0x4f, 0x54, 0x41, 0x4c, 0x5f, 0x53, 0x49, 0x5a, 0x45,
|
|
0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10, 0x80, 0x40, 0x12, 0x2a, 0x0a, 0x24, 0x4d, 0x41, 0x58,
|
|
0x5f, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x5f, 0x4d, 0x45, 0x54, 0x41, 0x44, 0x41, 0x54, 0x41,
|
|
0x5f, 0x54, 0x4f, 0x54, 0x41, 0x4c, 0x5f, 0x53, 0x49, 0x5a, 0x45, 0x5f, 0x42, 0x59, 0x54, 0x45,
|
|
0x53, 0x10, 0x80, 0xa0, 0x01, 0x12, 0x27, 0x0a, 0x23, 0x4d, 0x41, 0x58, 0x5f, 0x4e, 0x4f, 0x54,
|
|
0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47,
|
|
0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54, 0x10, 0x64, 0x12, 0x22,
|
|
0x0a, 0x1e, 0x4d, 0x41, 0x58, 0x5f, 0x4c, 0x49, 0x46, 0x45, 0x43, 0x59, 0x43, 0x4c, 0x45, 0x5f,
|
|
0x52, 0x55, 0x4c, 0x45, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x42, 0x55, 0x43, 0x4b, 0x45, 0x54,
|
|
0x10, 0x64, 0x12, 0x26, 0x0a, 0x22, 0x4d, 0x41, 0x58, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49,
|
|
0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x41, 0x54,
|
|
0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x53, 0x10, 0x05, 0x12, 0x31, 0x0a, 0x2c, 0x4d, 0x41,
|
|
0x58, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43,
|
|
0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55, 0x54, 0x45, 0x5f,
|
|
0x4b, 0x45, 0x59, 0x5f, 0x4c, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x10, 0x80, 0x02, 0x12, 0x33, 0x0a,
|
|
0x2e, 0x4d, 0x41, 0x58, 0x5f, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f,
|
|
0x4e, 0x5f, 0x43, 0x55, 0x53, 0x54, 0x4f, 0x4d, 0x5f, 0x41, 0x54, 0x54, 0x52, 0x49, 0x42, 0x55,
|
|
0x54, 0x45, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x4c, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x10,
|
|
0x80, 0x08, 0x12, 0x1c, 0x0a, 0x18, 0x4d, 0x41, 0x58, 0x5f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x53,
|
|
0x5f, 0x45, 0x4e, 0x54, 0x52, 0x49, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x10, 0x40,
|
|
0x12, 0x1f, 0x0a, 0x1b, 0x4d, 0x41, 0x58, 0x5f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x53, 0x5f, 0x4b,
|
|
0x45, 0x59, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x4c, 0x45, 0x4e, 0x47, 0x54, 0x48, 0x10,
|
|
0x3f, 0x12, 0x1f, 0x0a, 0x1a, 0x4d, 0x41, 0x58, 0x5f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x53, 0x5f,
|
|
0x4b, 0x45, 0x59, 0x5f, 0x56, 0x41, 0x4c, 0x55, 0x45, 0x5f, 0x42, 0x59, 0x54, 0x45, 0x53, 0x10,
|
|
0x80, 0x01, 0x12, 0x2e, 0x0a, 0x29, 0x4d, 0x41, 0x58, 0x5f, 0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54,
|
|
0x5f, 0x49, 0x44, 0x53, 0x5f, 0x50, 0x45, 0x52, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x5f,
|
|
0x4f, 0x42, 0x4a, 0x45, 0x43, 0x54, 0x53, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x10,
|
|
0xe8, 0x07, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x50, 0x4c, 0x49, 0x54, 0x5f, 0x54, 0x4f, 0x4b, 0x45,
|
|
0x4e, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x44, 0x41, 0x59, 0x53,
|
|
0x10, 0x0e, 0x1a, 0x02, 0x10, 0x01, 0x22, 0xd0, 0x22, 0x0a, 0x06, 0x42, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
|
|
0x03, 0xe0, 0x41, 0x05, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
|
|
0x41, 0x03, 0x52, 0x08, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04,
|
|
0x65, 0x74, 0x61, 0x67, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67,
|
|
0x12, 0x4d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
0x09, 0x42, 0x33, 0xe0, 0x41, 0x05, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x63, 0x6c, 0x6f, 0x75, 0x64,
|
|
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50,
|
|
0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12,
|
|
0x2b, 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x6d, 0x65,
|
|
0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x08,
|
|
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
|
|
0xe0, 0x41, 0x05, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a,
|
|
0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06,
|
|
0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x6c, 0x6f, 0x63, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03,
|
|
0x72, 0x70, 0x6f, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x72, 0x70, 0x6f, 0x12, 0x38,
|
|
0x0a, 0x03, 0x61, 0x63, 0x6c, 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, 0x32, 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, 0x09,
|
|
0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74,
|
|
0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x0a, 0x20, 0x01, 0x28,
|
|
0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
|
|
0x18, 0x0b, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54,
|
|
0x69, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x04, 0x63, 0x6f, 0x72, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28,
|
|
0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x43, 0x6f, 0x72,
|
|
0x73, 0x52, 0x04, 0x63, 0x6f, 0x72, 0x73, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74,
|
|
0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75,
|
|
0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 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, 0x32, 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, 0x32, 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, 0x32, 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, 0x32, 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, 0x33, 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, 0x32, 0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03, 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, 0x32, 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,
|
|
0x32, 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, 0x32, 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,
|
|
0x42, 0x0a, 0x0a, 0x69, 0x61, 0x6d, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x17, 0x20,
|
|
0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x49,
|
|
0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x69, 0x61, 0x6d, 0x43, 0x6f, 0x6e,
|
|
0x66, 0x69, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x73,
|
|
0x5f, 0x70, 0x7a, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x61, 0x74, 0x69,
|
|
0x73, 0x66, 0x69, 0x65, 0x73, 0x50, 0x7a, 0x73, 0x12, 0x67, 0x0a, 0x17, 0x63, 0x75, 0x73, 0x74,
|
|
0x6f, 0x6d, 0x5f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e,
|
|
0x66, 0x69, 0x67, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x6c, 0x61, 0x63, 0x65,
|
|
0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x15, 0x63, 0x75, 0x73, 0x74,
|
|
0x6f, 0x6d, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
|
|
0x67, 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, 0x32, 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, 0x12, 0x5d, 0x0a, 0x12, 0x73, 0x6f, 0x66, 0x74, 0x5f, 0x64, 0x65, 0x6c,
|
|
0x65, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b,
|
|
0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x53, 0x6f, 0x66, 0x74,
|
|
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42, 0x03, 0xe0, 0x41,
|
|
0x01, 0x52, 0x10, 0x73, 0x6f, 0x66, 0x74, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x6c,
|
|
0x69, 0x63, 0x79, 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,
|
|
0x5c, 0x0a, 0x0a, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e, 0x0a,
|
|
0x0f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79,
|
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f,
|
|
0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
|
|
0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x0d,
|
|
0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x1a, 0xb1, 0x02,
|
|
0x0a, 0x09, 0x49, 0x61, 0x6d, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7b, 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, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x49, 0x61, 0x6d, 0x43,
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 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, 0x38, 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, 0x03, 0x20, 0x01, 0x28, 0x09, 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, 0x6d, 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, 0x37, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x6b,
|
|
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, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x54, 0x69, 0x6d,
|
|
0x65, 0x1a, 0xdb, 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,
|
|
0x32, 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, 0x8f, 0x07,
|
|
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, 0x32, 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, 0x32, 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, 0xa8, 0x05, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x08, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61, 0x79, 0x73, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x07, 0x61, 0x67, 0x65, 0x44, 0x61, 0x79, 0x73, 0x88,
|
|
0x01, 0x01, 0x12, 0x38, 0x0a, 0x0e, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x65,
|
|
0x66, 0x6f, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, 0x0d, 0x63,
|
|
0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x07,
|
|
0x69, 0x73, 0x5f, 0x6c, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x01, 0x52,
|
|
0x06, 0x69, 0x73, 0x4c, 0x69, 0x76, 0x65, 0x88, 0x01, 0x01, 0x12, 0x31, 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, 0x48, 0x02, 0x52, 0x10, 0x6e, 0x75, 0x6d, 0x4e, 0x65, 0x77,
|
|
0x65, 0x72, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x88, 0x01, 0x01, 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, 0x38, 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, 0x48, 0x03, 0x52, 0x13, 0x64, 0x61, 0x79, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x43, 0x75,
|
|
0x73, 0x74, 0x6f, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x3f, 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, 0x11, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, 0x10, 0x63, 0x75, 0x73, 0x74,
|
|
0x6f, 0x6d, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x12, 0x40, 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,
|
|
0x48, 0x04, 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, 0x88, 0x01, 0x01, 0x12, 0x47,
|
|
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, 0x11,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x44, 0x61, 0x74,
|
|
0x65, 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, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x61,
|
|
0x79, 0x73, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x69, 0x73, 0x5f, 0x6c, 0x69, 0x76, 0x65, 0x42, 0x15,
|
|
0x0a, 0x13, 0x5f, 0x6e, 0x75, 0x6d, 0x5f, 0x6e, 0x65, 0x77, 0x65, 0x72, 0x5f, 0x76, 0x65, 0x72,
|
|
0x73, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x64, 0x61, 0x79, 0x73, 0x5f, 0x73,
|
|
0x69, 0x6e, 0x63, 0x65, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x69, 0x6d, 0x65,
|
|
0x42, 0x1d, 0x0a, 0x1b, 0x5f, 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, 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, 0xbb, 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, 0x48, 0x0a, 0x12, 0x72, 0x65, 0x74,
|
|
0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
|
|
0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x52, 0x11, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x75, 0x72, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x1a, 0xd3, 0x01, 0x0a, 0x10, 0x53, 0x6f, 0x66, 0x74, 0x44, 0x65, 0x6c, 0x65,
|
|
0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x4d, 0x0a, 0x12, 0x72, 0x65, 0x74, 0x65,
|
|
0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
|
|
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48,
|
|
0x00, 0x52, 0x11, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x75, 0x72, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x88, 0x01, 0x01, 0x12, 0x46, 0x0a, 0x0e, 0x65, 0x66, 0x66, 0x65, 0x63,
|
|
0x74, 0x69, 0x76, 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, 0x48, 0x01, 0x52, 0x0d, 0x65,
|
|
0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x42,
|
|
0x15, 0x0a, 0x13, 0x5f, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x75,
|
|
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x11, 0x0a, 0x0f, 0x5f, 0x65, 0x66, 0x66, 0x65, 0x63,
|
|
0x74, 0x69, 0x76, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 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, 0x3e, 0x0a, 0x15,
|
|
0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43,
|
|
0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6c, 0x6f,
|
|
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64,
|
|
0x61, 0x74, 0x61, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xd6, 0x02, 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, 0x40, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x74, 0x6f, 0x67, 0x67,
|
|
0x6c, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x39, 0x0a, 0x16, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
|
|
0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73,
|
|
0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x14, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e,
|
|
0x61, 0x6c, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x88, 0x01,
|
|
0x01, 0x12, 0x70, 0x0a, 0x22, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74,
|
|
0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x75, 0x70, 0x64, 0x61,
|
|
0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x48, 0x01,
|
|
0x52, 0x1e, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
|
|
0x88, 0x01, 0x01, 0x42, 0x19, 0x0a, 0x17, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c,
|
|
0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x42, 0x25,
|
|
0x0a, 0x23, 0x5f, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x73, 0x74, 0x6f, 0x72,
|
|
0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
|
|
0x5f, 0x74, 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,
|
|
0x3a, 0x47, 0xea, 0x41, 0x44, 0x0a, 0x1d, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67,
|
|
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x12, 0x23, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b,
|
|
0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73,
|
|
0x2f, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x7d, 0x22, 0x97, 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, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18,
|
|
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a,
|
|
0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x61, 0x6c, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28,
|
|
0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x6c,
|
|
0x74, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x12,
|
|
0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74,
|
|
0x61, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61,
|
|
0x69, 0x6e, 0x18, 0x06, 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, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x5a, 0x0a, 0x0f, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x6d,
|
|
0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1f, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
|
|
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x05, 0xe0, 0x41, 0x01, 0x08, 0x01, 0x52, 0x07,
|
|
0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32,
|
|
0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x48, 0x00, 0x52, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32,
|
|
0x63, 0x88, 0x01, 0x01, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x22,
|
|
0x54, 0x0a, 0x0f, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75,
|
|
0x6d, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x18, 0x01, 0x20, 0x01,
|
|
0x28, 0x07, 0x48, 0x00, 0x52, 0x06, 0x63, 0x72, 0x63, 0x33, 0x32, 0x63, 0x88, 0x01, 0x01, 0x12,
|
|
0x19, 0x0a, 0x08, 0x6d, 0x64, 0x35, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
0x0c, 0x52, 0x07, 0x6d, 0x64, 0x35, 0x48, 0x61, 0x73, 0x68, 0x42, 0x09, 0x0a, 0x07, 0x5f, 0x63,
|
|
0x72, 0x63, 0x33, 0x32, 0x63, 0x22, 0xfe, 0x02, 0x0a, 0x0f, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65,
|
|
0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x13, 0x0a, 0x02, 0x69, 0x64, 0x18,
|
|
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20,
|
|
0x0a, 0x09, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x08, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x49, 0x64,
|
|
0x12, 0x4d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
0x09, 0x42, 0x33, 0xe0, 0x41, 0x05, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x63, 0x6c, 0x6f, 0x75, 0x64,
|
|
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50,
|
|
0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 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, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
|
|
0xe0, 0x41, 0x03, 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, 0x40,
|
|
0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 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, 0x42,
|
|
0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
|
|
0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69,
|
|
0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x22, 0x85, 0x04, 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x66,
|
|
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x17, 0x0a,
|
|
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
|
|
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18,
|
|
0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69,
|
|
0x63, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52,
|
|
0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x74,
|
|
0x79, 0x70, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x76, 0x65, 0x6e,
|
|
0x74, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x68, 0x0a, 0x11, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d,
|
|
0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
|
|
0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 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, 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, 0x2a,
|
|
0x0a, 0x0e, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74,
|
|
0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x70, 0x61, 0x79,
|
|
0x6c, 0x6f, 0x61, 0x64, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 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, 0x3a,
|
|
0x7d, 0xea, 0x41, 0x7a, 0x0a, 0x29, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f,
|
|
0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4e, 0x6f, 0x74,
|
|
0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
|
|
0x4d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65,
|
|
0x63, 0x74, 0x7d, 0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2f, 0x7b, 0x62, 0x75, 0x63,
|
|
0x6b, 0x65, 0x74, 0x7d, 0x2f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x2f, 0x7b, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69,
|
|
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x7d, 0x22, 0x71,
|
|
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, 0x28, 0x0a, 0x10, 0x6b, 0x65, 0x79, 0x5f, 0x73,
|
|
0x68, 0x61, 0x32, 0x35, 0x36, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
0x0c, 0x52, 0x0e, 0x6b, 0x65, 0x79, 0x53, 0x68, 0x61, 0x32, 0x35, 0x36, 0x42, 0x79, 0x74, 0x65,
|
|
0x73, 0x22, 0xec, 0x0b, 0x0a, 0x06, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x17, 0x0a, 0x04,
|
|
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52,
|
|
0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x18,
|
|
0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x05, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x73,
|
|
0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
|
|
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x1b, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x23, 0x0a, 0x0a, 0x67, 0x65, 0x6e, 0x65,
|
|
0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41,
|
|
0x05, 0x52, 0x0a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a,
|
|
0x0e, 0x6d, 0x65, 0x74, 0x61, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18,
|
|
0x04, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x6d, 0x65, 0x74, 0x61,
|
|
0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x74,
|
|
0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x12,
|
|
0x17, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0,
|
|
0x41, 0x03, 0x52, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74,
|
|
0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x07, 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, 0x08, 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, 0x09, 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, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63,
|
|
0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x40,
|
|
0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 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, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42,
|
|
0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
|
|
0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65,
|
|
0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54,
|
|
0x79, 0x70, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69,
|
|
0x6d, 0x65, 0x18, 0x0e, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
|
|
0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2c, 0x0a, 0x0f, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65,
|
|
0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03,
|
|
0xe0, 0x41, 0x03, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x43, 0x6f,
|
|
0x75, 0x6e, 0x74, 0x12, 0x45, 0x0a, 0x09, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73,
|
|
0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
|
|
0x09, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x75, 0x6d, 0x73, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70,
|
|
0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 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, 0x42, 0x03, 0xe0, 0x41, 0x03,
|
|
0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3f, 0x0a, 0x07,
|
|
0x6b, 0x6d, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa,
|
|
0x41, 0x23, 0x0a, 0x21, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70,
|
|
0x74, 0x6f, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x6b, 0x6d, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x5a, 0x0a,
|
|
0x19, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x5f,
|
|
0x63, 0x6c, 0x61, 0x73, 0x73, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x13, 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, 0x42, 0x03, 0xe0, 0x41,
|
|
0x03, 0x52, 0x16, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x43, 0x6c, 0x61, 0x73, 0x73, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x74, 0x65, 0x6d,
|
|
0x70, 0x6f, 0x72, 0x61, 0x72, 0x79, 0x5f, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28,
|
|
0x08, 0x52, 0x0d, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, 0x79, 0x48, 0x6f, 0x6c, 0x64,
|
|
0x12, 0x4e, 0x0a, 0x15, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x78,
|
|
0x70, 0x69, 0x72, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x15, 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, 0x13, 0x72, 0x65, 0x74,
|
|
0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65,
|
|
0x12, 0x43, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x16, 0x20, 0x03,
|
|
0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72,
|
|
0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x2d, 0x0a, 0x10, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x62,
|
|
0x61, 0x73, 0x65, 0x64, 0x5f, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x08, 0x48,
|
|
0x00, 0x52, 0x0e, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x73, 0x65, 0x64, 0x48, 0x6f, 0x6c,
|
|
0x64, 0x88, 0x01, 0x01, 0x12, 0x33, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x18, 0x20,
|
|
0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x42, 0x03, 0xe0,
|
|
0x41, 0x03, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x13, 0x63, 0x75, 0x73,
|
|
0x74, 0x6f, 0x6d, 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x18, 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 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, 0x1a, 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, 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, 0x42, 0x13, 0x0a, 0x11, 0x5f,
|
|
0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x68, 0x6f, 0x6c, 0x64,
|
|
0x22, 0x97, 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, 0x0e, 0x0a, 0x02,
|
|
0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06,
|
|
0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6e,
|
|
0x74, 0x69, 0x74, 0x79, 0x12, 0x22, 0x0a, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x61,
|
|
0x6c, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x65,
|
|
0x6e, 0x74, 0x69, 0x74, 0x79, 0x41, 0x6c, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x6e, 0x74, 0x69,
|
|
0x74, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x74,
|
|
0x69, 0x74, 0x79, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61,
|
|
0x69, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12,
|
|
0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x06, 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, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76,
|
|
0x32, 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, 0x8e, 0x01, 0x0a, 0x13, 0x4c,
|
|
0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
|
|
0x73, 0x65, 0x12, 0x33, 0x0a, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 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, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x07,
|
|
0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x65, 0x66, 0x69,
|
|
0x78, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x70, 0x72, 0x65, 0x66, 0x69,
|
|
0x78, 0x65, 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, 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, 0x32, 0x98, 0x28, 0x0a, 0x07,
|
|
0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x12, 0x72, 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, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65,
|
|
0x74, 0x65, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
|
|
0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
|
|
0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x22, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65,
|
|
0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0b,
|
|
0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x6f, 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, 0x32, 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,
|
|
0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x22, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d,
|
|
0x65, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x12, 0x13, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
|
|
0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0xab, 0x01, 0x0a,
|
|
0x0c, 0x43, 0x72, 0x65, 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,
|
|
0x32, 0x2e, 0x43, 0x72, 0x65, 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, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74,
|
|
0x22, 0x58, 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x62, 0x75, 0x63, 0x6b,
|
|
0x65, 0x74, 0x2c, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x8a, 0xd3, 0xe4, 0x93,
|
|
0x02, 0x38, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x0c, 0x7b, 0x70,
|
|
0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x1e, 0x0a, 0x0e, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0c, 0x7b, 0x70,
|
|
0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x85, 0x01, 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, 0x32, 0x2e, 0x4c,
|
|
0x69, 0x73, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
|
|
0x74, 0x1a, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74,
|
|
0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x27, 0xda, 0x41, 0x06, 0x70, 0x61,
|
|
0x72, 0x65, 0x6e, 0x74, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x18, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61,
|
|
0x72, 0x65, 0x6e, 0x74, 0x12, 0x0c, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x3d, 0x2a,
|
|
0x2a, 0x7d, 0x12, 0x93, 0x01, 0x0a, 0x19, 0x4c, 0x6f, 0x63, 0x6b, 0x42, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x52, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
|
|
0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x6f, 0x63, 0x6b, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52,
|
|
0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 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, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74,
|
|
0x22, 0x26, 0xda, 0x41, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x8a, 0xd3, 0xe4, 0x93, 0x02,
|
|
0x17, 0x12, 0x15, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0xab, 0x01, 0x0a, 0x0c, 0x47, 0x65, 0x74,
|
|
0x49, 0x61, 0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 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, 0x1a, 0x15, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f,
|
|
0x6c, 0x69, 0x63, 0x79, 0x22, 0x60, 0xda, 0x41, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
|
0x65, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x4f, 0x12, 0x17, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75,
|
|
0x72, 0x63, 0x65, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d,
|
|
0x12, 0x34, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x28, 0x7b, 0x62,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
|
|
0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6f, 0x62, 0x6a, 0x65,
|
|
0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2a, 0x12, 0xb2, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x74, 0x49, 0x61,
|
|
0x6d, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 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, 0x1a, 0x15, 0x2e, 0x67, 0x6f,
|
|
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x6f, 0x6c, 0x69,
|
|
0x63, 0x79, 0x22, 0x67, 0xda, 0x41, 0x0f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2c,
|
|
0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x4f, 0x12, 0x17, 0x0a, 0x08,
|
|
0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x34, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
|
|
0x65, 0x12, 0x28, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
|
|
0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d,
|
|
0x2f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2a, 0x12, 0xd7, 0x01, 0x0a, 0x12,
|
|
0x54, 0x65, 0x73, 0x74, 0x49, 0x61, 0x6d, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
|
|
0x6e, 0x73, 0x12, 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, 0x1a, 0x29, 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, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x6c, 0xda, 0x41, 0x14, 0x72, 0x65, 0x73, 0x6f,
|
|
0x75, 0x72, 0x63, 0x65, 0x2c, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
|
|
0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x4f, 0x12, 0x17, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
|
|
0x63, 0x65, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12,
|
|
0x34, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x28, 0x7b, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
|
|
0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x73, 0x2f, 0x2a, 0x2a, 0x12, 0x8a, 0x01, 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, 0x32, 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, 0x32, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x37, 0xda, 0x41, 0x12, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b,
|
|
0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x1c, 0x12, 0x1a, 0x0a, 0x0b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
|
|
0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a,
|
|
0x2a, 0x7d, 0x12, 0x9f, 0x01, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x74,
|
|
0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
|
|
0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
|
|
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75,
|
|
0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x37, 0xda, 0x41, 0x04,
|
|
0x6e, 0x61, 0x6d, 0x65, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x0a, 0x04, 0x6e, 0x61,
|
|
0x6d, 0x65, 0x12, 0x20, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
|
|
0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2f, 0x2a,
|
|
0x7d, 0x2f, 0x2a, 0x2a, 0x12, 0xa8, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x69,
|
|
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2f,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e,
|
|
0x76, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
|
|
0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
|
|
0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x2e, 0x76, 0x32, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
|
|
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x37, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x8a,
|
|
0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x7b,
|
|
0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
|
|
0x2a, 0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x2a, 0x2a, 0x12,
|
|
0xb1, 0x01, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69,
|
|
0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x32, 0x2e, 0x67,
|
|
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32,
|
|
0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74,
|
|
0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
|
0x1a, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x3a, 0xda, 0x41, 0x1a, 0x70, 0x61, 0x72, 0x65,
|
|
0x6e, 0x74, 0x2c, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
|
|
0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x12, 0x15, 0x0a, 0x06,
|
|
0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d,
|
|
0x2a, 0x2a, 0x7d, 0x12, 0xa8, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x74, 0x69,
|
|
0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12,
|
|
0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
|
|
0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
|
|
0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72,
|
|
0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66,
|
|
0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x52, 0x65,
|
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
|
|
0x74, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
|
|
0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x7e,
|
|
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, 0x32, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6f, 0x73, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63,
|
|
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, 0x32, 0x2e, 0x4f, 0x62, 0x6a,
|
|
0x65, 0x63, 0x74, 0x22, 0x29, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x23, 0x12, 0x21, 0x0a, 0x12, 0x64,
|
|
0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x98,
|
|
0x01, 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, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74,
|
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22,
|
|
0x48, 0xda, 0x41, 0x0d, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2c, 0x6f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0xda, 0x41, 0x18, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2c, 0x6f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x2c, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x8a, 0xd3, 0xe4, 0x93,
|
|
0x02, 0x17, 0x12, 0x15, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0b, 0x7b, 0x62,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x8d, 0x01, 0x0a, 0x0d, 0x52, 0x65,
|
|
0x73, 0x74, 0x6f, 0x72, 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, 0x32, 0x2e,
|
|
0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 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, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22,
|
|
0x38, 0xda, 0x41, 0x18, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2c, 0x6f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x2c, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x8a, 0xd3, 0xe4, 0x93,
|
|
0x02, 0x17, 0x12, 0x15, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0b, 0x7b, 0x62,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0xba, 0x01, 0x0a, 0x14, 0x43, 0x61,
|
|
0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x72, 0x69,
|
|
0x74, 0x65, 0x12, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72,
|
|
0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73,
|
|
0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
|
|
0x73, 0x74, 0x1a, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72,
|
|
0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x52, 0x65, 0x73,
|
|
0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
|
0x6e, 0x73, 0x65, 0x22, 0x41, 0xda, 0x41, 0x09, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69,
|
|
0x64, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x12, 0x2d, 0x0a, 0x09, 0x75, 0x70, 0x6c, 0x6f, 0x61,
|
|
0x64, 0x5f, 0x69, 0x64, 0x12, 0x20, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x70, 0x72,
|
|
0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73,
|
|
0x2f, 0x2a, 0x7d, 0x2f, 0x2a, 0x2a, 0x12, 0x95, 0x01, 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, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x4f, 0x62, 0x6a, 0x65,
|
|
0x63, 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, 0x32, 0x2e, 0x4f, 0x62,
|
|
0x6a, 0x65, 0x63, 0x74, 0x22, 0x48, 0xda, 0x41, 0x0d, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2c,
|
|
0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0xda, 0x41, 0x18, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2c,
|
|
0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2c, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
|
|
0x6e, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x12, 0x15, 0x0a, 0x06, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0xa5,
|
|
0x01, 0x0a, 0x0a, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x24, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76,
|
|
0x32, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75,
|
|
0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x52, 0x65, 0x61, 0x64, 0x4f, 0x62, 0x6a, 0x65,
|
|
0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x48, 0xda, 0x41, 0x0d, 0x62,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x2c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0xda, 0x41, 0x18, 0x62,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x2c, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x2c, 0x67, 0x65, 0x6e,
|
|
0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x12, 0x15, 0x0a,
|
|
0x06, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74,
|
|
0x3d, 0x2a, 0x2a, 0x7d, 0x30, 0x01, 0x12, 0x8c, 0x01, 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, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61,
|
|
0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 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, 0x32, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x39, 0xda, 0x41, 0x12, 0x6f,
|
|
0x62, 0x6a, 0x65, 0x63, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73,
|
|
0x6b, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x1e, 0x12, 0x1c, 0x0a, 0x0d, 0x6f, 0x62, 0x6a, 0x65, 0x63,
|
|
0x74, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65,
|
|
0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x60, 0x0a, 0x0b, 0x57, 0x72, 0x69, 0x74, 0x65, 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, 0x32, 0x2e, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62,
|
|
0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x67, 0x6f,
|
|
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e,
|
|
0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
|
0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01, 0x12, 0x6e, 0x0a, 0x0f, 0x42, 0x69, 0x64, 0x69, 0x57,
|
|
0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x29, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42,
|
|
0x69, 0x64, 0x69, 0x57, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65,
|
|
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73,
|
|
0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x42, 0x69, 0x64, 0x69, 0x57, 0x72,
|
|
0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
|
|
0x65, 0x22, 0x00, 0x28, 0x01, 0x30, 0x01, 0x12, 0x84, 0x01, 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, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74,
|
|
0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e,
|
|
0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x52, 0x65,
|
|
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x26, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
|
|
0x74, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x17, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
|
|
0x74, 0x12, 0x0b, 0x7b, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0x98,
|
|
0x01, 0x0a, 0x0d, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 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, 0x32, 0x2e, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x4f, 0x62, 0x6a, 0x65,
|
|
0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x52, 0x65,
|
|
0x77, 0x72, 0x69, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3a, 0x8a,
|
|
0xd3, 0xe4, 0x93, 0x02, 0x34, 0x12, 0x0f, 0x0a, 0x0d, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f,
|
|
0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x21, 0x0a, 0x12, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
|
|
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0b, 0x7b, 0x62,
|
|
0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0xae, 0x01, 0x0a, 0x13, 0x53, 0x74,
|
|
0x61, 0x72, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6d, 0x61, 0x62, 0x6c, 0x65, 0x57, 0x72, 0x69, 0x74,
|
|
0x65, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 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,
|
|
0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x2e, 0x76, 0x32, 0x2e, 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,
|
|
0x22, 0x38, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x32, 0x12, 0x30, 0x0a, 0x21, 0x77, 0x72, 0x69, 0x74,
|
|
0x65, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x2e, 0x72, 0x65,
|
|
0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x0b, 0x7b,
|
|
0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x12, 0xae, 0x01, 0x0a, 0x10, 0x51,
|
|
0x75, 0x65, 0x72, 0x79, 0x57, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
|
|
0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65,
|
|
0x2e, 0x76, 0x32, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x57, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74,
|
|
0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6f,
|
|
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e,
|
|
0x51, 0x75, 0x65, 0x72, 0x79, 0x57, 0x72, 0x69, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
|
|
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x41, 0xda, 0x41, 0x09, 0x75, 0x70, 0x6c,
|
|
0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x12, 0x2d, 0x0a, 0x09,
|
|
0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x64, 0x12, 0x20, 0x7b, 0x62, 0x75, 0x63, 0x6b,
|
|
0x65, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x62, 0x75,
|
|
0x63, 0x6b, 0x65, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x2a, 0x2a, 0x12, 0x80, 0x01, 0x0a, 0x11,
|
|
0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
|
|
0x74, 0x12, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61,
|
|
0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
|
|
0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e,
|
|
0x76, 0x32, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e,
|
|
0x74, 0x22, 0x1b, 0xda, 0x41, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x8a, 0xd3, 0xe4,
|
|
0x93, 0x02, 0x0b, 0x12, 0x09, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x95,
|
|
0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79,
|
|
0x12, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
|
|
0x65, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b,
|
|
0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
|
|
0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72,
|
|
0x65, 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f,
|
|
0x6e, 0x73, 0x65, 0x22, 0x31, 0xda, 0x41, 0x1d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2c,
|
|
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
|
|
0x65, 0x6d, 0x61, 0x69, 0x6c, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x0b, 0x12, 0x09, 0x0a, 0x07, 0x70,
|
|
0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x77, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
|
|
0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65,
|
|
0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
|
0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
|
|
0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x25, 0xda, 0x41, 0x11, 0x61, 0x63, 0x63,
|
|
0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x2c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x8a, 0xd3,
|
|
0xe4, 0x93, 0x02, 0x0b, 0x12, 0x09, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12,
|
|
0x7d, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x24, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76,
|
|
0x32, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75,
|
|
0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x4d,
|
|
0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x25, 0xda, 0x41, 0x11, 0x61, 0x63, 0x63, 0x65,
|
|
0x73, 0x73, 0x5f, 0x69, 0x64, 0x2c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x8a, 0xd3, 0xe4,
|
|
0x93, 0x02, 0x0b, 0x12, 0x09, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x7c,
|
|
0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x26,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e,
|
|
0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x52,
|
|
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
|
|
0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x48,
|
|
0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
|
|
0x1b, 0xda, 0x41, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x8a, 0xd3, 0xe4, 0x93, 0x02,
|
|
0x0b, 0x12, 0x09, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x9d, 0x01, 0x0a,
|
|
0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x27,
|
|
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e,
|
|
0x76, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x6d, 0x61, 0x63, 0x4b, 0x65, 0x79,
|
|
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x2e, 0x48, 0x6d, 0x61, 0x63,
|
|
0x4b, 0x65, 0x79, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3f, 0xda, 0x41, 0x14,
|
|
0x68, 0x6d, 0x61, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
|
|
0x6d, 0x61, 0x73, 0x6b, 0x8a, 0xd3, 0xe4, 0x93, 0x02, 0x22, 0x12, 0x20, 0x0a, 0x10, 0x68, 0x6d,
|
|
0x61, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x0c,
|
|
0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x3d, 0x2a, 0x2a, 0x7d, 0x1a, 0xa7, 0x02, 0xca,
|
|
0x41, 0x16, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x8a, 0x02, 0x68, 0x74, 0x74, 0x70,
|
|
0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
|
|
0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75,
|
|
0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73,
|
|
0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
|
|
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
|
|
0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x2d, 0x6f,
|
|
0x6e, 0x6c, 0x79, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
|
|
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61,
|
|
0x75, 0x74, 0x68, 0x2f, 0x64, 0x65, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x66,
|
|
0x75, 0x6c, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2c, 0x68, 0x74, 0x74, 0x70,
|
|
0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
|
|
0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x65, 0x76, 0x73,
|
|
0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x6f, 0x6e, 0x6c, 0x79,
|
|
0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
|
|
0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68,
|
|
0x2f, 0x64, 0x65, 0x76, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x72, 0x65, 0x61, 0x64,
|
|
0x5f, 0x77, 0x72, 0x69, 0x74, 0x65, 0x42, 0xe2, 0x01, 0xea, 0x41, 0x78, 0x0a, 0x21, 0x63, 0x6c,
|
|
0x6f, 0x75, 0x64, 0x6b, 0x6d, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
|
|
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x12,
|
|
0x53, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65,
|
|
0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c,
|
|
0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6b, 0x65, 0x79, 0x52, 0x69, 0x6e, 0x67,
|
|
0x73, 0x2f, 0x7b, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x7d, 0x2f, 0x63, 0x72, 0x79,
|
|
0x70, 0x74, 0x6f, 0x4b, 0x65, 0x79, 0x73, 0x2f, 0x7b, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f,
|
|
0x6b, 0x65, 0x79, 0x7d, 0x0a, 0x15, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
|
|
0x2e, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x76, 0x32, 0x42, 0x0c, 0x53, 0x74, 0x6f,
|
|
0x72, 0x61, 0x67, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3e, 0x63, 0x6c, 0x6f,
|
|
0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f,
|
|
0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
|
|
0x6c, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x70,
|
|
0x62, 0x3b, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f,
|
|
0x74, 0x6f, 0x33,
|
|
}
|
|
|
|
var (
|
|
file_google_storage_v2_storage_proto_rawDescOnce sync.Once
|
|
file_google_storage_v2_storage_proto_rawDescData = file_google_storage_v2_storage_proto_rawDesc
|
|
)
|
|
|
|
func file_google_storage_v2_storage_proto_rawDescGZIP() []byte {
|
|
file_google_storage_v2_storage_proto_rawDescOnce.Do(func() {
|
|
file_google_storage_v2_storage_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_storage_v2_storage_proto_rawDescData)
|
|
})
|
|
return file_google_storage_v2_storage_proto_rawDescData
|
|
}
|
|
|
|
var file_google_storage_v2_storage_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
|
|
var file_google_storage_v2_storage_proto_msgTypes = make([]protoimpl.MessageInfo, 78)
|
|
var file_google_storage_v2_storage_proto_goTypes = []interface{}{
|
|
(ServiceConstants_Values)(0), // 0: google.storage.v2.ServiceConstants.Values
|
|
(*DeleteBucketRequest)(nil), // 1: google.storage.v2.DeleteBucketRequest
|
|
(*GetBucketRequest)(nil), // 2: google.storage.v2.GetBucketRequest
|
|
(*CreateBucketRequest)(nil), // 3: google.storage.v2.CreateBucketRequest
|
|
(*ListBucketsRequest)(nil), // 4: google.storage.v2.ListBucketsRequest
|
|
(*ListBucketsResponse)(nil), // 5: google.storage.v2.ListBucketsResponse
|
|
(*LockBucketRetentionPolicyRequest)(nil), // 6: google.storage.v2.LockBucketRetentionPolicyRequest
|
|
(*UpdateBucketRequest)(nil), // 7: google.storage.v2.UpdateBucketRequest
|
|
(*DeleteNotificationConfigRequest)(nil), // 8: google.storage.v2.DeleteNotificationConfigRequest
|
|
(*GetNotificationConfigRequest)(nil), // 9: google.storage.v2.GetNotificationConfigRequest
|
|
(*CreateNotificationConfigRequest)(nil), // 10: google.storage.v2.CreateNotificationConfigRequest
|
|
(*ListNotificationConfigsRequest)(nil), // 11: google.storage.v2.ListNotificationConfigsRequest
|
|
(*ListNotificationConfigsResponse)(nil), // 12: google.storage.v2.ListNotificationConfigsResponse
|
|
(*ComposeObjectRequest)(nil), // 13: google.storage.v2.ComposeObjectRequest
|
|
(*DeleteObjectRequest)(nil), // 14: google.storage.v2.DeleteObjectRequest
|
|
(*RestoreObjectRequest)(nil), // 15: google.storage.v2.RestoreObjectRequest
|
|
(*CancelResumableWriteRequest)(nil), // 16: google.storage.v2.CancelResumableWriteRequest
|
|
(*CancelResumableWriteResponse)(nil), // 17: google.storage.v2.CancelResumableWriteResponse
|
|
(*ReadObjectRequest)(nil), // 18: google.storage.v2.ReadObjectRequest
|
|
(*GetObjectRequest)(nil), // 19: google.storage.v2.GetObjectRequest
|
|
(*ReadObjectResponse)(nil), // 20: google.storage.v2.ReadObjectResponse
|
|
(*WriteObjectSpec)(nil), // 21: google.storage.v2.WriteObjectSpec
|
|
(*WriteObjectRequest)(nil), // 22: google.storage.v2.WriteObjectRequest
|
|
(*WriteObjectResponse)(nil), // 23: google.storage.v2.WriteObjectResponse
|
|
(*BidiWriteObjectRequest)(nil), // 24: google.storage.v2.BidiWriteObjectRequest
|
|
(*BidiWriteObjectResponse)(nil), // 25: google.storage.v2.BidiWriteObjectResponse
|
|
(*ListObjectsRequest)(nil), // 26: google.storage.v2.ListObjectsRequest
|
|
(*QueryWriteStatusRequest)(nil), // 27: google.storage.v2.QueryWriteStatusRequest
|
|
(*QueryWriteStatusResponse)(nil), // 28: google.storage.v2.QueryWriteStatusResponse
|
|
(*RewriteObjectRequest)(nil), // 29: google.storage.v2.RewriteObjectRequest
|
|
(*RewriteResponse)(nil), // 30: google.storage.v2.RewriteResponse
|
|
(*StartResumableWriteRequest)(nil), // 31: google.storage.v2.StartResumableWriteRequest
|
|
(*StartResumableWriteResponse)(nil), // 32: google.storage.v2.StartResumableWriteResponse
|
|
(*UpdateObjectRequest)(nil), // 33: google.storage.v2.UpdateObjectRequest
|
|
(*GetServiceAccountRequest)(nil), // 34: google.storage.v2.GetServiceAccountRequest
|
|
(*CreateHmacKeyRequest)(nil), // 35: google.storage.v2.CreateHmacKeyRequest
|
|
(*CreateHmacKeyResponse)(nil), // 36: google.storage.v2.CreateHmacKeyResponse
|
|
(*DeleteHmacKeyRequest)(nil), // 37: google.storage.v2.DeleteHmacKeyRequest
|
|
(*GetHmacKeyRequest)(nil), // 38: google.storage.v2.GetHmacKeyRequest
|
|
(*ListHmacKeysRequest)(nil), // 39: google.storage.v2.ListHmacKeysRequest
|
|
(*ListHmacKeysResponse)(nil), // 40: google.storage.v2.ListHmacKeysResponse
|
|
(*UpdateHmacKeyRequest)(nil), // 41: google.storage.v2.UpdateHmacKeyRequest
|
|
(*CommonObjectRequestParams)(nil), // 42: google.storage.v2.CommonObjectRequestParams
|
|
(*ServiceConstants)(nil), // 43: google.storage.v2.ServiceConstants
|
|
(*Bucket)(nil), // 44: google.storage.v2.Bucket
|
|
(*BucketAccessControl)(nil), // 45: google.storage.v2.BucketAccessControl
|
|
(*ChecksummedData)(nil), // 46: google.storage.v2.ChecksummedData
|
|
(*ObjectChecksums)(nil), // 47: google.storage.v2.ObjectChecksums
|
|
(*HmacKeyMetadata)(nil), // 48: google.storage.v2.HmacKeyMetadata
|
|
(*NotificationConfig)(nil), // 49: google.storage.v2.NotificationConfig
|
|
(*CustomerEncryption)(nil), // 50: google.storage.v2.CustomerEncryption
|
|
(*Object)(nil), // 51: google.storage.v2.Object
|
|
(*ObjectAccessControl)(nil), // 52: google.storage.v2.ObjectAccessControl
|
|
(*ListObjectsResponse)(nil), // 53: google.storage.v2.ListObjectsResponse
|
|
(*ProjectTeam)(nil), // 54: google.storage.v2.ProjectTeam
|
|
(*ServiceAccount)(nil), // 55: google.storage.v2.ServiceAccount
|
|
(*Owner)(nil), // 56: google.storage.v2.Owner
|
|
(*ContentRange)(nil), // 57: google.storage.v2.ContentRange
|
|
(*ComposeObjectRequest_SourceObject)(nil), // 58: google.storage.v2.ComposeObjectRequest.SourceObject
|
|
(*ComposeObjectRequest_SourceObject_ObjectPreconditions)(nil), // 59: google.storage.v2.ComposeObjectRequest.SourceObject.ObjectPreconditions
|
|
(*Bucket_Billing)(nil), // 60: google.storage.v2.Bucket.Billing
|
|
(*Bucket_Cors)(nil), // 61: google.storage.v2.Bucket.Cors
|
|
(*Bucket_Encryption)(nil), // 62: google.storage.v2.Bucket.Encryption
|
|
(*Bucket_IamConfig)(nil), // 63: google.storage.v2.Bucket.IamConfig
|
|
(*Bucket_Lifecycle)(nil), // 64: google.storage.v2.Bucket.Lifecycle
|
|
(*Bucket_Logging)(nil), // 65: google.storage.v2.Bucket.Logging
|
|
(*Bucket_RetentionPolicy)(nil), // 66: google.storage.v2.Bucket.RetentionPolicy
|
|
(*Bucket_SoftDeletePolicy)(nil), // 67: google.storage.v2.Bucket.SoftDeletePolicy
|
|
(*Bucket_Versioning)(nil), // 68: google.storage.v2.Bucket.Versioning
|
|
(*Bucket_Website)(nil), // 69: google.storage.v2.Bucket.Website
|
|
(*Bucket_CustomPlacementConfig)(nil), // 70: google.storage.v2.Bucket.CustomPlacementConfig
|
|
(*Bucket_Autoclass)(nil), // 71: google.storage.v2.Bucket.Autoclass
|
|
nil, // 72: google.storage.v2.Bucket.LabelsEntry
|
|
(*Bucket_IamConfig_UniformBucketLevelAccess)(nil), // 73: google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess
|
|
(*Bucket_Lifecycle_Rule)(nil), // 74: google.storage.v2.Bucket.Lifecycle.Rule
|
|
(*Bucket_Lifecycle_Rule_Action)(nil), // 75: google.storage.v2.Bucket.Lifecycle.Rule.Action
|
|
(*Bucket_Lifecycle_Rule_Condition)(nil), // 76: google.storage.v2.Bucket.Lifecycle.Rule.Condition
|
|
nil, // 77: google.storage.v2.NotificationConfig.CustomAttributesEntry
|
|
nil, // 78: google.storage.v2.Object.MetadataEntry
|
|
(*fieldmaskpb.FieldMask)(nil), // 79: google.protobuf.FieldMask
|
|
(*timestamppb.Timestamp)(nil), // 80: google.protobuf.Timestamp
|
|
(*durationpb.Duration)(nil), // 81: google.protobuf.Duration
|
|
(*date.Date)(nil), // 82: google.type.Date
|
|
(*iampb.GetIamPolicyRequest)(nil), // 83: google.iam.v1.GetIamPolicyRequest
|
|
(*iampb.SetIamPolicyRequest)(nil), // 84: google.iam.v1.SetIamPolicyRequest
|
|
(*iampb.TestIamPermissionsRequest)(nil), // 85: google.iam.v1.TestIamPermissionsRequest
|
|
(*emptypb.Empty)(nil), // 86: google.protobuf.Empty
|
|
(*iampb.Policy)(nil), // 87: google.iam.v1.Policy
|
|
(*iampb.TestIamPermissionsResponse)(nil), // 88: google.iam.v1.TestIamPermissionsResponse
|
|
}
|
|
var file_google_storage_v2_storage_proto_depIdxs = []int32{
|
|
79, // 0: google.storage.v2.GetBucketRequest.read_mask:type_name -> google.protobuf.FieldMask
|
|
44, // 1: google.storage.v2.CreateBucketRequest.bucket:type_name -> google.storage.v2.Bucket
|
|
79, // 2: google.storage.v2.ListBucketsRequest.read_mask:type_name -> google.protobuf.FieldMask
|
|
44, // 3: google.storage.v2.ListBucketsResponse.buckets:type_name -> google.storage.v2.Bucket
|
|
44, // 4: google.storage.v2.UpdateBucketRequest.bucket:type_name -> google.storage.v2.Bucket
|
|
79, // 5: google.storage.v2.UpdateBucketRequest.update_mask:type_name -> google.protobuf.FieldMask
|
|
49, // 6: google.storage.v2.CreateNotificationConfigRequest.notification_config:type_name -> google.storage.v2.NotificationConfig
|
|
49, // 7: google.storage.v2.ListNotificationConfigsResponse.notification_configs:type_name -> google.storage.v2.NotificationConfig
|
|
51, // 8: google.storage.v2.ComposeObjectRequest.destination:type_name -> google.storage.v2.Object
|
|
58, // 9: google.storage.v2.ComposeObjectRequest.source_objects:type_name -> google.storage.v2.ComposeObjectRequest.SourceObject
|
|
42, // 10: google.storage.v2.ComposeObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
47, // 11: google.storage.v2.ComposeObjectRequest.object_checksums:type_name -> google.storage.v2.ObjectChecksums
|
|
42, // 12: google.storage.v2.DeleteObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
42, // 13: google.storage.v2.RestoreObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
42, // 14: google.storage.v2.ReadObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
79, // 15: google.storage.v2.ReadObjectRequest.read_mask:type_name -> google.protobuf.FieldMask
|
|
42, // 16: google.storage.v2.GetObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
79, // 17: google.storage.v2.GetObjectRequest.read_mask:type_name -> google.protobuf.FieldMask
|
|
46, // 18: google.storage.v2.ReadObjectResponse.checksummed_data:type_name -> google.storage.v2.ChecksummedData
|
|
47, // 19: google.storage.v2.ReadObjectResponse.object_checksums:type_name -> google.storage.v2.ObjectChecksums
|
|
57, // 20: google.storage.v2.ReadObjectResponse.content_range:type_name -> google.storage.v2.ContentRange
|
|
51, // 21: google.storage.v2.ReadObjectResponse.metadata:type_name -> google.storage.v2.Object
|
|
51, // 22: google.storage.v2.WriteObjectSpec.resource:type_name -> google.storage.v2.Object
|
|
21, // 23: google.storage.v2.WriteObjectRequest.write_object_spec:type_name -> google.storage.v2.WriteObjectSpec
|
|
46, // 24: google.storage.v2.WriteObjectRequest.checksummed_data:type_name -> google.storage.v2.ChecksummedData
|
|
47, // 25: google.storage.v2.WriteObjectRequest.object_checksums:type_name -> google.storage.v2.ObjectChecksums
|
|
42, // 26: google.storage.v2.WriteObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
51, // 27: google.storage.v2.WriteObjectResponse.resource:type_name -> google.storage.v2.Object
|
|
21, // 28: google.storage.v2.BidiWriteObjectRequest.write_object_spec:type_name -> google.storage.v2.WriteObjectSpec
|
|
46, // 29: google.storage.v2.BidiWriteObjectRequest.checksummed_data:type_name -> google.storage.v2.ChecksummedData
|
|
47, // 30: google.storage.v2.BidiWriteObjectRequest.object_checksums:type_name -> google.storage.v2.ObjectChecksums
|
|
42, // 31: google.storage.v2.BidiWriteObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
51, // 32: google.storage.v2.BidiWriteObjectResponse.resource:type_name -> google.storage.v2.Object
|
|
79, // 33: google.storage.v2.ListObjectsRequest.read_mask:type_name -> google.protobuf.FieldMask
|
|
42, // 34: google.storage.v2.QueryWriteStatusRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
51, // 35: google.storage.v2.QueryWriteStatusResponse.resource:type_name -> google.storage.v2.Object
|
|
51, // 36: google.storage.v2.RewriteObjectRequest.destination:type_name -> google.storage.v2.Object
|
|
42, // 37: google.storage.v2.RewriteObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
47, // 38: google.storage.v2.RewriteObjectRequest.object_checksums:type_name -> google.storage.v2.ObjectChecksums
|
|
51, // 39: google.storage.v2.RewriteResponse.resource:type_name -> google.storage.v2.Object
|
|
21, // 40: google.storage.v2.StartResumableWriteRequest.write_object_spec:type_name -> google.storage.v2.WriteObjectSpec
|
|
42, // 41: google.storage.v2.StartResumableWriteRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
47, // 42: google.storage.v2.StartResumableWriteRequest.object_checksums:type_name -> google.storage.v2.ObjectChecksums
|
|
51, // 43: google.storage.v2.UpdateObjectRequest.object:type_name -> google.storage.v2.Object
|
|
79, // 44: google.storage.v2.UpdateObjectRequest.update_mask:type_name -> google.protobuf.FieldMask
|
|
42, // 45: google.storage.v2.UpdateObjectRequest.common_object_request_params:type_name -> google.storage.v2.CommonObjectRequestParams
|
|
48, // 46: google.storage.v2.CreateHmacKeyResponse.metadata:type_name -> google.storage.v2.HmacKeyMetadata
|
|
48, // 47: google.storage.v2.ListHmacKeysResponse.hmac_keys:type_name -> google.storage.v2.HmacKeyMetadata
|
|
48, // 48: google.storage.v2.UpdateHmacKeyRequest.hmac_key:type_name -> google.storage.v2.HmacKeyMetadata
|
|
79, // 49: google.storage.v2.UpdateHmacKeyRequest.update_mask:type_name -> google.protobuf.FieldMask
|
|
45, // 50: google.storage.v2.Bucket.acl:type_name -> google.storage.v2.BucketAccessControl
|
|
52, // 51: google.storage.v2.Bucket.default_object_acl:type_name -> google.storage.v2.ObjectAccessControl
|
|
64, // 52: google.storage.v2.Bucket.lifecycle:type_name -> google.storage.v2.Bucket.Lifecycle
|
|
80, // 53: google.storage.v2.Bucket.create_time:type_name -> google.protobuf.Timestamp
|
|
61, // 54: google.storage.v2.Bucket.cors:type_name -> google.storage.v2.Bucket.Cors
|
|
80, // 55: google.storage.v2.Bucket.update_time:type_name -> google.protobuf.Timestamp
|
|
72, // 56: google.storage.v2.Bucket.labels:type_name -> google.storage.v2.Bucket.LabelsEntry
|
|
69, // 57: google.storage.v2.Bucket.website:type_name -> google.storage.v2.Bucket.Website
|
|
68, // 58: google.storage.v2.Bucket.versioning:type_name -> google.storage.v2.Bucket.Versioning
|
|
65, // 59: google.storage.v2.Bucket.logging:type_name -> google.storage.v2.Bucket.Logging
|
|
56, // 60: google.storage.v2.Bucket.owner:type_name -> google.storage.v2.Owner
|
|
62, // 61: google.storage.v2.Bucket.encryption:type_name -> google.storage.v2.Bucket.Encryption
|
|
60, // 62: google.storage.v2.Bucket.billing:type_name -> google.storage.v2.Bucket.Billing
|
|
66, // 63: google.storage.v2.Bucket.retention_policy:type_name -> google.storage.v2.Bucket.RetentionPolicy
|
|
63, // 64: google.storage.v2.Bucket.iam_config:type_name -> google.storage.v2.Bucket.IamConfig
|
|
70, // 65: google.storage.v2.Bucket.custom_placement_config:type_name -> google.storage.v2.Bucket.CustomPlacementConfig
|
|
71, // 66: google.storage.v2.Bucket.autoclass:type_name -> google.storage.v2.Bucket.Autoclass
|
|
67, // 67: google.storage.v2.Bucket.soft_delete_policy:type_name -> google.storage.v2.Bucket.SoftDeletePolicy
|
|
54, // 68: google.storage.v2.BucketAccessControl.project_team:type_name -> google.storage.v2.ProjectTeam
|
|
80, // 69: google.storage.v2.HmacKeyMetadata.create_time:type_name -> google.protobuf.Timestamp
|
|
80, // 70: google.storage.v2.HmacKeyMetadata.update_time:type_name -> google.protobuf.Timestamp
|
|
77, // 71: google.storage.v2.NotificationConfig.custom_attributes:type_name -> google.storage.v2.NotificationConfig.CustomAttributesEntry
|
|
52, // 72: google.storage.v2.Object.acl:type_name -> google.storage.v2.ObjectAccessControl
|
|
80, // 73: google.storage.v2.Object.delete_time:type_name -> google.protobuf.Timestamp
|
|
80, // 74: google.storage.v2.Object.create_time:type_name -> google.protobuf.Timestamp
|
|
47, // 75: google.storage.v2.Object.checksums:type_name -> google.storage.v2.ObjectChecksums
|
|
80, // 76: google.storage.v2.Object.update_time:type_name -> google.protobuf.Timestamp
|
|
80, // 77: google.storage.v2.Object.update_storage_class_time:type_name -> google.protobuf.Timestamp
|
|
80, // 78: google.storage.v2.Object.retention_expire_time:type_name -> google.protobuf.Timestamp
|
|
78, // 79: google.storage.v2.Object.metadata:type_name -> google.storage.v2.Object.MetadataEntry
|
|
56, // 80: google.storage.v2.Object.owner:type_name -> google.storage.v2.Owner
|
|
50, // 81: google.storage.v2.Object.customer_encryption:type_name -> google.storage.v2.CustomerEncryption
|
|
80, // 82: google.storage.v2.Object.custom_time:type_name -> google.protobuf.Timestamp
|
|
54, // 83: google.storage.v2.ObjectAccessControl.project_team:type_name -> google.storage.v2.ProjectTeam
|
|
51, // 84: google.storage.v2.ListObjectsResponse.objects:type_name -> google.storage.v2.Object
|
|
59, // 85: google.storage.v2.ComposeObjectRequest.SourceObject.object_preconditions:type_name -> google.storage.v2.ComposeObjectRequest.SourceObject.ObjectPreconditions
|
|
73, // 86: google.storage.v2.Bucket.IamConfig.uniform_bucket_level_access:type_name -> google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess
|
|
74, // 87: google.storage.v2.Bucket.Lifecycle.rule:type_name -> google.storage.v2.Bucket.Lifecycle.Rule
|
|
80, // 88: google.storage.v2.Bucket.RetentionPolicy.effective_time:type_name -> google.protobuf.Timestamp
|
|
81, // 89: google.storage.v2.Bucket.RetentionPolicy.retention_duration:type_name -> google.protobuf.Duration
|
|
81, // 90: google.storage.v2.Bucket.SoftDeletePolicy.retention_duration:type_name -> google.protobuf.Duration
|
|
80, // 91: google.storage.v2.Bucket.SoftDeletePolicy.effective_time:type_name -> google.protobuf.Timestamp
|
|
80, // 92: google.storage.v2.Bucket.Autoclass.toggle_time:type_name -> google.protobuf.Timestamp
|
|
80, // 93: google.storage.v2.Bucket.Autoclass.terminal_storage_class_update_time:type_name -> google.protobuf.Timestamp
|
|
80, // 94: google.storage.v2.Bucket.IamConfig.UniformBucketLevelAccess.lock_time:type_name -> google.protobuf.Timestamp
|
|
75, // 95: google.storage.v2.Bucket.Lifecycle.Rule.action:type_name -> google.storage.v2.Bucket.Lifecycle.Rule.Action
|
|
76, // 96: google.storage.v2.Bucket.Lifecycle.Rule.condition:type_name -> google.storage.v2.Bucket.Lifecycle.Rule.Condition
|
|
82, // 97: google.storage.v2.Bucket.Lifecycle.Rule.Condition.created_before:type_name -> google.type.Date
|
|
82, // 98: google.storage.v2.Bucket.Lifecycle.Rule.Condition.custom_time_before:type_name -> google.type.Date
|
|
82, // 99: google.storage.v2.Bucket.Lifecycle.Rule.Condition.noncurrent_time_before:type_name -> google.type.Date
|
|
1, // 100: google.storage.v2.Storage.DeleteBucket:input_type -> google.storage.v2.DeleteBucketRequest
|
|
2, // 101: google.storage.v2.Storage.GetBucket:input_type -> google.storage.v2.GetBucketRequest
|
|
3, // 102: google.storage.v2.Storage.CreateBucket:input_type -> google.storage.v2.CreateBucketRequest
|
|
4, // 103: google.storage.v2.Storage.ListBuckets:input_type -> google.storage.v2.ListBucketsRequest
|
|
6, // 104: google.storage.v2.Storage.LockBucketRetentionPolicy:input_type -> google.storage.v2.LockBucketRetentionPolicyRequest
|
|
83, // 105: google.storage.v2.Storage.GetIamPolicy:input_type -> google.iam.v1.GetIamPolicyRequest
|
|
84, // 106: google.storage.v2.Storage.SetIamPolicy:input_type -> google.iam.v1.SetIamPolicyRequest
|
|
85, // 107: google.storage.v2.Storage.TestIamPermissions:input_type -> google.iam.v1.TestIamPermissionsRequest
|
|
7, // 108: google.storage.v2.Storage.UpdateBucket:input_type -> google.storage.v2.UpdateBucketRequest
|
|
8, // 109: google.storage.v2.Storage.DeleteNotificationConfig:input_type -> google.storage.v2.DeleteNotificationConfigRequest
|
|
9, // 110: google.storage.v2.Storage.GetNotificationConfig:input_type -> google.storage.v2.GetNotificationConfigRequest
|
|
10, // 111: google.storage.v2.Storage.CreateNotificationConfig:input_type -> google.storage.v2.CreateNotificationConfigRequest
|
|
11, // 112: google.storage.v2.Storage.ListNotificationConfigs:input_type -> google.storage.v2.ListNotificationConfigsRequest
|
|
13, // 113: google.storage.v2.Storage.ComposeObject:input_type -> google.storage.v2.ComposeObjectRequest
|
|
14, // 114: google.storage.v2.Storage.DeleteObject:input_type -> google.storage.v2.DeleteObjectRequest
|
|
15, // 115: google.storage.v2.Storage.RestoreObject:input_type -> google.storage.v2.RestoreObjectRequest
|
|
16, // 116: google.storage.v2.Storage.CancelResumableWrite:input_type -> google.storage.v2.CancelResumableWriteRequest
|
|
19, // 117: google.storage.v2.Storage.GetObject:input_type -> google.storage.v2.GetObjectRequest
|
|
18, // 118: google.storage.v2.Storage.ReadObject:input_type -> google.storage.v2.ReadObjectRequest
|
|
33, // 119: google.storage.v2.Storage.UpdateObject:input_type -> google.storage.v2.UpdateObjectRequest
|
|
22, // 120: google.storage.v2.Storage.WriteObject:input_type -> google.storage.v2.WriteObjectRequest
|
|
24, // 121: google.storage.v2.Storage.BidiWriteObject:input_type -> google.storage.v2.BidiWriteObjectRequest
|
|
26, // 122: google.storage.v2.Storage.ListObjects:input_type -> google.storage.v2.ListObjectsRequest
|
|
29, // 123: google.storage.v2.Storage.RewriteObject:input_type -> google.storage.v2.RewriteObjectRequest
|
|
31, // 124: google.storage.v2.Storage.StartResumableWrite:input_type -> google.storage.v2.StartResumableWriteRequest
|
|
27, // 125: google.storage.v2.Storage.QueryWriteStatus:input_type -> google.storage.v2.QueryWriteStatusRequest
|
|
34, // 126: google.storage.v2.Storage.GetServiceAccount:input_type -> google.storage.v2.GetServiceAccountRequest
|
|
35, // 127: google.storage.v2.Storage.CreateHmacKey:input_type -> google.storage.v2.CreateHmacKeyRequest
|
|
37, // 128: google.storage.v2.Storage.DeleteHmacKey:input_type -> google.storage.v2.DeleteHmacKeyRequest
|
|
38, // 129: google.storage.v2.Storage.GetHmacKey:input_type -> google.storage.v2.GetHmacKeyRequest
|
|
39, // 130: google.storage.v2.Storage.ListHmacKeys:input_type -> google.storage.v2.ListHmacKeysRequest
|
|
41, // 131: google.storage.v2.Storage.UpdateHmacKey:input_type -> google.storage.v2.UpdateHmacKeyRequest
|
|
86, // 132: google.storage.v2.Storage.DeleteBucket:output_type -> google.protobuf.Empty
|
|
44, // 133: google.storage.v2.Storage.GetBucket:output_type -> google.storage.v2.Bucket
|
|
44, // 134: google.storage.v2.Storage.CreateBucket:output_type -> google.storage.v2.Bucket
|
|
5, // 135: google.storage.v2.Storage.ListBuckets:output_type -> google.storage.v2.ListBucketsResponse
|
|
44, // 136: google.storage.v2.Storage.LockBucketRetentionPolicy:output_type -> google.storage.v2.Bucket
|
|
87, // 137: google.storage.v2.Storage.GetIamPolicy:output_type -> google.iam.v1.Policy
|
|
87, // 138: google.storage.v2.Storage.SetIamPolicy:output_type -> google.iam.v1.Policy
|
|
88, // 139: google.storage.v2.Storage.TestIamPermissions:output_type -> google.iam.v1.TestIamPermissionsResponse
|
|
44, // 140: google.storage.v2.Storage.UpdateBucket:output_type -> google.storage.v2.Bucket
|
|
86, // 141: google.storage.v2.Storage.DeleteNotificationConfig:output_type -> google.protobuf.Empty
|
|
49, // 142: google.storage.v2.Storage.GetNotificationConfig:output_type -> google.storage.v2.NotificationConfig
|
|
49, // 143: google.storage.v2.Storage.CreateNotificationConfig:output_type -> google.storage.v2.NotificationConfig
|
|
12, // 144: google.storage.v2.Storage.ListNotificationConfigs:output_type -> google.storage.v2.ListNotificationConfigsResponse
|
|
51, // 145: google.storage.v2.Storage.ComposeObject:output_type -> google.storage.v2.Object
|
|
86, // 146: google.storage.v2.Storage.DeleteObject:output_type -> google.protobuf.Empty
|
|
51, // 147: google.storage.v2.Storage.RestoreObject:output_type -> google.storage.v2.Object
|
|
17, // 148: google.storage.v2.Storage.CancelResumableWrite:output_type -> google.storage.v2.CancelResumableWriteResponse
|
|
51, // 149: google.storage.v2.Storage.GetObject:output_type -> google.storage.v2.Object
|
|
20, // 150: google.storage.v2.Storage.ReadObject:output_type -> google.storage.v2.ReadObjectResponse
|
|
51, // 151: google.storage.v2.Storage.UpdateObject:output_type -> google.storage.v2.Object
|
|
23, // 152: google.storage.v2.Storage.WriteObject:output_type -> google.storage.v2.WriteObjectResponse
|
|
25, // 153: google.storage.v2.Storage.BidiWriteObject:output_type -> google.storage.v2.BidiWriteObjectResponse
|
|
53, // 154: google.storage.v2.Storage.ListObjects:output_type -> google.storage.v2.ListObjectsResponse
|
|
30, // 155: google.storage.v2.Storage.RewriteObject:output_type -> google.storage.v2.RewriteResponse
|
|
32, // 156: google.storage.v2.Storage.StartResumableWrite:output_type -> google.storage.v2.StartResumableWriteResponse
|
|
28, // 157: google.storage.v2.Storage.QueryWriteStatus:output_type -> google.storage.v2.QueryWriteStatusResponse
|
|
55, // 158: google.storage.v2.Storage.GetServiceAccount:output_type -> google.storage.v2.ServiceAccount
|
|
36, // 159: google.storage.v2.Storage.CreateHmacKey:output_type -> google.storage.v2.CreateHmacKeyResponse
|
|
86, // 160: google.storage.v2.Storage.DeleteHmacKey:output_type -> google.protobuf.Empty
|
|
48, // 161: google.storage.v2.Storage.GetHmacKey:output_type -> google.storage.v2.HmacKeyMetadata
|
|
40, // 162: google.storage.v2.Storage.ListHmacKeys:output_type -> google.storage.v2.ListHmacKeysResponse
|
|
48, // 163: google.storage.v2.Storage.UpdateHmacKey:output_type -> google.storage.v2.HmacKeyMetadata
|
|
132, // [132:164] is the sub-list for method output_type
|
|
100, // [100:132] is the sub-list for method input_type
|
|
100, // [100:100] is the sub-list for extension type_name
|
|
100, // [100:100] is the sub-list for extension extendee
|
|
0, // [0:100] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_google_storage_v2_storage_proto_init() }
|
|
func file_google_storage_v2_storage_proto_init() {
|
|
if File_google_storage_v2_storage_proto != nil {
|
|
return
|
|
}
|
|
if !protoimpl.UnsafeEnabled {
|
|
file_google_storage_v2_storage_proto_msgTypes[0].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_v2_storage_proto_msgTypes[1].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_v2_storage_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CreateBucketRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[3].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_v2_storage_proto_msgTypes[4].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_v2_storage_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*LockBucketRetentionPolicyRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[6].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_v2_storage_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*DeleteNotificationConfigRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*GetNotificationConfigRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CreateNotificationConfigRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ListNotificationConfigsRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ListNotificationConfigsResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[12].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_v2_storage_proto_msgTypes[13].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_v2_storage_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*RestoreObjectRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CancelResumableWriteRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CancelResumableWriteResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ReadObjectRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[18].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_v2_storage_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ReadObjectResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*WriteObjectSpec); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*WriteObjectRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*WriteObjectResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*BidiWriteObjectRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*BidiWriteObjectResponse); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[25].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_v2_storage_proto_msgTypes[26].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_v2_storage_proto_msgTypes[27].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_v2_storage_proto_msgTypes[28].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_v2_storage_proto_msgTypes[29].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_v2_storage_proto_msgTypes[30].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_v2_storage_proto_msgTypes[31].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_v2_storage_proto_msgTypes[32].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_v2_storage_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*GetServiceAccountRequest); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[34].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_v2_storage_proto_msgTypes[35].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_v2_storage_proto_msgTypes[36].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_v2_storage_proto_msgTypes[37].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_v2_storage_proto_msgTypes[38].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_v2_storage_proto_msgTypes[39].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_v2_storage_proto_msgTypes[40].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_v2_storage_proto_msgTypes[41].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_v2_storage_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ServiceConstants); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[43].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_v2_storage_proto_msgTypes[44].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_v2_storage_proto_msgTypes[45].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_v2_storage_proto_msgTypes[46].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_v2_storage_proto_msgTypes[47].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_v2_storage_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*NotificationConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*CustomerEncryption); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[50].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_v2_storage_proto_msgTypes[51].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_v2_storage_proto_msgTypes[52].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_v2_storage_proto_msgTypes[53].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_v2_storage_proto_msgTypes[54].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_v2_storage_proto_msgTypes[55].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_v2_storage_proto_msgTypes[56].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_v2_storage_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ComposeObjectRequest_SourceObject); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ComposeObjectRequest_SourceObject_ObjectPreconditions); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[59].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_v2_storage_proto_msgTypes[60].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_v2_storage_proto_msgTypes[61].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_v2_storage_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Bucket_IamConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[63].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_v2_storage_proto_msgTypes[64].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_v2_storage_proto_msgTypes[65].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_v2_storage_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Bucket_SoftDeletePolicy); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[67].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_v2_storage_proto_msgTypes[68].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_v2_storage_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Bucket_CustomPlacementConfig); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[70].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_v2_storage_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Bucket_IamConfig_UniformBucketLevelAccess); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[73].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_v2_storage_proto_msgTypes[74].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_v2_storage_proto_msgTypes[75].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_v2_storage_proto_msgTypes[0].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[1].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[3].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[6].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[12].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[13].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[14].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[17].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[18].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[20].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[21].OneofWrappers = []interface{}{
|
|
(*WriteObjectRequest_UploadId)(nil),
|
|
(*WriteObjectRequest_WriteObjectSpec)(nil),
|
|
(*WriteObjectRequest_ChecksummedData)(nil),
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[22].OneofWrappers = []interface{}{
|
|
(*WriteObjectResponse_PersistedSize)(nil),
|
|
(*WriteObjectResponse_Resource)(nil),
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[23].OneofWrappers = []interface{}{
|
|
(*BidiWriteObjectRequest_UploadId)(nil),
|
|
(*BidiWriteObjectRequest_WriteObjectSpec)(nil),
|
|
(*BidiWriteObjectRequest_ChecksummedData)(nil),
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[24].OneofWrappers = []interface{}{
|
|
(*BidiWriteObjectResponse_PersistedSize)(nil),
|
|
(*BidiWriteObjectResponse_Resource)(nil),
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[25].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[27].OneofWrappers = []interface{}{
|
|
(*QueryWriteStatusResponse_PersistedSize)(nil),
|
|
(*QueryWriteStatusResponse_Resource)(nil),
|
|
}
|
|
file_google_storage_v2_storage_proto_msgTypes[28].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[32].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[45].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[46].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[50].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[58].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[66].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[70].OneofWrappers = []interface{}{}
|
|
file_google_storage_v2_storage_proto_msgTypes[75].OneofWrappers = []interface{}{}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: file_google_storage_v2_storage_proto_rawDesc,
|
|
NumEnums: 1,
|
|
NumMessages: 78,
|
|
NumExtensions: 0,
|
|
NumServices: 1,
|
|
},
|
|
GoTypes: file_google_storage_v2_storage_proto_goTypes,
|
|
DependencyIndexes: file_google_storage_v2_storage_proto_depIdxs,
|
|
EnumInfos: file_google_storage_v2_storage_proto_enumTypes,
|
|
MessageInfos: file_google_storage_v2_storage_proto_msgTypes,
|
|
}.Build()
|
|
File_google_storage_v2_storage_proto = out.File
|
|
file_google_storage_v2_storage_proto_rawDesc = nil
|
|
file_google_storage_v2_storage_proto_goTypes = nil
|
|
file_google_storage_v2_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
|
|
|
|
// StorageClient is the client API for Storage service.
|
|
//
|
|
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
|
|
type StorageClient interface {
|
|
// Permanently deletes an empty bucket.
|
|
DeleteBucket(ctx context.Context, in *DeleteBucketRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
|
|
// Returns metadata for the specified bucket.
|
|
GetBucket(ctx context.Context, in *GetBucketRequest, opts ...grpc.CallOption) (*Bucket, error)
|
|
// Creates a new bucket.
|
|
CreateBucket(ctx context.Context, in *CreateBucketRequest, opts ...grpc.CallOption) (*Bucket, error)
|
|
// Retrieves a list of buckets for a given project.
|
|
ListBuckets(ctx context.Context, in *ListBucketsRequest, opts ...grpc.CallOption) (*ListBucketsResponse, error)
|
|
// Locks retention policy on a bucket.
|
|
LockBucketRetentionPolicy(ctx context.Context, in *LockBucketRetentionPolicyRequest, opts ...grpc.CallOption) (*Bucket, error)
|
|
// Gets the IAM policy for a specified bucket or object.
|
|
// The `resource` field in the request should be
|
|
// `projects/_/buckets/{bucket}` for a bucket or
|
|
// `projects/_/buckets/{bucket}/objects/{object}` for an object.
|
|
GetIamPolicy(ctx context.Context, in *iampb.GetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error)
|
|
// Updates an IAM policy for the specified bucket or object.
|
|
// The `resource` field in the request should be
|
|
// `projects/_/buckets/{bucket}` for a bucket or
|
|
// `projects/_/buckets/{bucket}/objects/{object}` for an object.
|
|
SetIamPolicy(ctx context.Context, in *iampb.SetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error)
|
|
// Tests a set of permissions on the given bucket or object to see which, if
|
|
// any, are held by the caller.
|
|
// The `resource` field in the request should be
|
|
// `projects/_/buckets/{bucket}` for a bucket or
|
|
// `projects/_/buckets/{bucket}/objects/{object}` for an object.
|
|
TestIamPermissions(ctx context.Context, in *iampb.TestIamPermissionsRequest, opts ...grpc.CallOption) (*iampb.TestIamPermissionsResponse, error)
|
|
// Updates a bucket. Equivalent to JSON API's storage.buckets.patch method.
|
|
UpdateBucket(ctx context.Context, in *UpdateBucketRequest, opts ...grpc.CallOption) (*Bucket, error)
|
|
// Permanently deletes a NotificationConfig.
|
|
DeleteNotificationConfig(ctx context.Context, in *DeleteNotificationConfigRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
|
|
// View a NotificationConfig.
|
|
GetNotificationConfig(ctx context.Context, in *GetNotificationConfigRequest, opts ...grpc.CallOption) (*NotificationConfig, error)
|
|
// Creates a NotificationConfig for a given bucket.
|
|
// These NotificationConfigs, when triggered, publish messages to the
|
|
// specified Pub/Sub topics. See
|
|
// https://cloud.google.com/storage/docs/pubsub-notifications.
|
|
CreateNotificationConfig(ctx context.Context, in *CreateNotificationConfigRequest, opts ...grpc.CallOption) (*NotificationConfig, error)
|
|
// Retrieves a list of NotificationConfigs for a given bucket.
|
|
ListNotificationConfigs(ctx context.Context, in *ListNotificationConfigsRequest, opts ...grpc.CallOption) (*ListNotificationConfigsResponse, error)
|
|
// Concatenates a list of existing objects into a new object in the same
|
|
// bucket.
|
|
ComposeObject(ctx context.Context, in *ComposeObjectRequest, opts ...grpc.CallOption) (*Object, error)
|
|
// Deletes an object and its metadata.
|
|
//
|
|
// Deletions are normally permanent when versioning is disabled or whenever
|
|
// the generation parameter is used. However, if soft delete is enabled for
|
|
// the bucket, deleted objects can be restored using RestoreObject until the
|
|
// soft delete retention period has passed.
|
|
DeleteObject(ctx context.Context, in *DeleteObjectRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
|
|
// Restores a soft-deleted object.
|
|
RestoreObject(ctx context.Context, in *RestoreObjectRequest, opts ...grpc.CallOption) (*Object, error)
|
|
// Cancels an in-progress resumable upload.
|
|
//
|
|
// Any attempts to write to the resumable upload after cancelling the upload
|
|
// will fail.
|
|
//
|
|
// The behavior for currently in progress write operations is not guaranteed -
|
|
// they could either complete before the cancellation or fail if the
|
|
// cancellation completes first.
|
|
CancelResumableWrite(ctx context.Context, in *CancelResumableWriteRequest, opts ...grpc.CallOption) (*CancelResumableWriteResponse, error)
|
|
// Retrieves an object's metadata.
|
|
GetObject(ctx context.Context, in *GetObjectRequest, opts ...grpc.CallOption) (*Object, error)
|
|
// Reads an object's data.
|
|
ReadObject(ctx context.Context, in *ReadObjectRequest, opts ...grpc.CallOption) (Storage_ReadObjectClient, error)
|
|
// Updates an object's metadata.
|
|
// Equivalent to JSON API's storage.objects.patch.
|
|
UpdateObject(ctx context.Context, in *UpdateObjectRequest, opts ...grpc.CallOption) (*Object, error)
|
|
// Stores a new object and metadata.
|
|
//
|
|
// An object can be written either in a single message stream or in a
|
|
// resumable sequence of message streams. To write using a single stream,
|
|
// the client should include in the first message of the stream an
|
|
// `WriteObjectSpec` describing the destination bucket, object, and any
|
|
// preconditions. Additionally, the final message must set 'finish_write' to
|
|
// true, or else it is an error.
|
|
//
|
|
// For a resumable write, the client should instead call
|
|
// `StartResumableWrite()`, populating a `WriteObjectSpec` into that request.
|
|
// They should then attach the returned `upload_id` to the first message of
|
|
// each following call to `WriteObject`. If the stream is closed before
|
|
// finishing the upload (either explicitly by the client or due to a network
|
|
// error or an error response from the server), the client should do as
|
|
// follows:
|
|
// - Check the result Status of the stream, to determine if writing can be
|
|
// resumed on this stream or must be restarted from scratch (by calling
|
|
// `StartResumableWrite()`). The resumable errors are DEADLINE_EXCEEDED,
|
|
// INTERNAL, and UNAVAILABLE. For each case, the client should use binary
|
|
// exponential backoff before retrying. Additionally, writes can be
|
|
// resumed after RESOURCE_EXHAUSTED errors, but only after taking
|
|
// appropriate measures, which may include reducing aggregate send rate
|
|
// across clients and/or requesting a quota increase for your project.
|
|
// - If the call to `WriteObject` returns `ABORTED`, that indicates
|
|
// concurrent attempts to update the resumable write, caused either by
|
|
// multiple racing clients or by a single client where the previous
|
|
// request was timed out on the client side but nonetheless reached the
|
|
// server. In this case the client should take steps to prevent further
|
|
// concurrent writes (e.g., increase the timeouts, stop using more than
|
|
// one process to perform the upload, etc.), and then should follow the
|
|
// steps below for resuming the upload.
|
|
// - For resumable errors, the client should call `QueryWriteStatus()` and
|
|
// then continue writing from the returned `persisted_size`. This may be
|
|
// less than the amount of data the client previously sent. Note also that
|
|
// it is acceptable to send data starting at an offset earlier than the
|
|
// returned `persisted_size`; in this case, the service will skip data at
|
|
// offsets that were already persisted (without checking that it matches
|
|
// the previously written data), and write only the data starting from the
|
|
// persisted offset. Even though the data isn't written, it may still
|
|
// incur a performance cost over resuming at the correct write offset.
|
|
// This behavior can make client-side handling simpler in some cases.
|
|
// - Clients must only send data that is a multiple of 256 KiB per message,
|
|
// unless the object is being finished with `finish_write` set to `true`.
|
|
//
|
|
// The service will not view the object as complete until the client has
|
|
// sent a `WriteObjectRequest` with `finish_write` set to `true`. Sending any
|
|
// requests on a stream after sending a request with `finish_write` set to
|
|
// `true` will cause an error. The client **should** check the response it
|
|
// receives to determine how much data the service was able to commit and
|
|
// whether the service views the object as complete.
|
|
//
|
|
// Attempting to resume an already finalized object will result in an OK
|
|
// status, with a WriteObjectResponse containing the finalized object's
|
|
// metadata.
|
|
//
|
|
// Alternatively, the BidiWriteObject operation may be used to write an
|
|
// object with controls over flushing and the ability to fetch the ability to
|
|
// determine the current persisted size.
|
|
WriteObject(ctx context.Context, opts ...grpc.CallOption) (Storage_WriteObjectClient, error)
|
|
// Stores a new object and metadata.
|
|
//
|
|
// This is similar to the WriteObject call with the added support for
|
|
// manual flushing of persisted state, and the ability to determine current
|
|
// persisted size without closing the stream.
|
|
//
|
|
// The client may specify one or both of the `state_lookup` and `flush` fields
|
|
// in each BidiWriteObjectRequest. If `flush` is specified, the data written
|
|
// so far will be persisted to storage. If `state_lookup` is specified, the
|
|
// service will respond with a BidiWriteObjectResponse that contains the
|
|
// persisted size. If both `flush` and `state_lookup` are specified, the flush
|
|
// will always occur before a `state_lookup`, so that both may be set in the
|
|
// same request and the returned state will be the state of the object
|
|
// post-flush. When the stream is closed, a BidiWriteObjectResponse will
|
|
// always be sent to the client, regardless of the value of `state_lookup`.
|
|
BidiWriteObject(ctx context.Context, opts ...grpc.CallOption) (Storage_BidiWriteObjectClient, error)
|
|
// Retrieves a list of objects matching the criteria.
|
|
ListObjects(ctx context.Context, in *ListObjectsRequest, opts ...grpc.CallOption) (*ListObjectsResponse, error)
|
|
// Rewrites a source object to a destination object. Optionally overrides
|
|
// metadata.
|
|
RewriteObject(ctx context.Context, in *RewriteObjectRequest, opts ...grpc.CallOption) (*RewriteResponse, error)
|
|
// Starts a resumable write. How long the write operation remains valid, and
|
|
// what happens when the write operation becomes invalid, are
|
|
// service-dependent.
|
|
StartResumableWrite(ctx context.Context, in *StartResumableWriteRequest, opts ...grpc.CallOption) (*StartResumableWriteResponse, error)
|
|
// Determines the `persisted_size` for an object that is being written, which
|
|
// can then be used as the `write_offset` for the next `Write()` call.
|
|
//
|
|
// If the object does not exist (i.e., the object has been deleted, or the
|
|
// first `Write()` has not yet reached the service), this method returns the
|
|
// error `NOT_FOUND`.
|
|
//
|
|
// The client **may** call `QueryWriteStatus()` at any time to determine how
|
|
// much data has been processed for this object. This is useful if the
|
|
// client is buffering data and needs to know which data can be safely
|
|
// evicted. For any sequence of `QueryWriteStatus()` calls for a given
|
|
// object name, the sequence of returned `persisted_size` values will be
|
|
// non-decreasing.
|
|
QueryWriteStatus(ctx context.Context, in *QueryWriteStatusRequest, opts ...grpc.CallOption) (*QueryWriteStatusResponse, error)
|
|
// Retrieves the name of a project's Google Cloud Storage service account.
|
|
GetServiceAccount(ctx context.Context, in *GetServiceAccountRequest, opts ...grpc.CallOption) (*ServiceAccount, error)
|
|
// Creates a new HMAC key for the given service account.
|
|
CreateHmacKey(ctx context.Context, in *CreateHmacKeyRequest, opts ...grpc.CallOption) (*CreateHmacKeyResponse, error)
|
|
// Deletes a given HMAC key. Key must be in an INACTIVE state.
|
|
DeleteHmacKey(ctx context.Context, in *DeleteHmacKeyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
|
|
// Gets an existing HMAC key metadata for the given id.
|
|
GetHmacKey(ctx context.Context, in *GetHmacKeyRequest, opts ...grpc.CallOption) (*HmacKeyMetadata, error)
|
|
// Lists HMAC keys under a given project with the additional filters provided.
|
|
ListHmacKeys(ctx context.Context, in *ListHmacKeysRequest, opts ...grpc.CallOption) (*ListHmacKeysResponse, error)
|
|
// Updates a given HMAC key state between ACTIVE and INACTIVE.
|
|
UpdateHmacKey(ctx context.Context, in *UpdateHmacKeyRequest, opts ...grpc.CallOption) (*HmacKeyMetadata, error)
|
|
}
|
|
|
|
type storageClient struct {
|
|
cc grpc.ClientConnInterface
|
|
}
|
|
|
|
func NewStorageClient(cc grpc.ClientConnInterface) StorageClient {
|
|
return &storageClient{cc}
|
|
}
|
|
|
|
func (c *storageClient) DeleteBucket(ctx context.Context, in *DeleteBucketRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
|
|
out := new(emptypb.Empty)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/DeleteBucket", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) GetBucket(ctx context.Context, in *GetBucketRequest, opts ...grpc.CallOption) (*Bucket, error) {
|
|
out := new(Bucket)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/GetBucket", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) CreateBucket(ctx context.Context, in *CreateBucketRequest, opts ...grpc.CallOption) (*Bucket, error) {
|
|
out := new(Bucket)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/CreateBucket", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) ListBuckets(ctx context.Context, in *ListBucketsRequest, opts ...grpc.CallOption) (*ListBucketsResponse, error) {
|
|
out := new(ListBucketsResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/ListBuckets", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) LockBucketRetentionPolicy(ctx context.Context, in *LockBucketRetentionPolicyRequest, opts ...grpc.CallOption) (*Bucket, error) {
|
|
out := new(Bucket)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/LockBucketRetentionPolicy", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) GetIamPolicy(ctx context.Context, in *iampb.GetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error) {
|
|
out := new(iampb.Policy)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/GetIamPolicy", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) SetIamPolicy(ctx context.Context, in *iampb.SetIamPolicyRequest, opts ...grpc.CallOption) (*iampb.Policy, error) {
|
|
out := new(iampb.Policy)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/SetIamPolicy", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) TestIamPermissions(ctx context.Context, in *iampb.TestIamPermissionsRequest, opts ...grpc.CallOption) (*iampb.TestIamPermissionsResponse, error) {
|
|
out := new(iampb.TestIamPermissionsResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/TestIamPermissions", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) UpdateBucket(ctx context.Context, in *UpdateBucketRequest, opts ...grpc.CallOption) (*Bucket, error) {
|
|
out := new(Bucket)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/UpdateBucket", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) DeleteNotificationConfig(ctx context.Context, in *DeleteNotificationConfigRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
|
|
out := new(emptypb.Empty)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/DeleteNotificationConfig", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) GetNotificationConfig(ctx context.Context, in *GetNotificationConfigRequest, opts ...grpc.CallOption) (*NotificationConfig, error) {
|
|
out := new(NotificationConfig)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/GetNotificationConfig", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) CreateNotificationConfig(ctx context.Context, in *CreateNotificationConfigRequest, opts ...grpc.CallOption) (*NotificationConfig, error) {
|
|
out := new(NotificationConfig)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/CreateNotificationConfig", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) ListNotificationConfigs(ctx context.Context, in *ListNotificationConfigsRequest, opts ...grpc.CallOption) (*ListNotificationConfigsResponse, error) {
|
|
out := new(ListNotificationConfigsResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/ListNotificationConfigs", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) ComposeObject(ctx context.Context, in *ComposeObjectRequest, opts ...grpc.CallOption) (*Object, error) {
|
|
out := new(Object)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/ComposeObject", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) DeleteObject(ctx context.Context, in *DeleteObjectRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
|
|
out := new(emptypb.Empty)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/DeleteObject", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) RestoreObject(ctx context.Context, in *RestoreObjectRequest, opts ...grpc.CallOption) (*Object, error) {
|
|
out := new(Object)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/RestoreObject", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) CancelResumableWrite(ctx context.Context, in *CancelResumableWriteRequest, opts ...grpc.CallOption) (*CancelResumableWriteResponse, error) {
|
|
out := new(CancelResumableWriteResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/CancelResumableWrite", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) GetObject(ctx context.Context, in *GetObjectRequest, opts ...grpc.CallOption) (*Object, error) {
|
|
out := new(Object)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/GetObject", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) ReadObject(ctx context.Context, in *ReadObjectRequest, opts ...grpc.CallOption) (Storage_ReadObjectClient, error) {
|
|
stream, err := c.cc.NewStream(ctx, &_Storage_serviceDesc.Streams[0], "/google.storage.v2.Storage/ReadObject", opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
x := &storageReadObjectClient{stream}
|
|
if err := x.ClientStream.SendMsg(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if err := x.ClientStream.CloseSend(); err != nil {
|
|
return nil, err
|
|
}
|
|
return x, nil
|
|
}
|
|
|
|
type Storage_ReadObjectClient interface {
|
|
Recv() (*ReadObjectResponse, error)
|
|
grpc.ClientStream
|
|
}
|
|
|
|
type storageReadObjectClient struct {
|
|
grpc.ClientStream
|
|
}
|
|
|
|
func (x *storageReadObjectClient) Recv() (*ReadObjectResponse, error) {
|
|
m := new(ReadObjectResponse)
|
|
if err := x.ClientStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func (c *storageClient) UpdateObject(ctx context.Context, in *UpdateObjectRequest, opts ...grpc.CallOption) (*Object, error) {
|
|
out := new(Object)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/UpdateObject", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) WriteObject(ctx context.Context, opts ...grpc.CallOption) (Storage_WriteObjectClient, error) {
|
|
stream, err := c.cc.NewStream(ctx, &_Storage_serviceDesc.Streams[1], "/google.storage.v2.Storage/WriteObject", opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
x := &storageWriteObjectClient{stream}
|
|
return x, nil
|
|
}
|
|
|
|
type Storage_WriteObjectClient interface {
|
|
Send(*WriteObjectRequest) error
|
|
CloseAndRecv() (*WriteObjectResponse, error)
|
|
grpc.ClientStream
|
|
}
|
|
|
|
type storageWriteObjectClient struct {
|
|
grpc.ClientStream
|
|
}
|
|
|
|
func (x *storageWriteObjectClient) Send(m *WriteObjectRequest) error {
|
|
return x.ClientStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *storageWriteObjectClient) CloseAndRecv() (*WriteObjectResponse, error) {
|
|
if err := x.ClientStream.CloseSend(); err != nil {
|
|
return nil, err
|
|
}
|
|
m := new(WriteObjectResponse)
|
|
if err := x.ClientStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func (c *storageClient) BidiWriteObject(ctx context.Context, opts ...grpc.CallOption) (Storage_BidiWriteObjectClient, error) {
|
|
stream, err := c.cc.NewStream(ctx, &_Storage_serviceDesc.Streams[2], "/google.storage.v2.Storage/BidiWriteObject", opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
x := &storageBidiWriteObjectClient{stream}
|
|
return x, nil
|
|
}
|
|
|
|
type Storage_BidiWriteObjectClient interface {
|
|
Send(*BidiWriteObjectRequest) error
|
|
Recv() (*BidiWriteObjectResponse, error)
|
|
grpc.ClientStream
|
|
}
|
|
|
|
type storageBidiWriteObjectClient struct {
|
|
grpc.ClientStream
|
|
}
|
|
|
|
func (x *storageBidiWriteObjectClient) Send(m *BidiWriteObjectRequest) error {
|
|
return x.ClientStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *storageBidiWriteObjectClient) Recv() (*BidiWriteObjectResponse, error) {
|
|
m := new(BidiWriteObjectResponse)
|
|
if err := x.ClientStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func (c *storageClient) ListObjects(ctx context.Context, in *ListObjectsRequest, opts ...grpc.CallOption) (*ListObjectsResponse, error) {
|
|
out := new(ListObjectsResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/ListObjects", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) RewriteObject(ctx context.Context, in *RewriteObjectRequest, opts ...grpc.CallOption) (*RewriteResponse, error) {
|
|
out := new(RewriteResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/RewriteObject", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) StartResumableWrite(ctx context.Context, in *StartResumableWriteRequest, opts ...grpc.CallOption) (*StartResumableWriteResponse, error) {
|
|
out := new(StartResumableWriteResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/StartResumableWrite", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) QueryWriteStatus(ctx context.Context, in *QueryWriteStatusRequest, opts ...grpc.CallOption) (*QueryWriteStatusResponse, error) {
|
|
out := new(QueryWriteStatusResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/QueryWriteStatus", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) GetServiceAccount(ctx context.Context, in *GetServiceAccountRequest, opts ...grpc.CallOption) (*ServiceAccount, error) {
|
|
out := new(ServiceAccount)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/GetServiceAccount", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) CreateHmacKey(ctx context.Context, in *CreateHmacKeyRequest, opts ...grpc.CallOption) (*CreateHmacKeyResponse, error) {
|
|
out := new(CreateHmacKeyResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/CreateHmacKey", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) DeleteHmacKey(ctx context.Context, in *DeleteHmacKeyRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
|
|
out := new(emptypb.Empty)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/DeleteHmacKey", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) GetHmacKey(ctx context.Context, in *GetHmacKeyRequest, opts ...grpc.CallOption) (*HmacKeyMetadata, error) {
|
|
out := new(HmacKeyMetadata)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/GetHmacKey", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) ListHmacKeys(ctx context.Context, in *ListHmacKeysRequest, opts ...grpc.CallOption) (*ListHmacKeysResponse, error) {
|
|
out := new(ListHmacKeysResponse)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/ListHmacKeys", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *storageClient) UpdateHmacKey(ctx context.Context, in *UpdateHmacKeyRequest, opts ...grpc.CallOption) (*HmacKeyMetadata, error) {
|
|
out := new(HmacKeyMetadata)
|
|
err := c.cc.Invoke(ctx, "/google.storage.v2.Storage/UpdateHmacKey", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
// StorageServer is the server API for Storage service.
|
|
type StorageServer interface {
|
|
// Permanently deletes an empty bucket.
|
|
DeleteBucket(context.Context, *DeleteBucketRequest) (*emptypb.Empty, error)
|
|
// Returns metadata for the specified bucket.
|
|
GetBucket(context.Context, *GetBucketRequest) (*Bucket, error)
|
|
// Creates a new bucket.
|
|
CreateBucket(context.Context, *CreateBucketRequest) (*Bucket, error)
|
|
// Retrieves a list of buckets for a given project.
|
|
ListBuckets(context.Context, *ListBucketsRequest) (*ListBucketsResponse, error)
|
|
// Locks retention policy on a bucket.
|
|
LockBucketRetentionPolicy(context.Context, *LockBucketRetentionPolicyRequest) (*Bucket, error)
|
|
// Gets the IAM policy for a specified bucket or object.
|
|
// The `resource` field in the request should be
|
|
// `projects/_/buckets/{bucket}` for a bucket or
|
|
// `projects/_/buckets/{bucket}/objects/{object}` for an object.
|
|
GetIamPolicy(context.Context, *iampb.GetIamPolicyRequest) (*iampb.Policy, error)
|
|
// Updates an IAM policy for the specified bucket or object.
|
|
// The `resource` field in the request should be
|
|
// `projects/_/buckets/{bucket}` for a bucket or
|
|
// `projects/_/buckets/{bucket}/objects/{object}` for an object.
|
|
SetIamPolicy(context.Context, *iampb.SetIamPolicyRequest) (*iampb.Policy, error)
|
|
// Tests a set of permissions on the given bucket or object to see which, if
|
|
// any, are held by the caller.
|
|
// The `resource` field in the request should be
|
|
// `projects/_/buckets/{bucket}` for a bucket or
|
|
// `projects/_/buckets/{bucket}/objects/{object}` for an object.
|
|
TestIamPermissions(context.Context, *iampb.TestIamPermissionsRequest) (*iampb.TestIamPermissionsResponse, error)
|
|
// Updates a bucket. Equivalent to JSON API's storage.buckets.patch method.
|
|
UpdateBucket(context.Context, *UpdateBucketRequest) (*Bucket, error)
|
|
// Permanently deletes a NotificationConfig.
|
|
DeleteNotificationConfig(context.Context, *DeleteNotificationConfigRequest) (*emptypb.Empty, error)
|
|
// View a NotificationConfig.
|
|
GetNotificationConfig(context.Context, *GetNotificationConfigRequest) (*NotificationConfig, error)
|
|
// Creates a NotificationConfig for a given bucket.
|
|
// These NotificationConfigs, when triggered, publish messages to the
|
|
// specified Pub/Sub topics. See
|
|
// https://cloud.google.com/storage/docs/pubsub-notifications.
|
|
CreateNotificationConfig(context.Context, *CreateNotificationConfigRequest) (*NotificationConfig, error)
|
|
// Retrieves a list of NotificationConfigs for a given bucket.
|
|
ListNotificationConfigs(context.Context, *ListNotificationConfigsRequest) (*ListNotificationConfigsResponse, error)
|
|
// Concatenates a list of existing objects into a new object in the same
|
|
// bucket.
|
|
ComposeObject(context.Context, *ComposeObjectRequest) (*Object, error)
|
|
// Deletes an object and its metadata.
|
|
//
|
|
// Deletions are normally permanent when versioning is disabled or whenever
|
|
// the generation parameter is used. However, if soft delete is enabled for
|
|
// the bucket, deleted objects can be restored using RestoreObject until the
|
|
// soft delete retention period has passed.
|
|
DeleteObject(context.Context, *DeleteObjectRequest) (*emptypb.Empty, error)
|
|
// Restores a soft-deleted object.
|
|
RestoreObject(context.Context, *RestoreObjectRequest) (*Object, error)
|
|
// Cancels an in-progress resumable upload.
|
|
//
|
|
// Any attempts to write to the resumable upload after cancelling the upload
|
|
// will fail.
|
|
//
|
|
// The behavior for currently in progress write operations is not guaranteed -
|
|
// they could either complete before the cancellation or fail if the
|
|
// cancellation completes first.
|
|
CancelResumableWrite(context.Context, *CancelResumableWriteRequest) (*CancelResumableWriteResponse, error)
|
|
// Retrieves an object's metadata.
|
|
GetObject(context.Context, *GetObjectRequest) (*Object, error)
|
|
// Reads an object's data.
|
|
ReadObject(*ReadObjectRequest, Storage_ReadObjectServer) error
|
|
// Updates an object's metadata.
|
|
// Equivalent to JSON API's storage.objects.patch.
|
|
UpdateObject(context.Context, *UpdateObjectRequest) (*Object, error)
|
|
// Stores a new object and metadata.
|
|
//
|
|
// An object can be written either in a single message stream or in a
|
|
// resumable sequence of message streams. To write using a single stream,
|
|
// the client should include in the first message of the stream an
|
|
// `WriteObjectSpec` describing the destination bucket, object, and any
|
|
// preconditions. Additionally, the final message must set 'finish_write' to
|
|
// true, or else it is an error.
|
|
//
|
|
// For a resumable write, the client should instead call
|
|
// `StartResumableWrite()`, populating a `WriteObjectSpec` into that request.
|
|
// They should then attach the returned `upload_id` to the first message of
|
|
// each following call to `WriteObject`. If the stream is closed before
|
|
// finishing the upload (either explicitly by the client or due to a network
|
|
// error or an error response from the server), the client should do as
|
|
// follows:
|
|
// - Check the result Status of the stream, to determine if writing can be
|
|
// resumed on this stream or must be restarted from scratch (by calling
|
|
// `StartResumableWrite()`). The resumable errors are DEADLINE_EXCEEDED,
|
|
// INTERNAL, and UNAVAILABLE. For each case, the client should use binary
|
|
// exponential backoff before retrying. Additionally, writes can be
|
|
// resumed after RESOURCE_EXHAUSTED errors, but only after taking
|
|
// appropriate measures, which may include reducing aggregate send rate
|
|
// across clients and/or requesting a quota increase for your project.
|
|
// - If the call to `WriteObject` returns `ABORTED`, that indicates
|
|
// concurrent attempts to update the resumable write, caused either by
|
|
// multiple racing clients or by a single client where the previous
|
|
// request was timed out on the client side but nonetheless reached the
|
|
// server. In this case the client should take steps to prevent further
|
|
// concurrent writes (e.g., increase the timeouts, stop using more than
|
|
// one process to perform the upload, etc.), and then should follow the
|
|
// steps below for resuming the upload.
|
|
// - For resumable errors, the client should call `QueryWriteStatus()` and
|
|
// then continue writing from the returned `persisted_size`. This may be
|
|
// less than the amount of data the client previously sent. Note also that
|
|
// it is acceptable to send data starting at an offset earlier than the
|
|
// returned `persisted_size`; in this case, the service will skip data at
|
|
// offsets that were already persisted (without checking that it matches
|
|
// the previously written data), and write only the data starting from the
|
|
// persisted offset. Even though the data isn't written, it may still
|
|
// incur a performance cost over resuming at the correct write offset.
|
|
// This behavior can make client-side handling simpler in some cases.
|
|
// - Clients must only send data that is a multiple of 256 KiB per message,
|
|
// unless the object is being finished with `finish_write` set to `true`.
|
|
//
|
|
// The service will not view the object as complete until the client has
|
|
// sent a `WriteObjectRequest` with `finish_write` set to `true`. Sending any
|
|
// requests on a stream after sending a request with `finish_write` set to
|
|
// `true` will cause an error. The client **should** check the response it
|
|
// receives to determine how much data the service was able to commit and
|
|
// whether the service views the object as complete.
|
|
//
|
|
// Attempting to resume an already finalized object will result in an OK
|
|
// status, with a WriteObjectResponse containing the finalized object's
|
|
// metadata.
|
|
//
|
|
// Alternatively, the BidiWriteObject operation may be used to write an
|
|
// object with controls over flushing and the ability to fetch the ability to
|
|
// determine the current persisted size.
|
|
WriteObject(Storage_WriteObjectServer) error
|
|
// Stores a new object and metadata.
|
|
//
|
|
// This is similar to the WriteObject call with the added support for
|
|
// manual flushing of persisted state, and the ability to determine current
|
|
// persisted size without closing the stream.
|
|
//
|
|
// The client may specify one or both of the `state_lookup` and `flush` fields
|
|
// in each BidiWriteObjectRequest. If `flush` is specified, the data written
|
|
// so far will be persisted to storage. If `state_lookup` is specified, the
|
|
// service will respond with a BidiWriteObjectResponse that contains the
|
|
// persisted size. If both `flush` and `state_lookup` are specified, the flush
|
|
// will always occur before a `state_lookup`, so that both may be set in the
|
|
// same request and the returned state will be the state of the object
|
|
// post-flush. When the stream is closed, a BidiWriteObjectResponse will
|
|
// always be sent to the client, regardless of the value of `state_lookup`.
|
|
BidiWriteObject(Storage_BidiWriteObjectServer) error
|
|
// Retrieves a list of objects matching the criteria.
|
|
ListObjects(context.Context, *ListObjectsRequest) (*ListObjectsResponse, error)
|
|
// Rewrites a source object to a destination object. Optionally overrides
|
|
// metadata.
|
|
RewriteObject(context.Context, *RewriteObjectRequest) (*RewriteResponse, error)
|
|
// Starts a resumable write. How long the write operation remains valid, and
|
|
// what happens when the write operation becomes invalid, are
|
|
// service-dependent.
|
|
StartResumableWrite(context.Context, *StartResumableWriteRequest) (*StartResumableWriteResponse, error)
|
|
// Determines the `persisted_size` for an object that is being written, which
|
|
// can then be used as the `write_offset` for the next `Write()` call.
|
|
//
|
|
// If the object does not exist (i.e., the object has been deleted, or the
|
|
// first `Write()` has not yet reached the service), this method returns the
|
|
// error `NOT_FOUND`.
|
|
//
|
|
// The client **may** call `QueryWriteStatus()` at any time to determine how
|
|
// much data has been processed for this object. This is useful if the
|
|
// client is buffering data and needs to know which data can be safely
|
|
// evicted. For any sequence of `QueryWriteStatus()` calls for a given
|
|
// object name, the sequence of returned `persisted_size` values will be
|
|
// non-decreasing.
|
|
QueryWriteStatus(context.Context, *QueryWriteStatusRequest) (*QueryWriteStatusResponse, error)
|
|
// Retrieves the name of a project's Google Cloud Storage service account.
|
|
GetServiceAccount(context.Context, *GetServiceAccountRequest) (*ServiceAccount, error)
|
|
// Creates a new HMAC key for the given service account.
|
|
CreateHmacKey(context.Context, *CreateHmacKeyRequest) (*CreateHmacKeyResponse, error)
|
|
// Deletes a given HMAC key. Key must be in an INACTIVE state.
|
|
DeleteHmacKey(context.Context, *DeleteHmacKeyRequest) (*emptypb.Empty, error)
|
|
// Gets an existing HMAC key metadata for the given id.
|
|
GetHmacKey(context.Context, *GetHmacKeyRequest) (*HmacKeyMetadata, error)
|
|
// Lists HMAC keys under a given project with the additional filters provided.
|
|
ListHmacKeys(context.Context, *ListHmacKeysRequest) (*ListHmacKeysResponse, error)
|
|
// Updates a given HMAC key state between ACTIVE and INACTIVE.
|
|
UpdateHmacKey(context.Context, *UpdateHmacKeyRequest) (*HmacKeyMetadata, error)
|
|
}
|
|
|
|
// UnimplementedStorageServer can be embedded to have forward compatible implementations.
|
|
type UnimplementedStorageServer struct {
|
|
}
|
|
|
|
func (*UnimplementedStorageServer) DeleteBucket(context.Context, *DeleteBucketRequest) (*emptypb.Empty, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method DeleteBucket not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) GetBucket(context.Context, *GetBucketRequest) (*Bucket, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method GetBucket not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) CreateBucket(context.Context, *CreateBucketRequest) (*Bucket, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method CreateBucket not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) ListBuckets(context.Context, *ListBucketsRequest) (*ListBucketsResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ListBuckets not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) LockBucketRetentionPolicy(context.Context, *LockBucketRetentionPolicyRequest) (*Bucket, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method LockBucketRetentionPolicy not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) GetIamPolicy(context.Context, *iampb.GetIamPolicyRequest) (*iampb.Policy, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method GetIamPolicy not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) SetIamPolicy(context.Context, *iampb.SetIamPolicyRequest) (*iampb.Policy, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method SetIamPolicy not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) TestIamPermissions(context.Context, *iampb.TestIamPermissionsRequest) (*iampb.TestIamPermissionsResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method TestIamPermissions not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) UpdateBucket(context.Context, *UpdateBucketRequest) (*Bucket, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method UpdateBucket not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) DeleteNotificationConfig(context.Context, *DeleteNotificationConfigRequest) (*emptypb.Empty, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method DeleteNotificationConfig not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) GetNotificationConfig(context.Context, *GetNotificationConfigRequest) (*NotificationConfig, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method GetNotificationConfig not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) CreateNotificationConfig(context.Context, *CreateNotificationConfigRequest) (*NotificationConfig, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method CreateNotificationConfig not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) ListNotificationConfigs(context.Context, *ListNotificationConfigsRequest) (*ListNotificationConfigsResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ListNotificationConfigs not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) ComposeObject(context.Context, *ComposeObjectRequest) (*Object, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ComposeObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) DeleteObject(context.Context, *DeleteObjectRequest) (*emptypb.Empty, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method DeleteObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) RestoreObject(context.Context, *RestoreObjectRequest) (*Object, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method RestoreObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) CancelResumableWrite(context.Context, *CancelResumableWriteRequest) (*CancelResumableWriteResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method CancelResumableWrite not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) GetObject(context.Context, *GetObjectRequest) (*Object, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method GetObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) ReadObject(*ReadObjectRequest, Storage_ReadObjectServer) error {
|
|
return status.Errorf(codes.Unimplemented, "method ReadObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) UpdateObject(context.Context, *UpdateObjectRequest) (*Object, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method UpdateObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) WriteObject(Storage_WriteObjectServer) error {
|
|
return status.Errorf(codes.Unimplemented, "method WriteObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) BidiWriteObject(Storage_BidiWriteObjectServer) error {
|
|
return status.Errorf(codes.Unimplemented, "method BidiWriteObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) ListObjects(context.Context, *ListObjectsRequest) (*ListObjectsResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ListObjects not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) RewriteObject(context.Context, *RewriteObjectRequest) (*RewriteResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method RewriteObject not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) StartResumableWrite(context.Context, *StartResumableWriteRequest) (*StartResumableWriteResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method StartResumableWrite not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) QueryWriteStatus(context.Context, *QueryWriteStatusRequest) (*QueryWriteStatusResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method QueryWriteStatus not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) GetServiceAccount(context.Context, *GetServiceAccountRequest) (*ServiceAccount, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method GetServiceAccount not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) CreateHmacKey(context.Context, *CreateHmacKeyRequest) (*CreateHmacKeyResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method CreateHmacKey not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) DeleteHmacKey(context.Context, *DeleteHmacKeyRequest) (*emptypb.Empty, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method DeleteHmacKey not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) GetHmacKey(context.Context, *GetHmacKeyRequest) (*HmacKeyMetadata, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method GetHmacKey not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) ListHmacKeys(context.Context, *ListHmacKeysRequest) (*ListHmacKeysResponse, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ListHmacKeys not implemented")
|
|
}
|
|
func (*UnimplementedStorageServer) UpdateHmacKey(context.Context, *UpdateHmacKeyRequest) (*HmacKeyMetadata, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method UpdateHmacKey not implemented")
|
|
}
|
|
|
|
func RegisterStorageServer(s *grpc.Server, srv StorageServer) {
|
|
s.RegisterService(&_Storage_serviceDesc, srv)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).DeleteBucket(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/DeleteBucket",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).DeleteBucket(ctx, req.(*DeleteBucketRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).GetBucket(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/GetBucket",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).GetBucket(ctx, req.(*GetBucketRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_CreateBucket_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(CreateBucketRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).CreateBucket(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/CreateBucket",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).CreateBucket(ctx, req.(*CreateBucketRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).ListBuckets(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/ListBuckets",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).ListBuckets(ctx, req.(*ListBucketsRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_LockBucketRetentionPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(LockBucketRetentionPolicyRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).LockBucketRetentionPolicy(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/LockBucketRetentionPolicy",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).LockBucketRetentionPolicy(ctx, req.(*LockBucketRetentionPolicyRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_GetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(iampb.GetIamPolicyRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).GetIamPolicy(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/GetIamPolicy",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).GetIamPolicy(ctx, req.(*iampb.GetIamPolicyRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_SetIamPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(iampb.SetIamPolicyRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).SetIamPolicy(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/SetIamPolicy",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).SetIamPolicy(ctx, req.(*iampb.SetIamPolicyRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_TestIamPermissions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(iampb.TestIamPermissionsRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).TestIamPermissions(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/TestIamPermissions",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).TestIamPermissions(ctx, req.(*iampb.TestIamPermissionsRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).UpdateBucket(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/UpdateBucket",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).UpdateBucket(ctx, req.(*UpdateBucketRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_DeleteNotificationConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(DeleteNotificationConfigRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).DeleteNotificationConfig(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/DeleteNotificationConfig",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).DeleteNotificationConfig(ctx, req.(*DeleteNotificationConfigRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_GetNotificationConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(GetNotificationConfigRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).GetNotificationConfig(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/GetNotificationConfig",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).GetNotificationConfig(ctx, req.(*GetNotificationConfigRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_CreateNotificationConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(CreateNotificationConfigRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).CreateNotificationConfig(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/CreateNotificationConfig",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).CreateNotificationConfig(ctx, req.(*CreateNotificationConfigRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_ListNotificationConfigs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(ListNotificationConfigsRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).ListNotificationConfigs(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/ListNotificationConfigs",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).ListNotificationConfigs(ctx, req.(*ListNotificationConfigsRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).ComposeObject(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/ComposeObject",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).ComposeObject(ctx, req.(*ComposeObjectRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).DeleteObject(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/DeleteObject",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).DeleteObject(ctx, req.(*DeleteObjectRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_RestoreObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(RestoreObjectRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).RestoreObject(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/RestoreObject",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).RestoreObject(ctx, req.(*RestoreObjectRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_CancelResumableWrite_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(CancelResumableWriteRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).CancelResumableWrite(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/CancelResumableWrite",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).CancelResumableWrite(ctx, req.(*CancelResumableWriteRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).GetObject(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/GetObject",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).GetObject(ctx, req.(*GetObjectRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_ReadObject_Handler(srv interface{}, stream grpc.ServerStream) error {
|
|
m := new(ReadObjectRequest)
|
|
if err := stream.RecvMsg(m); err != nil {
|
|
return err
|
|
}
|
|
return srv.(StorageServer).ReadObject(m, &storageReadObjectServer{stream})
|
|
}
|
|
|
|
type Storage_ReadObjectServer interface {
|
|
Send(*ReadObjectResponse) error
|
|
grpc.ServerStream
|
|
}
|
|
|
|
type storageReadObjectServer struct {
|
|
grpc.ServerStream
|
|
}
|
|
|
|
func (x *storageReadObjectServer) Send(m *ReadObjectResponse) error {
|
|
return x.ServerStream.SendMsg(m)
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).UpdateObject(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/UpdateObject",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).UpdateObject(ctx, req.(*UpdateObjectRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_WriteObject_Handler(srv interface{}, stream grpc.ServerStream) error {
|
|
return srv.(StorageServer).WriteObject(&storageWriteObjectServer{stream})
|
|
}
|
|
|
|
type Storage_WriteObjectServer interface {
|
|
SendAndClose(*WriteObjectResponse) error
|
|
Recv() (*WriteObjectRequest, error)
|
|
grpc.ServerStream
|
|
}
|
|
|
|
type storageWriteObjectServer struct {
|
|
grpc.ServerStream
|
|
}
|
|
|
|
func (x *storageWriteObjectServer) SendAndClose(m *WriteObjectResponse) error {
|
|
return x.ServerStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *storageWriteObjectServer) Recv() (*WriteObjectRequest, error) {
|
|
m := new(WriteObjectRequest)
|
|
if err := x.ServerStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func _Storage_BidiWriteObject_Handler(srv interface{}, stream grpc.ServerStream) error {
|
|
return srv.(StorageServer).BidiWriteObject(&storageBidiWriteObjectServer{stream})
|
|
}
|
|
|
|
type Storage_BidiWriteObjectServer interface {
|
|
Send(*BidiWriteObjectResponse) error
|
|
Recv() (*BidiWriteObjectRequest, error)
|
|
grpc.ServerStream
|
|
}
|
|
|
|
type storageBidiWriteObjectServer struct {
|
|
grpc.ServerStream
|
|
}
|
|
|
|
func (x *storageBidiWriteObjectServer) Send(m *BidiWriteObjectResponse) error {
|
|
return x.ServerStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *storageBidiWriteObjectServer) Recv() (*BidiWriteObjectRequest, error) {
|
|
m := new(BidiWriteObjectRequest)
|
|
if err := x.ServerStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func _Storage_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.(StorageServer).ListObjects(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/ListObjects",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).ListObjects(ctx, req.(*ListObjectsRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_RewriteObject_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(RewriteObjectRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).RewriteObject(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/RewriteObject",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).RewriteObject(ctx, req.(*RewriteObjectRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_StartResumableWrite_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(StartResumableWriteRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).StartResumableWrite(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/StartResumableWrite",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).StartResumableWrite(ctx, req.(*StartResumableWriteRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_QueryWriteStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(QueryWriteStatusRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).QueryWriteStatus(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/QueryWriteStatus",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).QueryWriteStatus(ctx, req.(*QueryWriteStatusRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_GetServiceAccount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(GetServiceAccountRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).GetServiceAccount(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/GetServiceAccount",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).GetServiceAccount(ctx, req.(*GetServiceAccountRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_CreateHmacKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(CreateHmacKeyRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).CreateHmacKey(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/CreateHmacKey",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).CreateHmacKey(ctx, req.(*CreateHmacKeyRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_DeleteHmacKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(DeleteHmacKeyRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).DeleteHmacKey(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/DeleteHmacKey",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).DeleteHmacKey(ctx, req.(*DeleteHmacKeyRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_GetHmacKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(GetHmacKeyRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).GetHmacKey(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/GetHmacKey",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).GetHmacKey(ctx, req.(*GetHmacKeyRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_ListHmacKeys_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(ListHmacKeysRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).ListHmacKeys(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/ListHmacKeys",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).ListHmacKeys(ctx, req.(*ListHmacKeysRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Storage_UpdateHmacKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(UpdateHmacKeyRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(StorageServer).UpdateHmacKey(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/google.storage.v2.Storage/UpdateHmacKey",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(StorageServer).UpdateHmacKey(ctx, req.(*UpdateHmacKeyRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
var _Storage_serviceDesc = grpc.ServiceDesc{
|
|
ServiceName: "google.storage.v2.Storage",
|
|
HandlerType: (*StorageServer)(nil),
|
|
Methods: []grpc.MethodDesc{
|
|
{
|
|
MethodName: "DeleteBucket",
|
|
Handler: _Storage_DeleteBucket_Handler,
|
|
},
|
|
{
|
|
MethodName: "GetBucket",
|
|
Handler: _Storage_GetBucket_Handler,
|
|
},
|
|
{
|
|
MethodName: "CreateBucket",
|
|
Handler: _Storage_CreateBucket_Handler,
|
|
},
|
|
{
|
|
MethodName: "ListBuckets",
|
|
Handler: _Storage_ListBuckets_Handler,
|
|
},
|
|
{
|
|
MethodName: "LockBucketRetentionPolicy",
|
|
Handler: _Storage_LockBucketRetentionPolicy_Handler,
|
|
},
|
|
{
|
|
MethodName: "GetIamPolicy",
|
|
Handler: _Storage_GetIamPolicy_Handler,
|
|
},
|
|
{
|
|
MethodName: "SetIamPolicy",
|
|
Handler: _Storage_SetIamPolicy_Handler,
|
|
},
|
|
{
|
|
MethodName: "TestIamPermissions",
|
|
Handler: _Storage_TestIamPermissions_Handler,
|
|
},
|
|
{
|
|
MethodName: "UpdateBucket",
|
|
Handler: _Storage_UpdateBucket_Handler,
|
|
},
|
|
{
|
|
MethodName: "DeleteNotificationConfig",
|
|
Handler: _Storage_DeleteNotificationConfig_Handler,
|
|
},
|
|
{
|
|
MethodName: "GetNotificationConfig",
|
|
Handler: _Storage_GetNotificationConfig_Handler,
|
|
},
|
|
{
|
|
MethodName: "CreateNotificationConfig",
|
|
Handler: _Storage_CreateNotificationConfig_Handler,
|
|
},
|
|
{
|
|
MethodName: "ListNotificationConfigs",
|
|
Handler: _Storage_ListNotificationConfigs_Handler,
|
|
},
|
|
{
|
|
MethodName: "ComposeObject",
|
|
Handler: _Storage_ComposeObject_Handler,
|
|
},
|
|
{
|
|
MethodName: "DeleteObject",
|
|
Handler: _Storage_DeleteObject_Handler,
|
|
},
|
|
{
|
|
MethodName: "RestoreObject",
|
|
Handler: _Storage_RestoreObject_Handler,
|
|
},
|
|
{
|
|
MethodName: "CancelResumableWrite",
|
|
Handler: _Storage_CancelResumableWrite_Handler,
|
|
},
|
|
{
|
|
MethodName: "GetObject",
|
|
Handler: _Storage_GetObject_Handler,
|
|
},
|
|
{
|
|
MethodName: "UpdateObject",
|
|
Handler: _Storage_UpdateObject_Handler,
|
|
},
|
|
{
|
|
MethodName: "ListObjects",
|
|
Handler: _Storage_ListObjects_Handler,
|
|
},
|
|
{
|
|
MethodName: "RewriteObject",
|
|
Handler: _Storage_RewriteObject_Handler,
|
|
},
|
|
{
|
|
MethodName: "StartResumableWrite",
|
|
Handler: _Storage_StartResumableWrite_Handler,
|
|
},
|
|
{
|
|
MethodName: "QueryWriteStatus",
|
|
Handler: _Storage_QueryWriteStatus_Handler,
|
|
},
|
|
{
|
|
MethodName: "GetServiceAccount",
|
|
Handler: _Storage_GetServiceAccount_Handler,
|
|
},
|
|
{
|
|
MethodName: "CreateHmacKey",
|
|
Handler: _Storage_CreateHmacKey_Handler,
|
|
},
|
|
{
|
|
MethodName: "DeleteHmacKey",
|
|
Handler: _Storage_DeleteHmacKey_Handler,
|
|
},
|
|
{
|
|
MethodName: "GetHmacKey",
|
|
Handler: _Storage_GetHmacKey_Handler,
|
|
},
|
|
{
|
|
MethodName: "ListHmacKeys",
|
|
Handler: _Storage_ListHmacKeys_Handler,
|
|
},
|
|
{
|
|
MethodName: "UpdateHmacKey",
|
|
Handler: _Storage_UpdateHmacKey_Handler,
|
|
},
|
|
},
|
|
Streams: []grpc.StreamDesc{
|
|
{
|
|
StreamName: "ReadObject",
|
|
Handler: _Storage_ReadObject_Handler,
|
|
ServerStreams: true,
|
|
},
|
|
{
|
|
StreamName: "WriteObject",
|
|
Handler: _Storage_WriteObject_Handler,
|
|
ClientStreams: true,
|
|
},
|
|
{
|
|
StreamName: "BidiWriteObject",
|
|
Handler: _Storage_BidiWriteObject_Handler,
|
|
ServerStreams: true,
|
|
ClientStreams: true,
|
|
},
|
|
},
|
|
Metadata: "google/storage/v2/storage.proto",
|
|
}
|