github.com/TrueCloudLab/frostfs-api-go/v2@v2.0.0-20230228134343-196241c4e79a/container/grpc/types.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.28.0
     4  // 	protoc        v3.21.9
     5  // source: container/grpc/types.proto
     6  
     7  package container
     8  
     9  import (
    10  	grpc1 "github.com/TrueCloudLab/frostfs-api-go/v2/netmap/grpc"
    11  	grpc "github.com/TrueCloudLab/frostfs-api-go/v2/refs/grpc"
    12  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    13  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    14  	reflect "reflect"
    15  	sync "sync"
    16  )
    17  
    18  const (
    19  	// Verify that this generated code is sufficiently up-to-date.
    20  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    21  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    22  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    23  )
    24  
    25  // Container is a structure that defines object placement behaviour. Objects can
    26  // be stored only within containers. They define placement rule, attributes and
    27  // access control information. An ID of a container is a 32 byte long SHA256 hash
    28  // of stable-marshalled container message.
    29  type Container struct {
    30  	state         protoimpl.MessageState
    31  	sizeCache     protoimpl.SizeCache
    32  	unknownFields protoimpl.UnknownFields
    33  
    34  	// Container format version. Effectively, the version of API library used to
    35  	// create the container.
    36  	Version *grpc.Version `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
    37  	// Identifier of the container owner
    38  	OwnerId *grpc.OwnerID `protobuf:"bytes,2,opt,name=owner_id,json=ownerID,proto3" json:"owner_id,omitempty"`
    39  	// Nonce is a 16 byte UUIDv4, used to avoid collisions of `ContainerID`s
    40  	Nonce []byte `protobuf:"bytes,3,opt,name=nonce,proto3" json:"nonce,omitempty"`
    41  	// `BasicACL` contains access control rules for the owner, system and others groups,
    42  	// as well as permission bits for `BearerToken` and `Extended ACL`
    43  	BasicAcl uint32 `protobuf:"varint,4,opt,name=basic_acl,json=basicACL,proto3" json:"basic_acl,omitempty"`
    44  	// Attributes represent immutable container's meta data
    45  	Attributes []*Container_Attribute `protobuf:"bytes,5,rep,name=attributes,proto3" json:"attributes,omitempty"`
    46  	// Placement policy for the object inside the container
    47  	PlacementPolicy *grpc1.PlacementPolicy `protobuf:"bytes,6,opt,name=placement_policy,json=placementPolicy,proto3" json:"placement_policy,omitempty"`
    48  }
    49  
    50  func (x *Container) Reset() {
    51  	*x = Container{}
    52  	if protoimpl.UnsafeEnabled {
    53  		mi := &file_container_grpc_types_proto_msgTypes[0]
    54  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    55  		ms.StoreMessageInfo(mi)
    56  	}
    57  }
    58  
    59  func (x *Container) String() string {
    60  	return protoimpl.X.MessageStringOf(x)
    61  }
    62  
    63  func (*Container) ProtoMessage() {}
    64  
    65  func (x *Container) ProtoReflect() protoreflect.Message {
    66  	mi := &file_container_grpc_types_proto_msgTypes[0]
    67  	if protoimpl.UnsafeEnabled && x != nil {
    68  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
    69  		if ms.LoadMessageInfo() == nil {
    70  			ms.StoreMessageInfo(mi)
    71  		}
    72  		return ms
    73  	}
    74  	return mi.MessageOf(x)
    75  }
    76  
    77  // Deprecated: Use Container.ProtoReflect.Descriptor instead.
    78  func (*Container) Descriptor() ([]byte, []int) {
    79  	return file_container_grpc_types_proto_rawDescGZIP(), []int{0}
    80  }
    81  
    82  func (x *Container) GetVersion() *grpc.Version {
    83  	if x != nil {
    84  		return x.Version
    85  	}
    86  	return nil
    87  }
    88  
    89  func (x *Container) GetOwnerId() *grpc.OwnerID {
    90  	if x != nil {
    91  		return x.OwnerId
    92  	}
    93  	return nil
    94  }
    95  
    96  func (x *Container) GetNonce() []byte {
    97  	if x != nil {
    98  		return x.Nonce
    99  	}
   100  	return nil
   101  }
   102  
   103  func (x *Container) GetBasicAcl() uint32 {
   104  	if x != nil {
   105  		return x.BasicAcl
   106  	}
   107  	return 0
   108  }
   109  
   110  func (x *Container) GetAttributes() []*Container_Attribute {
   111  	if x != nil {
   112  		return x.Attributes
   113  	}
   114  	return nil
   115  }
   116  
   117  func (x *Container) GetPlacementPolicy() *grpc1.PlacementPolicy {
   118  	if x != nil {
   119  		return x.PlacementPolicy
   120  	}
   121  	return nil
   122  }
   123  
   124  // `Attribute` is a user-defined Key-Value metadata pair attached to the
   125  // container. Container attributes are immutable. They are set at the moment of
   126  // container creation and can never be added or updated.
   127  //
   128  // Key name must be a container-unique valid UTF-8 string. Value can't be
   129  // empty. Containers with duplicated attribute names or attributes with empty
   130  // values will be considered invalid.
   131  //
   132  // There are some "well-known" attributes affecting system behaviour:
   133  //
   134  //   - __NEOFS__SUBNET \
   135  //     String ID of a container's storage subnet. Any container can be attached to
   136  //     one subnet only.
   137  //   - __NEOFS__NAME \
   138  //     String of a human-friendly container name registered as a domain in
   139  //     NNS contract.
   140  //   - __NEOFS__ZONE \
   141  //     String of a zone for `__NEOFS__NAME`. Used as a TLD of a domain name in NNS
   142  //     contract. If no zone is specified, use default zone: `container`.
   143  //   - __NEOFS__DISABLE_HOMOMORPHIC_HASHING \
   144  //     Disables homomorphic hashing for the container if the value equals "true" string.
   145  //     Any other values are interpreted as missing attribute. Container could be
   146  //     accepted in a NeoFS network only if the global network hashing configuration
   147  //     value corresponds with that attribute's value. After container inclusion, network
   148  //     setting is ignored.
   149  //
   150  // And some well-known attributes used by applications only:
   151  //
   152  //   - Name \
   153  //     Human-friendly name
   154  //   - Timestamp \
   155  //     User-defined local time of container creation in Unix Timestamp format
   156  type Container_Attribute struct {
   157  	state         protoimpl.MessageState
   158  	sizeCache     protoimpl.SizeCache
   159  	unknownFields protoimpl.UnknownFields
   160  
   161  	// Attribute name key
   162  	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
   163  	// Attribute value
   164  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   165  }
   166  
   167  func (x *Container_Attribute) Reset() {
   168  	*x = Container_Attribute{}
   169  	if protoimpl.UnsafeEnabled {
   170  		mi := &file_container_grpc_types_proto_msgTypes[1]
   171  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   172  		ms.StoreMessageInfo(mi)
   173  	}
   174  }
   175  
   176  func (x *Container_Attribute) String() string {
   177  	return protoimpl.X.MessageStringOf(x)
   178  }
   179  
   180  func (*Container_Attribute) ProtoMessage() {}
   181  
   182  func (x *Container_Attribute) ProtoReflect() protoreflect.Message {
   183  	mi := &file_container_grpc_types_proto_msgTypes[1]
   184  	if protoimpl.UnsafeEnabled && x != nil {
   185  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   186  		if ms.LoadMessageInfo() == nil {
   187  			ms.StoreMessageInfo(mi)
   188  		}
   189  		return ms
   190  	}
   191  	return mi.MessageOf(x)
   192  }
   193  
   194  // Deprecated: Use Container_Attribute.ProtoReflect.Descriptor instead.
   195  func (*Container_Attribute) Descriptor() ([]byte, []int) {
   196  	return file_container_grpc_types_proto_rawDescGZIP(), []int{0, 0}
   197  }
   198  
   199  func (x *Container_Attribute) GetKey() string {
   200  	if x != nil {
   201  		return x.Key
   202  	}
   203  	return ""
   204  }
   205  
   206  func (x *Container_Attribute) GetValue() string {
   207  	if x != nil {
   208  		return x.Value
   209  	}
   210  	return ""
   211  }
   212  
   213  var File_container_grpc_types_proto protoreflect.FileDescriptor
   214  
   215  var file_container_grpc_types_proto_rawDesc = []byte{
   216  	0x0a, 0x1a, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2f, 0x67, 0x72, 0x70, 0x63,
   217  	0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x13, 0x6e, 0x65,
   218  	0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
   219  	0x72, 0x1a, 0x17, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74,
   220  	0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x72, 0x65, 0x66, 0x73,
   221  	0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
   222  	0x6f, 0x22, 0xf2, 0x02, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12,
   223  	0x31, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
   224  	0x32, 0x17, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65, 0x66,
   225  	0x73, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
   226  	0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x02,
   227  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32,
   228  	0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x44, 0x52, 0x07, 0x6f,
   229  	0x77, 0x6e, 0x65, 0x72, 0x49, 0x44, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18,
   230  	0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09,
   231  	0x62, 0x61, 0x73, 0x69, 0x63, 0x5f, 0x61, 0x63, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52,
   232  	0x08, 0x62, 0x61, 0x73, 0x69, 0x63, 0x41, 0x43, 0x4c, 0x12, 0x48, 0x0a, 0x0a, 0x61, 0x74, 0x74,
   233  	0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e,
   234  	0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
   235  	0x6e, 0x65, 0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2e, 0x41, 0x74,
   236  	0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75,
   237  	0x74, 0x65, 0x73, 0x12, 0x4c, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74,
   238  	0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e,
   239  	0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70,
   240  	0x2e, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
   241  	0x52, 0x0f, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63,
   242  	0x79, 0x1a, 0x33, 0x0a, 0x09, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x10,
   243  	0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
   244  	0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
   245  	0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0x64, 0x5a, 0x42, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
   246  	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x72, 0x75, 0x65, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x4c, 0x61,
   247  	0x62, 0x2f, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x66, 0x73, 0x2d, 0x61, 0x70, 0x69, 0x2d, 0x67, 0x6f,
   248  	0x2f, 0x76, 0x32, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x2f, 0x67, 0x72,
   249  	0x70, 0x63, 0x3b, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0xaa, 0x02, 0x1d, 0x4e,
   250  	0x65, 0x6f, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x41,
   251  	0x50, 0x49, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72,
   252  	0x6f, 0x74, 0x6f, 0x33,
   253  }
   254  
   255  var (
   256  	file_container_grpc_types_proto_rawDescOnce sync.Once
   257  	file_container_grpc_types_proto_rawDescData = file_container_grpc_types_proto_rawDesc
   258  )
   259  
   260  func file_container_grpc_types_proto_rawDescGZIP() []byte {
   261  	file_container_grpc_types_proto_rawDescOnce.Do(func() {
   262  		file_container_grpc_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_container_grpc_types_proto_rawDescData)
   263  	})
   264  	return file_container_grpc_types_proto_rawDescData
   265  }
   266  
   267  var file_container_grpc_types_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
   268  var file_container_grpc_types_proto_goTypes = []interface{}{
   269  	(*Container)(nil),             // 0: neo.fs.v2.container.Container
   270  	(*Container_Attribute)(nil),   // 1: neo.fs.v2.container.Container.Attribute
   271  	(*grpc.Version)(nil),          // 2: neo.fs.v2.refs.Version
   272  	(*grpc.OwnerID)(nil),          // 3: neo.fs.v2.refs.OwnerID
   273  	(*grpc1.PlacementPolicy)(nil), // 4: neo.fs.v2.netmap.PlacementPolicy
   274  }
   275  var file_container_grpc_types_proto_depIdxs = []int32{
   276  	2, // 0: neo.fs.v2.container.Container.version:type_name -> neo.fs.v2.refs.Version
   277  	3, // 1: neo.fs.v2.container.Container.owner_id:type_name -> neo.fs.v2.refs.OwnerID
   278  	1, // 2: neo.fs.v2.container.Container.attributes:type_name -> neo.fs.v2.container.Container.Attribute
   279  	4, // 3: neo.fs.v2.container.Container.placement_policy:type_name -> neo.fs.v2.netmap.PlacementPolicy
   280  	4, // [4:4] is the sub-list for method output_type
   281  	4, // [4:4] is the sub-list for method input_type
   282  	4, // [4:4] is the sub-list for extension type_name
   283  	4, // [4:4] is the sub-list for extension extendee
   284  	0, // [0:4] is the sub-list for field type_name
   285  }
   286  
   287  func init() { file_container_grpc_types_proto_init() }
   288  func file_container_grpc_types_proto_init() {
   289  	if File_container_grpc_types_proto != nil {
   290  		return
   291  	}
   292  	if !protoimpl.UnsafeEnabled {
   293  		file_container_grpc_types_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   294  			switch v := v.(*Container); i {
   295  			case 0:
   296  				return &v.state
   297  			case 1:
   298  				return &v.sizeCache
   299  			case 2:
   300  				return &v.unknownFields
   301  			default:
   302  				return nil
   303  			}
   304  		}
   305  		file_container_grpc_types_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   306  			switch v := v.(*Container_Attribute); i {
   307  			case 0:
   308  				return &v.state
   309  			case 1:
   310  				return &v.sizeCache
   311  			case 2:
   312  				return &v.unknownFields
   313  			default:
   314  				return nil
   315  			}
   316  		}
   317  	}
   318  	type x struct{}
   319  	out := protoimpl.TypeBuilder{
   320  		File: protoimpl.DescBuilder{
   321  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   322  			RawDescriptor: file_container_grpc_types_proto_rawDesc,
   323  			NumEnums:      0,
   324  			NumMessages:   2,
   325  			NumExtensions: 0,
   326  			NumServices:   0,
   327  		},
   328  		GoTypes:           file_container_grpc_types_proto_goTypes,
   329  		DependencyIndexes: file_container_grpc_types_proto_depIdxs,
   330  		MessageInfos:      file_container_grpc_types_proto_msgTypes,
   331  	}.Build()
   332  	File_container_grpc_types_proto = out.File
   333  	file_container_grpc_types_proto_rawDesc = nil
   334  	file_container_grpc_types_proto_goTypes = nil
   335  	file_container_grpc_types_proto_depIdxs = nil
   336  }