// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.33.0 // protoc v4.25.3 // source: netmap/grpc/types.proto package netmap import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) // Operations on filters type Operation int32 const ( // No Operation defined Operation_OPERATION_UNSPECIFIED Operation = 0 // Equal Operation_EQ Operation = 1 // Not Equal Operation_NE Operation = 2 // Greater then Operation_GT Operation = 3 // Greater or equal Operation_GE Operation = 4 // Less then Operation_LT Operation = 5 // Less or equal Operation_LE Operation = 6 // Logical OR Operation_OR Operation = 7 // Logical AND Operation_AND Operation = 8 // Logical negation Operation_NOT Operation = 9 ) // Enum value maps for Operation. var ( Operation_name = map[int32]string{ 0: "OPERATION_UNSPECIFIED", 1: "EQ", 2: "NE", 3: "GT", 4: "GE", 5: "LT", 6: "LE", 7: "OR", 8: "AND", 9: "NOT", } Operation_value = map[string]int32{ "OPERATION_UNSPECIFIED": 0, "EQ": 1, "NE": 2, "GT": 3, "GE": 4, "LT": 5, "LE": 6, "OR": 7, "AND": 8, "NOT": 9, } ) func (x Operation) Enum() *Operation { p := new(Operation) *p = x return p } func (x Operation) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (Operation) Descriptor() protoreflect.EnumDescriptor { return file_netmap_grpc_types_proto_enumTypes[0].Descriptor() } func (Operation) Type() protoreflect.EnumType { return &file_netmap_grpc_types_proto_enumTypes[0] } func (x Operation) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use Operation.Descriptor instead. func (Operation) EnumDescriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{0} } // Selector modifier shows how the node set will be formed. By default selector // just groups nodes into a bucket by attribute, selecting nodes only by their // hash distance. type Clause int32 const ( // No modifier defined. Nodes will be selected from the bucket randomly Clause_CLAUSE_UNSPECIFIED Clause = 0 // SAME will select only nodes having the same value of bucket attribute Clause_SAME Clause = 1 // DISTINCT will select nodes having different values of bucket attribute Clause_DISTINCT Clause = 2 ) // Enum value maps for Clause. var ( Clause_name = map[int32]string{ 0: "CLAUSE_UNSPECIFIED", 1: "SAME", 2: "DISTINCT", } Clause_value = map[string]int32{ "CLAUSE_UNSPECIFIED": 0, "SAME": 1, "DISTINCT": 2, } ) func (x Clause) Enum() *Clause { p := new(Clause) *p = x return p } func (x Clause) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (Clause) Descriptor() protoreflect.EnumDescriptor { return file_netmap_grpc_types_proto_enumTypes[1].Descriptor() } func (Clause) Type() protoreflect.EnumType { return &file_netmap_grpc_types_proto_enumTypes[1] } func (x Clause) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use Clause.Descriptor instead. func (Clause) EnumDescriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{1} } // Represents the enumeration of various states of the NeoFS node. type NodeInfo_State int32 const ( // Unknown state NodeInfo_UNSPECIFIED NodeInfo_State = 0 // Active state in the network NodeInfo_ONLINE NodeInfo_State = 1 // Network unavailable state NodeInfo_OFFLINE NodeInfo_State = 2 // Maintenance state NodeInfo_MAINTENANCE NodeInfo_State = 3 ) // Enum value maps for NodeInfo_State. var ( NodeInfo_State_name = map[int32]string{ 0: "UNSPECIFIED", 1: "ONLINE", 2: "OFFLINE", 3: "MAINTENANCE", } NodeInfo_State_value = map[string]int32{ "UNSPECIFIED": 0, "ONLINE": 1, "OFFLINE": 2, "MAINTENANCE": 3, } ) func (x NodeInfo_State) Enum() *NodeInfo_State { p := new(NodeInfo_State) *p = x return p } func (x NodeInfo_State) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (NodeInfo_State) Descriptor() protoreflect.EnumDescriptor { return file_netmap_grpc_types_proto_enumTypes[2].Descriptor() } func (NodeInfo_State) Type() protoreflect.EnumType { return &file_netmap_grpc_types_proto_enumTypes[2] } func (x NodeInfo_State) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use NodeInfo_State.Descriptor instead. func (NodeInfo_State) EnumDescriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{4, 0} } // This filter will return the subset of nodes from `NetworkMap` or another // filter's results that will satisfy filter's conditions. type Filter struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Name of the filter or a reference to a named filter. '*' means // application to the whole unfiltered NetworkMap. At top level it's used as a // filter name. At lower levels it's considered to be a reference to another // named filter Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Key to filter Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"` // Filtering operation Op Operation `protobuf:"varint,3,opt,name=op,proto3,enum=neo.fs.v2.netmap.Operation" json:"op,omitempty"` // Value to match Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` // List of inner filters. Top level operation will be applied to the whole // list. Filters []*Filter `protobuf:"bytes,5,rep,name=filters,proto3" json:"filters,omitempty"` } func (x *Filter) Reset() { *x = Filter{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Filter) String() string { return protoimpl.X.MessageStringOf(x) } func (*Filter) ProtoMessage() {} func (x *Filter) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 Filter.ProtoReflect.Descriptor instead. func (*Filter) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{0} } func (x *Filter) GetName() string { if x != nil { return x.Name } return "" } func (x *Filter) GetKey() string { if x != nil { return x.Key } return "" } func (x *Filter) GetOp() Operation { if x != nil { return x.Op } return Operation_OPERATION_UNSPECIFIED } func (x *Filter) GetValue() string { if x != nil { return x.Value } return "" } func (x *Filter) GetFilters() []*Filter { if x != nil { return x.Filters } return nil } // Selector chooses a number of nodes from the bucket taking the nearest nodes // to the provided `ContainerID` by hash distance. type Selector struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Selector name to reference in object placement section Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // How many nodes to select from the bucket Count uint32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` // Selector modifier showing how to form a bucket Clause Clause `protobuf:"varint,3,opt,name=clause,proto3,enum=neo.fs.v2.netmap.Clause" json:"clause,omitempty"` // Bucket attribute to select from Attribute string `protobuf:"bytes,4,opt,name=attribute,proto3" json:"attribute,omitempty"` // Filter reference to select from Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"` } func (x *Selector) Reset() { *x = Selector{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Selector) String() string { return protoimpl.X.MessageStringOf(x) } func (*Selector) ProtoMessage() {} func (x *Selector) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 Selector.ProtoReflect.Descriptor instead. func (*Selector) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{1} } func (x *Selector) GetName() string { if x != nil { return x.Name } return "" } func (x *Selector) GetCount() uint32 { if x != nil { return x.Count } return 0 } func (x *Selector) GetClause() Clause { if x != nil { return x.Clause } return Clause_CLAUSE_UNSPECIFIED } func (x *Selector) GetAttribute() string { if x != nil { return x.Attribute } return "" } func (x *Selector) GetFilter() string { if x != nil { return x.Filter } return "" } // Number of object replicas in a set of nodes from the defined selector. If no // selector set, the root bucket containing all possible nodes will be used by // default. type Replica struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // How many object replicas to put Count uint32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` // Named selector bucket to put replicas Selector string `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"` // Data shards count EcDataCount uint32 `protobuf:"varint,3,opt,name=ec_data_count,json=ecDataCount,proto3" json:"ec_data_count,omitempty"` // Parity shards count EcParityCount uint32 `protobuf:"varint,4,opt,name=ec_parity_count,json=ecParityCount,proto3" json:"ec_parity_count,omitempty"` } func (x *Replica) Reset() { *x = Replica{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Replica) String() string { return protoimpl.X.MessageStringOf(x) } func (*Replica) ProtoMessage() {} func (x *Replica) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 Replica.ProtoReflect.Descriptor instead. func (*Replica) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{2} } func (x *Replica) GetCount() uint32 { if x != nil { return x.Count } return 0 } func (x *Replica) GetSelector() string { if x != nil { return x.Selector } return "" } func (x *Replica) GetEcDataCount() uint32 { if x != nil { return x.EcDataCount } return 0 } func (x *Replica) GetEcParityCount() uint32 { if x != nil { return x.EcParityCount } return 0 } // Set of rules to select a subset of nodes from `NetworkMap` able to store // container's objects. The format is simple enough to transpile from different // storage policy definition languages. type PlacementPolicy struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Rules to set number of object replicas and place each one into a named // bucket Replicas []*Replica `protobuf:"bytes,1,rep,name=replicas,proto3" json:"replicas,omitempty"` // Container backup factor controls how deep NeoFS will search for nodes // alternatives to include into container's nodes subset ContainerBackupFactor uint32 `protobuf:"varint,2,opt,name=container_backup_factor,json=containerBackupFactor,proto3" json:"container_backup_factor,omitempty"` // Set of Selectors to form the container's nodes subset Selectors []*Selector `protobuf:"bytes,3,rep,name=selectors,proto3" json:"selectors,omitempty"` // List of named filters to reference in selectors Filters []*Filter `protobuf:"bytes,4,rep,name=filters,proto3" json:"filters,omitempty"` // Unique flag defines non-overlapping application for replicas Unique bool `protobuf:"varint,5,opt,name=unique,proto3" json:"unique,omitempty"` } func (x *PlacementPolicy) Reset() { *x = PlacementPolicy{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PlacementPolicy) String() string { return protoimpl.X.MessageStringOf(x) } func (*PlacementPolicy) ProtoMessage() {} func (x *PlacementPolicy) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 PlacementPolicy.ProtoReflect.Descriptor instead. func (*PlacementPolicy) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{3} } func (x *PlacementPolicy) GetReplicas() []*Replica { if x != nil { return x.Replicas } return nil } func (x *PlacementPolicy) GetContainerBackupFactor() uint32 { if x != nil { return x.ContainerBackupFactor } return 0 } func (x *PlacementPolicy) GetSelectors() []*Selector { if x != nil { return x.Selectors } return nil } func (x *PlacementPolicy) GetFilters() []*Filter { if x != nil { return x.Filters } return nil } func (x *PlacementPolicy) GetUnique() bool { if x != nil { return x.Unique } return false } // NeoFS node description type NodeInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Public key of the NeoFS node in a binary format PublicKey []byte `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` // Ways to connect to a node Addresses []string `protobuf:"bytes,2,rep,name=addresses,proto3" json:"addresses,omitempty"` // Carries list of the NeoFS node attributes in a key-value form. Key name // must be a node-unique valid UTF-8 string. Value can't be empty. NodeInfo // structures with duplicated attribute names or attributes with empty values // will be considered invalid. Attributes []*NodeInfo_Attribute `protobuf:"bytes,3,rep,name=attributes,proto3" json:"attributes,omitempty"` // Carries state of the NeoFS node State NodeInfo_State `protobuf:"varint,4,opt,name=state,proto3,enum=neo.fs.v2.netmap.NodeInfo_State" json:"state,omitempty"` } func (x *NodeInfo) Reset() { *x = NodeInfo{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NodeInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*NodeInfo) ProtoMessage() {} func (x *NodeInfo) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 NodeInfo.ProtoReflect.Descriptor instead. func (*NodeInfo) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{4} } func (x *NodeInfo) GetPublicKey() []byte { if x != nil { return x.PublicKey } return nil } func (x *NodeInfo) GetAddresses() []string { if x != nil { return x.Addresses } return nil } func (x *NodeInfo) GetAttributes() []*NodeInfo_Attribute { if x != nil { return x.Attributes } return nil } func (x *NodeInfo) GetState() NodeInfo_State { if x != nil { return x.State } return NodeInfo_UNSPECIFIED } // Network map structure type Netmap struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Network map revision number. Epoch uint64 `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty"` // Nodes presented in network. Nodes []*NodeInfo `protobuf:"bytes,2,rep,name=nodes,proto3" json:"nodes,omitempty"` } func (x *Netmap) Reset() { *x = Netmap{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Netmap) String() string { return protoimpl.X.MessageStringOf(x) } func (*Netmap) ProtoMessage() {} func (x *Netmap) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 Netmap.ProtoReflect.Descriptor instead. func (*Netmap) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{5} } func (x *Netmap) GetEpoch() uint64 { if x != nil { return x.Epoch } return 0 } func (x *Netmap) GetNodes() []*NodeInfo { if x != nil { return x.Nodes } return nil } // NeoFS network configuration type NetworkConfig struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // List of parameter values Parameters []*NetworkConfig_Parameter `protobuf:"bytes,1,rep,name=parameters,proto3" json:"parameters,omitempty"` } func (x *NetworkConfig) Reset() { *x = NetworkConfig{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkConfig) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkConfig) ProtoMessage() {} func (x *NetworkConfig) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 NetworkConfig.ProtoReflect.Descriptor instead. func (*NetworkConfig) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{6} } func (x *NetworkConfig) GetParameters() []*NetworkConfig_Parameter { if x != nil { return x.Parameters } return nil } // Information about NeoFS network type NetworkInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Number of the current epoch in the NeoFS network CurrentEpoch uint64 `protobuf:"varint,1,opt,name=current_epoch,json=currentEpoch,proto3" json:"current_epoch,omitempty"` // Magic number of the sidechain of the NeoFS network MagicNumber uint64 `protobuf:"varint,2,opt,name=magic_number,json=magicNumber,proto3" json:"magic_number,omitempty"` // MillisecondsPerBlock network parameter of the sidechain of the NeoFS // network MsPerBlock int64 `protobuf:"varint,3,opt,name=ms_per_block,json=msPerBlock,proto3" json:"ms_per_block,omitempty"` // NeoFS network configuration NetworkConfig *NetworkConfig `protobuf:"bytes,4,opt,name=network_config,json=networkConfig,proto3" json:"network_config,omitempty"` } func (x *NetworkInfo) Reset() { *x = NetworkInfo{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkInfo) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkInfo) ProtoMessage() {} func (x *NetworkInfo) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 NetworkInfo.ProtoReflect.Descriptor instead. func (*NetworkInfo) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{7} } func (x *NetworkInfo) GetCurrentEpoch() uint64 { if x != nil { return x.CurrentEpoch } return 0 } func (x *NetworkInfo) GetMagicNumber() uint64 { if x != nil { return x.MagicNumber } return 0 } func (x *NetworkInfo) GetMsPerBlock() int64 { if x != nil { return x.MsPerBlock } return 0 } func (x *NetworkInfo) GetNetworkConfig() *NetworkConfig { if x != nil { return x.NetworkConfig } return nil } // Administrator-defined Attributes of the NeoFS Storage Node. // // `Attribute` is a Key-Value metadata pair. Key name must be a valid UTF-8 // string. Value can't be empty. // // Attributes can be constructed into a chain of attributes: any attribute can // have a parent attribute and a child attribute (except the first and the // last one). A string representation of the chain of attributes in NeoFS // Storage Node configuration uses ":" and "/" symbols, e.g.: // // `NEOFS_NODE_ATTRIBUTE_1=key1:val1/key2:val2` // // Therefore the string attribute representation in the Node configuration // must use "\:", "\/" and "\\" escaped symbols if any of them appears in an // attribute's key or value. // // Node's attributes are mostly used during Storage Policy evaluation to // calculate object's placement and find a set of nodes satisfying policy // requirements. There are some "well-known" node attributes common to all the // Storage Nodes in the network and used implicitly with default values if not // explicitly set: // // - Capacity \ // Total available disk space in Gigabytes. // - Price \ // Price in GAS tokens for storing one GB of data during one Epoch. In node // attributes it's a string presenting floating point number with comma or // point delimiter for decimal part. In the Network Map it will be saved as // 64-bit unsigned integer representing number of minimal token fractions. // - UN-LOCODE \ // Node's geographic location in // [UN/LOCODE](https://www.unece.org/cefact/codesfortrade/codes_index.html) // format approximated to the nearest point defined in the standard. // - CountryCode \ // Country code in // [ISO 3166-1_alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) // format. Calculated automatically from `UN-LOCODE` attribute. // - Country \ // Country short name in English, as defined in // [ISO-3166](https://www.iso.org/obp/ui/#search). Calculated automatically // from `UN-LOCODE` attribute. // - Location \ // Place names are given, whenever possible, in their national language // versions as expressed in the Roman alphabet using the 26 characters of // the character set adopted for international trade data interchange, // written without diacritics . Calculated automatically from `UN-LOCODE` // attribute. // - SubDivCode \ // Country's administrative subdivision where node is located. Calculated // automatically from `UN-LOCODE` attribute based on `SubDiv` field. // Presented in [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) // format. // - SubDiv \ // Country's administrative subdivision name, as defined in // [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2). Calculated // automatically from `UN-LOCODE` attribute. // - Continent \ // Node's continent name according to the [Seven-Continent model] // (https://en.wikipedia.org/wiki/Continent#Number). Calculated // automatically from `UN-LOCODE` attribute. // - ExternalAddr // Node's preferred way for communications with external clients. // Clients SHOULD use these addresses if possible. // Must contain a comma-separated list of multi-addresses. // // For detailed description of each well-known attribute please see the // corresponding section in NeoFS Technical Specification. type NodeInfo_Attribute struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Key of the node attribute Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` // Value of the node attribute Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` // Parent keys, if any. For example for `City` it could be `Region` and // `Country`. Parents []string `protobuf:"bytes,3,rep,name=parents,proto3" json:"parents,omitempty"` } func (x *NodeInfo_Attribute) Reset() { *x = NodeInfo_Attribute{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NodeInfo_Attribute) String() string { return protoimpl.X.MessageStringOf(x) } func (*NodeInfo_Attribute) ProtoMessage() {} func (x *NodeInfo_Attribute) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 NodeInfo_Attribute.ProtoReflect.Descriptor instead. func (*NodeInfo_Attribute) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{4, 0} } func (x *NodeInfo_Attribute) GetKey() string { if x != nil { return x.Key } return "" } func (x *NodeInfo_Attribute) GetValue() string { if x != nil { return x.Value } return "" } func (x *NodeInfo_Attribute) GetParents() []string { if x != nil { return x.Parents } return nil } // Single configuration parameter. Key MUST be network-unique. // // System parameters: // - **AuditFee** \ // Fee paid by the storage group owner to the Inner Ring member. // Value: little-endian integer. Default: 0. // - **BasicIncomeRate** \ // Cost of storing one gigabyte of data for a period of one epoch. Paid by // container owner to container nodes. // Value: little-endian integer. Default: 0. // - **ContainerAliasFee** \ // Fee paid for named container's creation by the container owner. // Value: little-endian integer. Default: 0. // - **ContainerFee** \ // Fee paid for container creation by the container owner. // Value: little-endian integer. Default: 0. // - **EpochDuration** \ // NeoFS epoch duration measured in Sidechain blocks. // Value: little-endian integer. Default: 0. // - **HomomorphicHashingDisabled** \ // Flag of disabling the homomorphic hashing of objects' payload. // Value: true if any byte != 0. Default: false. // - **InnerRingCandidateFee** \ // Fee for entrance to the Inner Ring paid by the candidate. // Value: little-endian integer. Default: 0. // - **MaintenanceModeAllowed** \ // Flag allowing setting the MAINTENANCE state to storage nodes. // Value: true if any byte != 0. Default: false. // - **MaxObjectSize** \ // Maximum size of physically stored NeoFS object measured in bytes. // Value: little-endian integer. Default: 0. // - **WithdrawFee** \ // Fee paid for withdrawal of funds paid by the account owner. // Value: little-endian integer. Default: 0. // - **MaxECDataCount** \ // Maximum number of data shards for EC placement policy. // Value: little-endian integer. Default: 0. // - **MaxECParityCount** \ // Maximum number of parity shards for EC placement policy. // Value: little-endian integer. Default: 0. type NetworkConfig_Parameter struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Parameter key. UTF-8 encoded string Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` // Parameter value Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` } func (x *NetworkConfig_Parameter) Reset() { *x = NetworkConfig_Parameter{} if protoimpl.UnsafeEnabled { mi := &file_netmap_grpc_types_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *NetworkConfig_Parameter) String() string { return protoimpl.X.MessageStringOf(x) } func (*NetworkConfig_Parameter) ProtoMessage() {} func (x *NetworkConfig_Parameter) ProtoReflect() protoreflect.Message { mi := &file_netmap_grpc_types_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 NetworkConfig_Parameter.ProtoReflect.Descriptor instead. func (*NetworkConfig_Parameter) Descriptor() ([]byte, []int) { return file_netmap_grpc_types_proto_rawDescGZIP(), []int{6, 0} } func (x *NetworkConfig_Parameter) GetKey() []byte { if x != nil { return x.Key } return nil } func (x *NetworkConfig_Parameter) GetValue() []byte { if x != nil { return x.Value } return nil } var File_netmap_grpc_types_proto protoreflect.FileDescriptor var file_netmap_grpc_types_proto_rawDesc = []byte{ 0x0a, 0x17, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x22, 0xa5, 0x01, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2b, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x02, 0x6f, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x08, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x06, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x06, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x87, 0x01, 0x0a, 0x07, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x22, 0x0a, 0x0d, 0x65, 0x63, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x63, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x65, 0x63, 0x5f, 0x70, 0x61, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x65, 0x63, 0x50, 0x61, 0x72, 0x69, 0x74, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x86, 0x02, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x63, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x35, 0x0a, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x38, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x22, 0xd8, 0x02, 0x0a, 0x08, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x1a, 0x4d, 0x0a, 0x09, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 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, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x42, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x46, 0x46, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x03, 0x22, 0x50, 0x0a, 0x06, 0x4e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x30, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x8f, 0x01, 0x0a, 0x0d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x1a, 0x33, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xbf, 0x01, 0x0a, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0c, 0x6d, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x73, 0x50, 0x65, 0x72, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x46, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2a, 0x70, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x15, 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x45, 0x51, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x54, 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x45, 0x10, 0x04, 0x12, 0x06, 0x0a, 0x02, 0x4c, 0x54, 0x10, 0x05, 0x12, 0x06, 0x0a, 0x02, 0x4c, 0x45, 0x10, 0x06, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x52, 0x10, 0x07, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x44, 0x10, 0x08, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x4f, 0x54, 0x10, 0x09, 0x2a, 0x38, 0x0a, 0x06, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4c, 0x41, 0x55, 0x53, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x41, 0x4d, 0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x49, 0x53, 0x54, 0x49, 0x4e, 0x43, 0x54, 0x10, 0x02, 0x42, 0x61, 0x5a, 0x42, 0x67, 0x69, 0x74, 0x2e, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x66, 0x73, 0x2e, 0x69, 0x6e, 0x66, 0x6f, 0x2f, 0x54, 0x72, 0x75, 0x65, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x4c, 0x61, 0x62, 0x2f, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x66, 0x73, 0x2d, 0x61, 0x70, 0x69, 0x2d, 0x67, 0x6f, 0x2f, 0x76, 0x32, 0x2f, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x3b, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0xaa, 0x02, 0x1a, 0x4e, 0x65, 0x6f, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x41, 0x50, 0x49, 0x2e, 0x4e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_netmap_grpc_types_proto_rawDescOnce sync.Once file_netmap_grpc_types_proto_rawDescData = file_netmap_grpc_types_proto_rawDesc ) func file_netmap_grpc_types_proto_rawDescGZIP() []byte { file_netmap_grpc_types_proto_rawDescOnce.Do(func() { file_netmap_grpc_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_netmap_grpc_types_proto_rawDescData) }) return file_netmap_grpc_types_proto_rawDescData } var file_netmap_grpc_types_proto_enumTypes = make([]protoimpl.EnumInfo, 3) var file_netmap_grpc_types_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_netmap_grpc_types_proto_goTypes = []interface{}{ (Operation)(0), // 0: neo.fs.v2.netmap.Operation (Clause)(0), // 1: neo.fs.v2.netmap.Clause (NodeInfo_State)(0), // 2: neo.fs.v2.netmap.NodeInfo.State (*Filter)(nil), // 3: neo.fs.v2.netmap.Filter (*Selector)(nil), // 4: neo.fs.v2.netmap.Selector (*Replica)(nil), // 5: neo.fs.v2.netmap.Replica (*PlacementPolicy)(nil), // 6: neo.fs.v2.netmap.PlacementPolicy (*NodeInfo)(nil), // 7: neo.fs.v2.netmap.NodeInfo (*Netmap)(nil), // 8: neo.fs.v2.netmap.Netmap (*NetworkConfig)(nil), // 9: neo.fs.v2.netmap.NetworkConfig (*NetworkInfo)(nil), // 10: neo.fs.v2.netmap.NetworkInfo (*NodeInfo_Attribute)(nil), // 11: neo.fs.v2.netmap.NodeInfo.Attribute (*NetworkConfig_Parameter)(nil), // 12: neo.fs.v2.netmap.NetworkConfig.Parameter } var file_netmap_grpc_types_proto_depIdxs = []int32{ 0, // 0: neo.fs.v2.netmap.Filter.op:type_name -> neo.fs.v2.netmap.Operation 3, // 1: neo.fs.v2.netmap.Filter.filters:type_name -> neo.fs.v2.netmap.Filter 1, // 2: neo.fs.v2.netmap.Selector.clause:type_name -> neo.fs.v2.netmap.Clause 5, // 3: neo.fs.v2.netmap.PlacementPolicy.replicas:type_name -> neo.fs.v2.netmap.Replica 4, // 4: neo.fs.v2.netmap.PlacementPolicy.selectors:type_name -> neo.fs.v2.netmap.Selector 3, // 5: neo.fs.v2.netmap.PlacementPolicy.filters:type_name -> neo.fs.v2.netmap.Filter 11, // 6: neo.fs.v2.netmap.NodeInfo.attributes:type_name -> neo.fs.v2.netmap.NodeInfo.Attribute 2, // 7: neo.fs.v2.netmap.NodeInfo.state:type_name -> neo.fs.v2.netmap.NodeInfo.State 7, // 8: neo.fs.v2.netmap.Netmap.nodes:type_name -> neo.fs.v2.netmap.NodeInfo 12, // 9: neo.fs.v2.netmap.NetworkConfig.parameters:type_name -> neo.fs.v2.netmap.NetworkConfig.Parameter 9, // 10: neo.fs.v2.netmap.NetworkInfo.network_config:type_name -> neo.fs.v2.netmap.NetworkConfig 11, // [11:11] is the sub-list for method output_type 11, // [11:11] is the sub-list for method input_type 11, // [11:11] is the sub-list for extension type_name 11, // [11:11] is the sub-list for extension extendee 0, // [0:11] is the sub-list for field type_name } func init() { file_netmap_grpc_types_proto_init() } func file_netmap_grpc_types_proto_init() { if File_netmap_grpc_types_proto != nil { return } if !protoimpl.UnsafeEnabled { file_netmap_grpc_types_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Filter); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Selector); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Replica); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PlacementPolicy); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NodeInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Netmap); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkConfig); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkInfo); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NodeInfo_Attribute); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_netmap_grpc_types_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetworkConfig_Parameter); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_netmap_grpc_types_proto_rawDesc, NumEnums: 3, NumMessages: 10, NumExtensions: 0, NumServices: 0, }, GoTypes: file_netmap_grpc_types_proto_goTypes, DependencyIndexes: file_netmap_grpc_types_proto_depIdxs, EnumInfos: file_netmap_grpc_types_proto_enumTypes, MessageInfos: file_netmap_grpc_types_proto_msgTypes, }.Build() File_netmap_grpc_types_proto = out.File file_netmap_grpc_types_proto_rawDesc = nil file_netmap_grpc_types_proto_goTypes = nil file_netmap_grpc_types_proto_depIdxs = nil }