You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							570 lines
						
					
					
						
							18 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							570 lines
						
					
					
						
							18 KiB
						
					
					
				
								// Code generated by protoc-gen-go. DO NOT EDIT.
							 | 
						|
								// versions:
							 | 
						|
								// 	protoc-gen-go v1.36.6
							 | 
						|
								// 	protoc        v5.29.3
							 | 
						|
								// source: s3.proto
							 | 
						|
								
							 | 
						|
								package s3_pb
							 | 
						|
								
							 | 
						|
								import (
							 | 
						|
									protoreflect "google.golang.org/protobuf/reflect/protoreflect"
							 | 
						|
									protoimpl "google.golang.org/protobuf/runtime/protoimpl"
							 | 
						|
									reflect "reflect"
							 | 
						|
									sync "sync"
							 | 
						|
									unsafe "unsafe"
							 | 
						|
								)
							 | 
						|
								
							 | 
						|
								const (
							 | 
						|
									// Verify that this generated code is sufficiently up-to-date.
							 | 
						|
									_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
							 | 
						|
									// Verify that runtime/protoimpl is sufficiently up-to-date.
							 | 
						|
									_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
							 | 
						|
								)
							 | 
						|
								
							 | 
						|
								type S3ConfigureRequest struct {
							 | 
						|
									state                      protoimpl.MessageState `protogen:"open.v1"`
							 | 
						|
									S3ConfigurationFileContent []byte                 `protobuf:"bytes,1,opt,name=s3_configuration_file_content,json=s3ConfigurationFileContent,proto3" json:"s3_configuration_file_content,omitempty"`
							 | 
						|
									unknownFields              protoimpl.UnknownFields
							 | 
						|
									sizeCache                  protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3ConfigureRequest) Reset() {
							 | 
						|
									*x = S3ConfigureRequest{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[0]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3ConfigureRequest) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*S3ConfigureRequest) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *S3ConfigureRequest) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[0]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use S3ConfigureRequest.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*S3ConfigureRequest) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{0}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3ConfigureRequest) GetS3ConfigurationFileContent() []byte {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.S3ConfigurationFileContent
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								type S3ConfigureResponse struct {
							 | 
						|
									state         protoimpl.MessageState `protogen:"open.v1"`
							 | 
						|
									unknownFields protoimpl.UnknownFields
							 | 
						|
									sizeCache     protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3ConfigureResponse) Reset() {
							 | 
						|
									*x = S3ConfigureResponse{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[1]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3ConfigureResponse) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*S3ConfigureResponse) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *S3ConfigureResponse) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[1]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use S3ConfigureResponse.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*S3ConfigureResponse) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{1}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								type S3CircuitBreakerConfig struct {
							 | 
						|
									state         protoimpl.MessageState              `protogen:"open.v1"`
							 | 
						|
									Global        *S3CircuitBreakerOptions            `protobuf:"bytes,1,opt,name=global,proto3" json:"global,omitempty"`
							 | 
						|
									Buckets       map[string]*S3CircuitBreakerOptions `protobuf:"bytes,2,rep,name=buckets,proto3" json:"buckets,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
							 | 
						|
									unknownFields protoimpl.UnknownFields
							 | 
						|
									sizeCache     protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerConfig) Reset() {
							 | 
						|
									*x = S3CircuitBreakerConfig{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[2]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerConfig) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*S3CircuitBreakerConfig) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerConfig) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[2]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use S3CircuitBreakerConfig.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*S3CircuitBreakerConfig) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{2}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerConfig) GetGlobal() *S3CircuitBreakerOptions {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Global
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerConfig) GetBuckets() map[string]*S3CircuitBreakerOptions {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Buckets
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								type S3CircuitBreakerOptions struct {
							 | 
						|
									state         protoimpl.MessageState `protogen:"open.v1"`
							 | 
						|
									Enabled       bool                   `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
							 | 
						|
									Actions       map[string]int64       `protobuf:"bytes,2,rep,name=actions,proto3" json:"actions,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"varint,2,opt,name=value"`
							 | 
						|
									unknownFields protoimpl.UnknownFields
							 | 
						|
									sizeCache     protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerOptions) Reset() {
							 | 
						|
									*x = S3CircuitBreakerOptions{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[3]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerOptions) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*S3CircuitBreakerOptions) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerOptions) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[3]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use S3CircuitBreakerOptions.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*S3CircuitBreakerOptions) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{3}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerOptions) GetEnabled() bool {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Enabled
							 | 
						|
									}
							 | 
						|
									return false
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *S3CircuitBreakerOptions) GetActions() map[string]int64 {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Actions
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								type CORSRule struct {
							 | 
						|
									state          protoimpl.MessageState `protogen:"open.v1"`
							 | 
						|
									AllowedHeaders []string               `protobuf:"bytes,1,rep,name=allowed_headers,json=allowedHeaders,proto3" json:"allowed_headers,omitempty"`
							 | 
						|
									AllowedMethods []string               `protobuf:"bytes,2,rep,name=allowed_methods,json=allowedMethods,proto3" json:"allowed_methods,omitempty"`
							 | 
						|
									AllowedOrigins []string               `protobuf:"bytes,3,rep,name=allowed_origins,json=allowedOrigins,proto3" json:"allowed_origins,omitempty"`
							 | 
						|
									ExposeHeaders  []string               `protobuf:"bytes,4,rep,name=expose_headers,json=exposeHeaders,proto3" json:"expose_headers,omitempty"`
							 | 
						|
									MaxAgeSeconds  int32                  `protobuf:"varint,5,opt,name=max_age_seconds,json=maxAgeSeconds,proto3" json:"max_age_seconds,omitempty"`
							 | 
						|
									Id             string                 `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"`
							 | 
						|
									unknownFields  protoimpl.UnknownFields
							 | 
						|
									sizeCache      protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) Reset() {
							 | 
						|
									*x = CORSRule{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[4]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*CORSRule) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[4]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use CORSRule.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*CORSRule) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{4}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) GetAllowedHeaders() []string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.AllowedHeaders
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) GetAllowedMethods() []string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.AllowedMethods
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) GetAllowedOrigins() []string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.AllowedOrigins
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) GetExposeHeaders() []string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.ExposeHeaders
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) GetMaxAgeSeconds() int32 {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.MaxAgeSeconds
							 | 
						|
									}
							 | 
						|
									return 0
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSRule) GetId() string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Id
							 | 
						|
									}
							 | 
						|
									return ""
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								type CORSConfiguration struct {
							 | 
						|
									state         protoimpl.MessageState `protogen:"open.v1"`
							 | 
						|
									CorsRules     []*CORSRule            `protobuf:"bytes,1,rep,name=cors_rules,json=corsRules,proto3" json:"cors_rules,omitempty"`
							 | 
						|
									unknownFields protoimpl.UnknownFields
							 | 
						|
									sizeCache     protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSConfiguration) Reset() {
							 | 
						|
									*x = CORSConfiguration{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[5]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSConfiguration) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*CORSConfiguration) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *CORSConfiguration) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[5]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use CORSConfiguration.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*CORSConfiguration) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{5}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *CORSConfiguration) GetCorsRules() []*CORSRule {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.CorsRules
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								type BucketMetadata struct {
							 | 
						|
									state         protoimpl.MessageState   `protogen:"open.v1"`
							 | 
						|
									Tags          map[string]string        `protobuf:"bytes,1,rep,name=tags,proto3" json:"tags,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
							 | 
						|
									Cors          *CORSConfiguration       `protobuf:"bytes,2,opt,name=cors,proto3" json:"cors,omitempty"`
							 | 
						|
									Encryption    *EncryptionConfiguration `protobuf:"bytes,3,opt,name=encryption,proto3" json:"encryption,omitempty"`
							 | 
						|
									unknownFields protoimpl.UnknownFields
							 | 
						|
									sizeCache     protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *BucketMetadata) Reset() {
							 | 
						|
									*x = BucketMetadata{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[6]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *BucketMetadata) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*BucketMetadata) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *BucketMetadata) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[6]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use BucketMetadata.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*BucketMetadata) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{6}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *BucketMetadata) GetTags() map[string]string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Tags
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *BucketMetadata) GetCors() *CORSConfiguration {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Cors
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *BucketMetadata) GetEncryption() *EncryptionConfiguration {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.Encryption
							 | 
						|
									}
							 | 
						|
									return nil
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								type EncryptionConfiguration struct {
							 | 
						|
									state            protoimpl.MessageState `protogen:"open.v1"`
							 | 
						|
									SseAlgorithm     string                 `protobuf:"bytes,1,opt,name=sse_algorithm,json=sseAlgorithm,proto3" json:"sse_algorithm,omitempty"`                // "AES256" or "aws:kms"
							 | 
						|
									KmsKeyId         string                 `protobuf:"bytes,2,opt,name=kms_key_id,json=kmsKeyId,proto3" json:"kms_key_id,omitempty"`                          // KMS key ID (optional for aws:kms)
							 | 
						|
									BucketKeyEnabled bool                   `protobuf:"varint,3,opt,name=bucket_key_enabled,json=bucketKeyEnabled,proto3" json:"bucket_key_enabled,omitempty"` // S3 Bucket Keys optimization
							 | 
						|
									unknownFields    protoimpl.UnknownFields
							 | 
						|
									sizeCache        protoimpl.SizeCache
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *EncryptionConfiguration) Reset() {
							 | 
						|
									*x = EncryptionConfiguration{}
							 | 
						|
									mi := &file_s3_proto_msgTypes[7]
							 | 
						|
									ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
									ms.StoreMessageInfo(mi)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *EncryptionConfiguration) String() string {
							 | 
						|
									return protoimpl.X.MessageStringOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (*EncryptionConfiguration) ProtoMessage() {}
							 | 
						|
								
							 | 
						|
								func (x *EncryptionConfiguration) ProtoReflect() protoreflect.Message {
							 | 
						|
									mi := &file_s3_proto_msgTypes[7]
							 | 
						|
									if x != nil {
							 | 
						|
										ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
							 | 
						|
										if ms.LoadMessageInfo() == nil {
							 | 
						|
											ms.StoreMessageInfo(mi)
							 | 
						|
										}
							 | 
						|
										return ms
							 | 
						|
									}
							 | 
						|
									return mi.MessageOf(x)
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								// Deprecated: Use EncryptionConfiguration.ProtoReflect.Descriptor instead.
							 | 
						|
								func (*EncryptionConfiguration) Descriptor() ([]byte, []int) {
							 | 
						|
									return file_s3_proto_rawDescGZIP(), []int{7}
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *EncryptionConfiguration) GetSseAlgorithm() string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.SseAlgorithm
							 | 
						|
									}
							 | 
						|
									return ""
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *EncryptionConfiguration) GetKmsKeyId() string {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.KmsKeyId
							 | 
						|
									}
							 | 
						|
									return ""
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func (x *EncryptionConfiguration) GetBucketKeyEnabled() bool {
							 | 
						|
									if x != nil {
							 | 
						|
										return x.BucketKeyEnabled
							 | 
						|
									}
							 | 
						|
									return false
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								var File_s3_proto protoreflect.FileDescriptor
							 | 
						|
								
							 | 
						|
								const file_s3_proto_rawDesc = "" +
							 | 
						|
									"\n" +
							 | 
						|
									"\bs3.proto\x12\fmessaging_pb\"W\n" +
							 | 
						|
									"\x12S3ConfigureRequest\x12A\n" +
							 | 
						|
									"\x1ds3_configuration_file_content\x18\x01 \x01(\fR\x1as3ConfigurationFileContent\"\x15\n" +
							 | 
						|
									"\x13S3ConfigureResponse\"\x87\x02\n" +
							 | 
						|
									"\x16S3CircuitBreakerConfig\x12=\n" +
							 | 
						|
									"\x06global\x18\x01 \x01(\v2%.messaging_pb.S3CircuitBreakerOptionsR\x06global\x12K\n" +
							 | 
						|
									"\abuckets\x18\x02 \x03(\v21.messaging_pb.S3CircuitBreakerConfig.BucketsEntryR\abuckets\x1aa\n" +
							 | 
						|
									"\fBucketsEntry\x12\x10\n" +
							 | 
						|
									"\x03key\x18\x01 \x01(\tR\x03key\x12;\n" +
							 | 
						|
									"\x05value\x18\x02 \x01(\v2%.messaging_pb.S3CircuitBreakerOptionsR\x05value:\x028\x01\"\xbd\x01\n" +
							 | 
						|
									"\x17S3CircuitBreakerOptions\x12\x18\n" +
							 | 
						|
									"\aenabled\x18\x01 \x01(\bR\aenabled\x12L\n" +
							 | 
						|
									"\aactions\x18\x02 \x03(\v22.messaging_pb.S3CircuitBreakerOptions.ActionsEntryR\aactions\x1a:\n" +
							 | 
						|
									"\fActionsEntry\x12\x10\n" +
							 | 
						|
									"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
							 | 
						|
									"\x05value\x18\x02 \x01(\x03R\x05value:\x028\x01\"\xe4\x01\n" +
							 | 
						|
									"\bCORSRule\x12'\n" +
							 | 
						|
									"\x0fallowed_headers\x18\x01 \x03(\tR\x0eallowedHeaders\x12'\n" +
							 | 
						|
									"\x0fallowed_methods\x18\x02 \x03(\tR\x0eallowedMethods\x12'\n" +
							 | 
						|
									"\x0fallowed_origins\x18\x03 \x03(\tR\x0eallowedOrigins\x12%\n" +
							 | 
						|
									"\x0eexpose_headers\x18\x04 \x03(\tR\rexposeHeaders\x12&\n" +
							 | 
						|
									"\x0fmax_age_seconds\x18\x05 \x01(\x05R\rmaxAgeSeconds\x12\x0e\n" +
							 | 
						|
									"\x02id\x18\x06 \x01(\tR\x02id\"J\n" +
							 | 
						|
									"\x11CORSConfiguration\x125\n" +
							 | 
						|
									"\n" +
							 | 
						|
									"cors_rules\x18\x01 \x03(\v2\x16.messaging_pb.CORSRuleR\tcorsRules\"\x81\x02\n" +
							 | 
						|
									"\x0eBucketMetadata\x12:\n" +
							 | 
						|
									"\x04tags\x18\x01 \x03(\v2&.messaging_pb.BucketMetadata.TagsEntryR\x04tags\x123\n" +
							 | 
						|
									"\x04cors\x18\x02 \x01(\v2\x1f.messaging_pb.CORSConfigurationR\x04cors\x12E\n" +
							 | 
						|
									"\n" +
							 | 
						|
									"encryption\x18\x03 \x01(\v2%.messaging_pb.EncryptionConfigurationR\n" +
							 | 
						|
									"encryption\x1a7\n" +
							 | 
						|
									"\tTagsEntry\x12\x10\n" +
							 | 
						|
									"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
							 | 
						|
									"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\x8a\x01\n" +
							 | 
						|
									"\x17EncryptionConfiguration\x12#\n" +
							 | 
						|
									"\rsse_algorithm\x18\x01 \x01(\tR\fsseAlgorithm\x12\x1c\n" +
							 | 
						|
									"\n" +
							 | 
						|
									"kms_key_id\x18\x02 \x01(\tR\bkmsKeyId\x12,\n" +
							 | 
						|
									"\x12bucket_key_enabled\x18\x03 \x01(\bR\x10bucketKeyEnabled2_\n" +
							 | 
						|
									"\tSeaweedS3\x12R\n" +
							 | 
						|
									"\tConfigure\x12 .messaging_pb.S3ConfigureRequest\x1a!.messaging_pb.S3ConfigureResponse\"\x00BI\n" +
							 | 
						|
									"\x10seaweedfs.clientB\aS3ProtoZ,github.com/seaweedfs/seaweedfs/weed/pb/s3_pbb\x06proto3"
							 | 
						|
								
							 | 
						|
								var (
							 | 
						|
									file_s3_proto_rawDescOnce sync.Once
							 | 
						|
									file_s3_proto_rawDescData []byte
							 | 
						|
								)
							 | 
						|
								
							 | 
						|
								func file_s3_proto_rawDescGZIP() []byte {
							 | 
						|
									file_s3_proto_rawDescOnce.Do(func() {
							 | 
						|
										file_s3_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_s3_proto_rawDesc), len(file_s3_proto_rawDesc)))
							 | 
						|
									})
							 | 
						|
									return file_s3_proto_rawDescData
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								var file_s3_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
							 | 
						|
								var file_s3_proto_goTypes = []any{
							 | 
						|
									(*S3ConfigureRequest)(nil),      // 0: messaging_pb.S3ConfigureRequest
							 | 
						|
									(*S3ConfigureResponse)(nil),     // 1: messaging_pb.S3ConfigureResponse
							 | 
						|
									(*S3CircuitBreakerConfig)(nil),  // 2: messaging_pb.S3CircuitBreakerConfig
							 | 
						|
									(*S3CircuitBreakerOptions)(nil), // 3: messaging_pb.S3CircuitBreakerOptions
							 | 
						|
									(*CORSRule)(nil),                // 4: messaging_pb.CORSRule
							 | 
						|
									(*CORSConfiguration)(nil),       // 5: messaging_pb.CORSConfiguration
							 | 
						|
									(*BucketMetadata)(nil),          // 6: messaging_pb.BucketMetadata
							 | 
						|
									(*EncryptionConfiguration)(nil), // 7: messaging_pb.EncryptionConfiguration
							 | 
						|
									nil,                             // 8: messaging_pb.S3CircuitBreakerConfig.BucketsEntry
							 | 
						|
									nil,                             // 9: messaging_pb.S3CircuitBreakerOptions.ActionsEntry
							 | 
						|
									nil,                             // 10: messaging_pb.BucketMetadata.TagsEntry
							 | 
						|
								}
							 | 
						|
								var file_s3_proto_depIdxs = []int32{
							 | 
						|
									3,  // 0: messaging_pb.S3CircuitBreakerConfig.global:type_name -> messaging_pb.S3CircuitBreakerOptions
							 | 
						|
									8,  // 1: messaging_pb.S3CircuitBreakerConfig.buckets:type_name -> messaging_pb.S3CircuitBreakerConfig.BucketsEntry
							 | 
						|
									9,  // 2: messaging_pb.S3CircuitBreakerOptions.actions:type_name -> messaging_pb.S3CircuitBreakerOptions.ActionsEntry
							 | 
						|
									4,  // 3: messaging_pb.CORSConfiguration.cors_rules:type_name -> messaging_pb.CORSRule
							 | 
						|
									10, // 4: messaging_pb.BucketMetadata.tags:type_name -> messaging_pb.BucketMetadata.TagsEntry
							 | 
						|
									5,  // 5: messaging_pb.BucketMetadata.cors:type_name -> messaging_pb.CORSConfiguration
							 | 
						|
									7,  // 6: messaging_pb.BucketMetadata.encryption:type_name -> messaging_pb.EncryptionConfiguration
							 | 
						|
									3,  // 7: messaging_pb.S3CircuitBreakerConfig.BucketsEntry.value:type_name -> messaging_pb.S3CircuitBreakerOptions
							 | 
						|
									0,  // 8: messaging_pb.SeaweedS3.Configure:input_type -> messaging_pb.S3ConfigureRequest
							 | 
						|
									1,  // 9: messaging_pb.SeaweedS3.Configure:output_type -> messaging_pb.S3ConfigureResponse
							 | 
						|
									9,  // [9:10] is the sub-list for method output_type
							 | 
						|
									8,  // [8:9] is the sub-list for method input_type
							 | 
						|
									8,  // [8:8] is the sub-list for extension type_name
							 | 
						|
									8,  // [8:8] is the sub-list for extension extendee
							 | 
						|
									0,  // [0:8] is the sub-list for field type_name
							 | 
						|
								}
							 | 
						|
								
							 | 
						|
								func init() { file_s3_proto_init() }
							 | 
						|
								func file_s3_proto_init() {
							 | 
						|
									if File_s3_proto != nil {
							 | 
						|
										return
							 | 
						|
									}
							 | 
						|
									type x struct{}
							 | 
						|
									out := protoimpl.TypeBuilder{
							 | 
						|
										File: protoimpl.DescBuilder{
							 | 
						|
											GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
							 | 
						|
											RawDescriptor: unsafe.Slice(unsafe.StringData(file_s3_proto_rawDesc), len(file_s3_proto_rawDesc)),
							 | 
						|
											NumEnums:      0,
							 | 
						|
											NumMessages:   11,
							 | 
						|
											NumExtensions: 0,
							 | 
						|
											NumServices:   1,
							 | 
						|
										},
							 | 
						|
										GoTypes:           file_s3_proto_goTypes,
							 | 
						|
										DependencyIndexes: file_s3_proto_depIdxs,
							 | 
						|
										MessageInfos:      file_s3_proto_msgTypes,
							 | 
						|
									}.Build()
							 | 
						|
									File_s3_proto = out.File
							 | 
						|
									file_s3_proto_goTypes = nil
							 | 
						|
									file_s3_proto_depIdxs = nil
							 | 
						|
								}
							 |