github.com/TrueCloudLab/frostfs-api-go/v2@v2.0.0-20230228134343-196241c4e79a/netmap/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: netmap/grpc/types.proto 6 7 package netmap 8 9 import ( 10 grpc "github.com/TrueCloudLab/frostfs-api-go/v2/refs/grpc" 11 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 12 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 13 reflect "reflect" 14 sync "sync" 15 ) 16 17 const ( 18 // Verify that this generated code is sufficiently up-to-date. 19 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 20 // Verify that runtime/protoimpl is sufficiently up-to-date. 21 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 22 ) 23 24 // Operations on filters 25 type Operation int32 26 27 const ( 28 // No Operation defined 29 Operation_OPERATION_UNSPECIFIED Operation = 0 30 // Equal 31 Operation_EQ Operation = 1 32 // Not Equal 33 Operation_NE Operation = 2 34 // Greater then 35 Operation_GT Operation = 3 36 // Greater or equal 37 Operation_GE Operation = 4 38 // Less then 39 Operation_LT Operation = 5 40 // Less or equal 41 Operation_LE Operation = 6 42 // Logical OR 43 Operation_OR Operation = 7 44 // Logical AND 45 Operation_AND Operation = 8 46 ) 47 48 // Enum value maps for Operation. 49 var ( 50 Operation_name = map[int32]string{ 51 0: "OPERATION_UNSPECIFIED", 52 1: "EQ", 53 2: "NE", 54 3: "GT", 55 4: "GE", 56 5: "LT", 57 6: "LE", 58 7: "OR", 59 8: "AND", 60 } 61 Operation_value = map[string]int32{ 62 "OPERATION_UNSPECIFIED": 0, 63 "EQ": 1, 64 "NE": 2, 65 "GT": 3, 66 "GE": 4, 67 "LT": 5, 68 "LE": 6, 69 "OR": 7, 70 "AND": 8, 71 } 72 ) 73 74 func (x Operation) Enum() *Operation { 75 p := new(Operation) 76 *p = x 77 return p 78 } 79 80 func (x Operation) String() string { 81 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 82 } 83 84 func (Operation) Descriptor() protoreflect.EnumDescriptor { 85 return file_netmap_grpc_types_proto_enumTypes[0].Descriptor() 86 } 87 88 func (Operation) Type() protoreflect.EnumType { 89 return &file_netmap_grpc_types_proto_enumTypes[0] 90 } 91 92 func (x Operation) Number() protoreflect.EnumNumber { 93 return protoreflect.EnumNumber(x) 94 } 95 96 // Deprecated: Use Operation.Descriptor instead. 97 func (Operation) EnumDescriptor() ([]byte, []int) { 98 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{0} 99 } 100 101 // Selector modifier shows how the node set will be formed. By default selector 102 // just groups nodes into a bucket by attribute, selecting nodes only by their 103 // hash distance. 104 type Clause int32 105 106 const ( 107 // No modifier defined. Nodes will be selected from the bucket randomly 108 Clause_CLAUSE_UNSPECIFIED Clause = 0 109 // SAME will select only nodes having the same value of bucket attribute 110 Clause_SAME Clause = 1 111 // DISTINCT will select nodes having different values of bucket attribute 112 Clause_DISTINCT Clause = 2 113 ) 114 115 // Enum value maps for Clause. 116 var ( 117 Clause_name = map[int32]string{ 118 0: "CLAUSE_UNSPECIFIED", 119 1: "SAME", 120 2: "DISTINCT", 121 } 122 Clause_value = map[string]int32{ 123 "CLAUSE_UNSPECIFIED": 0, 124 "SAME": 1, 125 "DISTINCT": 2, 126 } 127 ) 128 129 func (x Clause) Enum() *Clause { 130 p := new(Clause) 131 *p = x 132 return p 133 } 134 135 func (x Clause) String() string { 136 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 137 } 138 139 func (Clause) Descriptor() protoreflect.EnumDescriptor { 140 return file_netmap_grpc_types_proto_enumTypes[1].Descriptor() 141 } 142 143 func (Clause) Type() protoreflect.EnumType { 144 return &file_netmap_grpc_types_proto_enumTypes[1] 145 } 146 147 func (x Clause) Number() protoreflect.EnumNumber { 148 return protoreflect.EnumNumber(x) 149 } 150 151 // Deprecated: Use Clause.Descriptor instead. 152 func (Clause) EnumDescriptor() ([]byte, []int) { 153 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{1} 154 } 155 156 // Represents the enumeration of various states of the NeoFS node. 157 type NodeInfo_State int32 158 159 const ( 160 // Unknown state 161 NodeInfo_UNSPECIFIED NodeInfo_State = 0 162 // Active state in the network 163 NodeInfo_ONLINE NodeInfo_State = 1 164 // Network unavailable state 165 NodeInfo_OFFLINE NodeInfo_State = 2 166 // Maintenance state 167 NodeInfo_MAINTENANCE NodeInfo_State = 3 168 ) 169 170 // Enum value maps for NodeInfo_State. 171 var ( 172 NodeInfo_State_name = map[int32]string{ 173 0: "UNSPECIFIED", 174 1: "ONLINE", 175 2: "OFFLINE", 176 3: "MAINTENANCE", 177 } 178 NodeInfo_State_value = map[string]int32{ 179 "UNSPECIFIED": 0, 180 "ONLINE": 1, 181 "OFFLINE": 2, 182 "MAINTENANCE": 3, 183 } 184 ) 185 186 func (x NodeInfo_State) Enum() *NodeInfo_State { 187 p := new(NodeInfo_State) 188 *p = x 189 return p 190 } 191 192 func (x NodeInfo_State) String() string { 193 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 194 } 195 196 func (NodeInfo_State) Descriptor() protoreflect.EnumDescriptor { 197 return file_netmap_grpc_types_proto_enumTypes[2].Descriptor() 198 } 199 200 func (NodeInfo_State) Type() protoreflect.EnumType { 201 return &file_netmap_grpc_types_proto_enumTypes[2] 202 } 203 204 func (x NodeInfo_State) Number() protoreflect.EnumNumber { 205 return protoreflect.EnumNumber(x) 206 } 207 208 // Deprecated: Use NodeInfo_State.Descriptor instead. 209 func (NodeInfo_State) EnumDescriptor() ([]byte, []int) { 210 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{4, 0} 211 } 212 213 // This filter will return the subset of nodes from `NetworkMap` or another filter's 214 // results that will satisfy filter's conditions. 215 type Filter struct { 216 state protoimpl.MessageState 217 sizeCache protoimpl.SizeCache 218 unknownFields protoimpl.UnknownFields 219 220 // Name of the filter or a reference to a named filter. '*' means 221 // application to the whole unfiltered NetworkMap. At top level it's used as a 222 // filter name. At lower levels it's considered to be a reference to another 223 // named filter 224 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 225 // Key to filter 226 Key string `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"` 227 // Filtering operation 228 Op Operation `protobuf:"varint,3,opt,name=op,proto3,enum=neo.fs.v2.netmap.Operation" json:"op,omitempty"` 229 // Value to match 230 Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` 231 // List of inner filters. Top level operation will be applied to the whole 232 // list. 233 Filters []*Filter `protobuf:"bytes,5,rep,name=filters,proto3" json:"filters,omitempty"` 234 } 235 236 func (x *Filter) Reset() { 237 *x = Filter{} 238 if protoimpl.UnsafeEnabled { 239 mi := &file_netmap_grpc_types_proto_msgTypes[0] 240 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 241 ms.StoreMessageInfo(mi) 242 } 243 } 244 245 func (x *Filter) String() string { 246 return protoimpl.X.MessageStringOf(x) 247 } 248 249 func (*Filter) ProtoMessage() {} 250 251 func (x *Filter) ProtoReflect() protoreflect.Message { 252 mi := &file_netmap_grpc_types_proto_msgTypes[0] 253 if protoimpl.UnsafeEnabled && x != nil { 254 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 255 if ms.LoadMessageInfo() == nil { 256 ms.StoreMessageInfo(mi) 257 } 258 return ms 259 } 260 return mi.MessageOf(x) 261 } 262 263 // Deprecated: Use Filter.ProtoReflect.Descriptor instead. 264 func (*Filter) Descriptor() ([]byte, []int) { 265 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{0} 266 } 267 268 func (x *Filter) GetName() string { 269 if x != nil { 270 return x.Name 271 } 272 return "" 273 } 274 275 func (x *Filter) GetKey() string { 276 if x != nil { 277 return x.Key 278 } 279 return "" 280 } 281 282 func (x *Filter) GetOp() Operation { 283 if x != nil { 284 return x.Op 285 } 286 return Operation_OPERATION_UNSPECIFIED 287 } 288 289 func (x *Filter) GetValue() string { 290 if x != nil { 291 return x.Value 292 } 293 return "" 294 } 295 296 func (x *Filter) GetFilters() []*Filter { 297 if x != nil { 298 return x.Filters 299 } 300 return nil 301 } 302 303 // Selector chooses a number of nodes from the bucket taking the nearest nodes 304 // to the provided `ContainerID` by hash distance. 305 type Selector struct { 306 state protoimpl.MessageState 307 sizeCache protoimpl.SizeCache 308 unknownFields protoimpl.UnknownFields 309 310 // Selector name to reference in object placement section 311 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 312 // How many nodes to select from the bucket 313 Count uint32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` 314 // Selector modifier showing how to form a bucket 315 Clause Clause `protobuf:"varint,3,opt,name=clause,proto3,enum=neo.fs.v2.netmap.Clause" json:"clause,omitempty"` 316 // Bucket attribute to select from 317 Attribute string `protobuf:"bytes,4,opt,name=attribute,proto3" json:"attribute,omitempty"` 318 // Filter reference to select from 319 Filter string `protobuf:"bytes,5,opt,name=filter,proto3" json:"filter,omitempty"` 320 } 321 322 func (x *Selector) Reset() { 323 *x = Selector{} 324 if protoimpl.UnsafeEnabled { 325 mi := &file_netmap_grpc_types_proto_msgTypes[1] 326 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 327 ms.StoreMessageInfo(mi) 328 } 329 } 330 331 func (x *Selector) String() string { 332 return protoimpl.X.MessageStringOf(x) 333 } 334 335 func (*Selector) ProtoMessage() {} 336 337 func (x *Selector) ProtoReflect() protoreflect.Message { 338 mi := &file_netmap_grpc_types_proto_msgTypes[1] 339 if protoimpl.UnsafeEnabled && x != nil { 340 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 341 if ms.LoadMessageInfo() == nil { 342 ms.StoreMessageInfo(mi) 343 } 344 return ms 345 } 346 return mi.MessageOf(x) 347 } 348 349 // Deprecated: Use Selector.ProtoReflect.Descriptor instead. 350 func (*Selector) Descriptor() ([]byte, []int) { 351 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{1} 352 } 353 354 func (x *Selector) GetName() string { 355 if x != nil { 356 return x.Name 357 } 358 return "" 359 } 360 361 func (x *Selector) GetCount() uint32 { 362 if x != nil { 363 return x.Count 364 } 365 return 0 366 } 367 368 func (x *Selector) GetClause() Clause { 369 if x != nil { 370 return x.Clause 371 } 372 return Clause_CLAUSE_UNSPECIFIED 373 } 374 375 func (x *Selector) GetAttribute() string { 376 if x != nil { 377 return x.Attribute 378 } 379 return "" 380 } 381 382 func (x *Selector) GetFilter() string { 383 if x != nil { 384 return x.Filter 385 } 386 return "" 387 } 388 389 // Number of object replicas in a set of nodes from the defined selector. If no 390 // selector set, the root bucket containing all possible nodes will be used by 391 // default. 392 type Replica struct { 393 state protoimpl.MessageState 394 sizeCache protoimpl.SizeCache 395 unknownFields protoimpl.UnknownFields 396 397 // How many object replicas to put 398 Count uint32 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` 399 // Named selector bucket to put replicas 400 Selector string `protobuf:"bytes,2,opt,name=selector,proto3" json:"selector,omitempty"` 401 } 402 403 func (x *Replica) Reset() { 404 *x = Replica{} 405 if protoimpl.UnsafeEnabled { 406 mi := &file_netmap_grpc_types_proto_msgTypes[2] 407 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 408 ms.StoreMessageInfo(mi) 409 } 410 } 411 412 func (x *Replica) String() string { 413 return protoimpl.X.MessageStringOf(x) 414 } 415 416 func (*Replica) ProtoMessage() {} 417 418 func (x *Replica) ProtoReflect() protoreflect.Message { 419 mi := &file_netmap_grpc_types_proto_msgTypes[2] 420 if protoimpl.UnsafeEnabled && x != nil { 421 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 422 if ms.LoadMessageInfo() == nil { 423 ms.StoreMessageInfo(mi) 424 } 425 return ms 426 } 427 return mi.MessageOf(x) 428 } 429 430 // Deprecated: Use Replica.ProtoReflect.Descriptor instead. 431 func (*Replica) Descriptor() ([]byte, []int) { 432 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{2} 433 } 434 435 func (x *Replica) GetCount() uint32 { 436 if x != nil { 437 return x.Count 438 } 439 return 0 440 } 441 442 func (x *Replica) GetSelector() string { 443 if x != nil { 444 return x.Selector 445 } 446 return "" 447 } 448 449 // Set of rules to select a subset of nodes from `NetworkMap` able to store 450 // container's objects. The format is simple enough to transpile from different 451 // storage policy definition languages. 452 type PlacementPolicy struct { 453 state protoimpl.MessageState 454 sizeCache protoimpl.SizeCache 455 unknownFields protoimpl.UnknownFields 456 457 // Rules to set number of object replicas and place each one into a named 458 // bucket 459 Replicas []*Replica `protobuf:"bytes,1,rep,name=replicas,proto3" json:"replicas,omitempty"` 460 // Container backup factor controls how deep NeoFS will search for nodes 461 // alternatives to include into container's nodes subset 462 ContainerBackupFactor uint32 `protobuf:"varint,2,opt,name=container_backup_factor,json=containerBackupFactor,proto3" json:"container_backup_factor,omitempty"` 463 // Set of Selectors to form the container's nodes subset 464 Selectors []*Selector `protobuf:"bytes,3,rep,name=selectors,proto3" json:"selectors,omitempty"` 465 // List of named filters to reference in selectors 466 Filters []*Filter `protobuf:"bytes,4,rep,name=filters,proto3" json:"filters,omitempty"` 467 // Subnetwork ID to select nodes from. Zero subnet (default) represents 468 // all of the nodes which didn't explicitly opt out of membership. 469 SubnetId *grpc.SubnetID `protobuf:"bytes,5,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"` 470 } 471 472 func (x *PlacementPolicy) Reset() { 473 *x = PlacementPolicy{} 474 if protoimpl.UnsafeEnabled { 475 mi := &file_netmap_grpc_types_proto_msgTypes[3] 476 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 477 ms.StoreMessageInfo(mi) 478 } 479 } 480 481 func (x *PlacementPolicy) String() string { 482 return protoimpl.X.MessageStringOf(x) 483 } 484 485 func (*PlacementPolicy) ProtoMessage() {} 486 487 func (x *PlacementPolicy) ProtoReflect() protoreflect.Message { 488 mi := &file_netmap_grpc_types_proto_msgTypes[3] 489 if protoimpl.UnsafeEnabled && x != nil { 490 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 491 if ms.LoadMessageInfo() == nil { 492 ms.StoreMessageInfo(mi) 493 } 494 return ms 495 } 496 return mi.MessageOf(x) 497 } 498 499 // Deprecated: Use PlacementPolicy.ProtoReflect.Descriptor instead. 500 func (*PlacementPolicy) Descriptor() ([]byte, []int) { 501 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{3} 502 } 503 504 func (x *PlacementPolicy) GetReplicas() []*Replica { 505 if x != nil { 506 return x.Replicas 507 } 508 return nil 509 } 510 511 func (x *PlacementPolicy) GetContainerBackupFactor() uint32 { 512 if x != nil { 513 return x.ContainerBackupFactor 514 } 515 return 0 516 } 517 518 func (x *PlacementPolicy) GetSelectors() []*Selector { 519 if x != nil { 520 return x.Selectors 521 } 522 return nil 523 } 524 525 func (x *PlacementPolicy) GetFilters() []*Filter { 526 if x != nil { 527 return x.Filters 528 } 529 return nil 530 } 531 532 func (x *PlacementPolicy) GetSubnetId() *grpc.SubnetID { 533 if x != nil { 534 return x.SubnetId 535 } 536 return nil 537 } 538 539 // NeoFS node description 540 type NodeInfo struct { 541 state protoimpl.MessageState 542 sizeCache protoimpl.SizeCache 543 unknownFields protoimpl.UnknownFields 544 545 // Public key of the NeoFS node in a binary format 546 PublicKey []byte `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"` 547 // Ways to connect to a node 548 Addresses []string `protobuf:"bytes,2,rep,name=addresses,proto3" json:"addresses,omitempty"` 549 // Carries list of the NeoFS node attributes in a key-value form. Key name 550 // must be a node-unique valid UTF-8 string. Value can't be empty. NodeInfo 551 // structures with duplicated attribute names or attributes with empty values 552 // will be considered invalid. 553 Attributes []*NodeInfo_Attribute `protobuf:"bytes,3,rep,name=attributes,proto3" json:"attributes,omitempty"` 554 // Carries state of the NeoFS node 555 State NodeInfo_State `protobuf:"varint,4,opt,name=state,proto3,enum=neo.fs.v2.netmap.NodeInfo_State" json:"state,omitempty"` 556 } 557 558 func (x *NodeInfo) Reset() { 559 *x = NodeInfo{} 560 if protoimpl.UnsafeEnabled { 561 mi := &file_netmap_grpc_types_proto_msgTypes[4] 562 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 563 ms.StoreMessageInfo(mi) 564 } 565 } 566 567 func (x *NodeInfo) String() string { 568 return protoimpl.X.MessageStringOf(x) 569 } 570 571 func (*NodeInfo) ProtoMessage() {} 572 573 func (x *NodeInfo) ProtoReflect() protoreflect.Message { 574 mi := &file_netmap_grpc_types_proto_msgTypes[4] 575 if protoimpl.UnsafeEnabled && x != nil { 576 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 577 if ms.LoadMessageInfo() == nil { 578 ms.StoreMessageInfo(mi) 579 } 580 return ms 581 } 582 return mi.MessageOf(x) 583 } 584 585 // Deprecated: Use NodeInfo.ProtoReflect.Descriptor instead. 586 func (*NodeInfo) Descriptor() ([]byte, []int) { 587 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{4} 588 } 589 590 func (x *NodeInfo) GetPublicKey() []byte { 591 if x != nil { 592 return x.PublicKey 593 } 594 return nil 595 } 596 597 func (x *NodeInfo) GetAddresses() []string { 598 if x != nil { 599 return x.Addresses 600 } 601 return nil 602 } 603 604 func (x *NodeInfo) GetAttributes() []*NodeInfo_Attribute { 605 if x != nil { 606 return x.Attributes 607 } 608 return nil 609 } 610 611 func (x *NodeInfo) GetState() NodeInfo_State { 612 if x != nil { 613 return x.State 614 } 615 return NodeInfo_UNSPECIFIED 616 } 617 618 // Network map structure 619 type Netmap struct { 620 state protoimpl.MessageState 621 sizeCache protoimpl.SizeCache 622 unknownFields protoimpl.UnknownFields 623 624 // Network map revision number. 625 Epoch uint64 `protobuf:"varint,1,opt,name=epoch,proto3" json:"epoch,omitempty"` 626 // Nodes presented in network. 627 Nodes []*NodeInfo `protobuf:"bytes,2,rep,name=nodes,proto3" json:"nodes,omitempty"` 628 } 629 630 func (x *Netmap) Reset() { 631 *x = Netmap{} 632 if protoimpl.UnsafeEnabled { 633 mi := &file_netmap_grpc_types_proto_msgTypes[5] 634 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 635 ms.StoreMessageInfo(mi) 636 } 637 } 638 639 func (x *Netmap) String() string { 640 return protoimpl.X.MessageStringOf(x) 641 } 642 643 func (*Netmap) ProtoMessage() {} 644 645 func (x *Netmap) ProtoReflect() protoreflect.Message { 646 mi := &file_netmap_grpc_types_proto_msgTypes[5] 647 if protoimpl.UnsafeEnabled && x != nil { 648 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 649 if ms.LoadMessageInfo() == nil { 650 ms.StoreMessageInfo(mi) 651 } 652 return ms 653 } 654 return mi.MessageOf(x) 655 } 656 657 // Deprecated: Use Netmap.ProtoReflect.Descriptor instead. 658 func (*Netmap) Descriptor() ([]byte, []int) { 659 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{5} 660 } 661 662 func (x *Netmap) GetEpoch() uint64 { 663 if x != nil { 664 return x.Epoch 665 } 666 return 0 667 } 668 669 func (x *Netmap) GetNodes() []*NodeInfo { 670 if x != nil { 671 return x.Nodes 672 } 673 return nil 674 } 675 676 // NeoFS network configuration 677 type NetworkConfig struct { 678 state protoimpl.MessageState 679 sizeCache protoimpl.SizeCache 680 unknownFields protoimpl.UnknownFields 681 682 // List of parameter values 683 Parameters []*NetworkConfig_Parameter `protobuf:"bytes,1,rep,name=parameters,proto3" json:"parameters,omitempty"` 684 } 685 686 func (x *NetworkConfig) Reset() { 687 *x = NetworkConfig{} 688 if protoimpl.UnsafeEnabled { 689 mi := &file_netmap_grpc_types_proto_msgTypes[6] 690 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 691 ms.StoreMessageInfo(mi) 692 } 693 } 694 695 func (x *NetworkConfig) String() string { 696 return protoimpl.X.MessageStringOf(x) 697 } 698 699 func (*NetworkConfig) ProtoMessage() {} 700 701 func (x *NetworkConfig) ProtoReflect() protoreflect.Message { 702 mi := &file_netmap_grpc_types_proto_msgTypes[6] 703 if protoimpl.UnsafeEnabled && x != nil { 704 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 705 if ms.LoadMessageInfo() == nil { 706 ms.StoreMessageInfo(mi) 707 } 708 return ms 709 } 710 return mi.MessageOf(x) 711 } 712 713 // Deprecated: Use NetworkConfig.ProtoReflect.Descriptor instead. 714 func (*NetworkConfig) Descriptor() ([]byte, []int) { 715 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{6} 716 } 717 718 func (x *NetworkConfig) GetParameters() []*NetworkConfig_Parameter { 719 if x != nil { 720 return x.Parameters 721 } 722 return nil 723 } 724 725 // Information about NeoFS network 726 type NetworkInfo struct { 727 state protoimpl.MessageState 728 sizeCache protoimpl.SizeCache 729 unknownFields protoimpl.UnknownFields 730 731 // Number of the current epoch in the NeoFS network 732 CurrentEpoch uint64 `protobuf:"varint,1,opt,name=current_epoch,json=currentEpoch,proto3" json:"current_epoch,omitempty"` 733 // Magic number of the sidechain of the NeoFS network 734 MagicNumber uint64 `protobuf:"varint,2,opt,name=magic_number,json=magicNumber,proto3" json:"magic_number,omitempty"` 735 // MillisecondsPerBlock network parameter of the sidechain of the NeoFS network 736 MsPerBlock int64 `protobuf:"varint,3,opt,name=ms_per_block,json=msPerBlock,proto3" json:"ms_per_block,omitempty"` 737 // NeoFS network configuration 738 NetworkConfig *NetworkConfig `protobuf:"bytes,4,opt,name=network_config,json=networkConfig,proto3" json:"network_config,omitempty"` 739 } 740 741 func (x *NetworkInfo) Reset() { 742 *x = NetworkInfo{} 743 if protoimpl.UnsafeEnabled { 744 mi := &file_netmap_grpc_types_proto_msgTypes[7] 745 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 746 ms.StoreMessageInfo(mi) 747 } 748 } 749 750 func (x *NetworkInfo) String() string { 751 return protoimpl.X.MessageStringOf(x) 752 } 753 754 func (*NetworkInfo) ProtoMessage() {} 755 756 func (x *NetworkInfo) ProtoReflect() protoreflect.Message { 757 mi := &file_netmap_grpc_types_proto_msgTypes[7] 758 if protoimpl.UnsafeEnabled && x != nil { 759 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 760 if ms.LoadMessageInfo() == nil { 761 ms.StoreMessageInfo(mi) 762 } 763 return ms 764 } 765 return mi.MessageOf(x) 766 } 767 768 // Deprecated: Use NetworkInfo.ProtoReflect.Descriptor instead. 769 func (*NetworkInfo) Descriptor() ([]byte, []int) { 770 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{7} 771 } 772 773 func (x *NetworkInfo) GetCurrentEpoch() uint64 { 774 if x != nil { 775 return x.CurrentEpoch 776 } 777 return 0 778 } 779 780 func (x *NetworkInfo) GetMagicNumber() uint64 { 781 if x != nil { 782 return x.MagicNumber 783 } 784 return 0 785 } 786 787 func (x *NetworkInfo) GetMsPerBlock() int64 { 788 if x != nil { 789 return x.MsPerBlock 790 } 791 return 0 792 } 793 794 func (x *NetworkInfo) GetNetworkConfig() *NetworkConfig { 795 if x != nil { 796 return x.NetworkConfig 797 } 798 return nil 799 } 800 801 // Administrator-defined Attributes of the NeoFS Storage Node. 802 // 803 // `Attribute` is a Key-Value metadata pair. Key name must be a valid UTF-8 804 // string. Value can't be empty. 805 // 806 // Attributes can be constructed into a chain of attributes: any attribute can 807 // have a parent attribute and a child attribute (except the first and the last 808 // one). A string representation of the chain of attributes in NeoFS Storage 809 // Node configuration uses ":" and "/" symbols, e.g.: 810 // 811 // `NEOFS_NODE_ATTRIBUTE_1=key1:val1/key2:val2` 812 // 813 // Therefore the string attribute representation in the Node configuration must 814 // use "\:", "\/" and "\\" escaped symbols if any of them appears in an attribute's 815 // key or value. 816 // 817 // Node's attributes are mostly used during Storage Policy evaluation to 818 // calculate object's placement and find a set of nodes satisfying policy 819 // requirements. There are some "well-known" node attributes common to all the 820 // Storage Nodes in the network and used implicitly with default values if not 821 // explicitly set: 822 // 823 // - Capacity \ 824 // Total available disk space in Gigabytes. 825 // - Price \ 826 // Price in GAS tokens for storing one GB of data during one Epoch. In node 827 // attributes it's a string presenting floating point number with comma or 828 // point delimiter for decimal part. In the Network Map it will be saved as 829 // 64-bit unsigned integer representing number of minimal token fractions. 830 // - __NEOFS__SUBNET_%s \ 831 // `True` or `False`. Defines if the node is included in the `%s` subnetwork 832 // or not. `%s` must be an existing subnetwork's ID (non-negative integer number). 833 // A node can be included in more than one subnetwork and, therefore, can contain 834 // more than one subnet attribute. A missing attribute is equivalent to the 835 // presence of the attribute with `False` value (except default zero subnetwork 836 // (with `%s` == 0) for which missing attribute means inclusion in that network). 837 // - UN-LOCODE \ 838 // Node's geographic location in 839 // [UN/LOCODE](https://www.unece.org/cefact/codesfortrade/codes_index.html) 840 // format approximated to the nearest point defined in the standard. 841 // - CountryCode \ 842 // Country code in 843 // [ISO 3166-1_alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) 844 // format. Calculated automatically from `UN-LOCODE` attribute. 845 // - Country \ 846 // Country short name in English, as defined in 847 // [ISO-3166](https://www.iso.org/obp/ui/#search). Calculated automatically 848 // from `UN-LOCODE` attribute. 849 // - Location \ 850 // Place names are given, whenever possible, in their national language 851 // versions as expressed in the Roman alphabet using the 26 characters of 852 // the character set adopted for international trade data interchange, 853 // written without diacritics . Calculated automatically from `UN-LOCODE` 854 // attribute. 855 // - SubDivCode \ 856 // Country's administrative subdivision where node is located. Calculated 857 // automatically from `UN-LOCODE` attribute based on `SubDiv` field. 858 // Presented in [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) 859 // format. 860 // - SubDiv \ 861 // Country's administrative subdivision name, as defined in 862 // [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2). Calculated 863 // automatically from `UN-LOCODE` attribute. 864 // - Continent \ 865 // Node's continent name according to the [Seven-Continent model] 866 // (https://en.wikipedia.org/wiki/Continent#Number). Calculated 867 // automatically from `UN-LOCODE` attribute. 868 // - ExternalAddr 869 // Node's preferred way for communications with external clients. 870 // Clients SHOULD use these addresses if possible. 871 // Must contain a comma-separated list of multi-addresses. 872 // 873 // For detailed description of each well-known attribute please see the 874 // corresponding section in NeoFS Technical Specification. 875 type NodeInfo_Attribute struct { 876 state protoimpl.MessageState 877 sizeCache protoimpl.SizeCache 878 unknownFields protoimpl.UnknownFields 879 880 // Key of the node attribute 881 Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 882 // Value of the node attribute 883 Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` 884 // Parent keys, if any. For example for `City` it could be `Region` and 885 // `Country`. 886 Parents []string `protobuf:"bytes,3,rep,name=parents,proto3" json:"parents,omitempty"` 887 } 888 889 func (x *NodeInfo_Attribute) Reset() { 890 *x = NodeInfo_Attribute{} 891 if protoimpl.UnsafeEnabled { 892 mi := &file_netmap_grpc_types_proto_msgTypes[8] 893 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 894 ms.StoreMessageInfo(mi) 895 } 896 } 897 898 func (x *NodeInfo_Attribute) String() string { 899 return protoimpl.X.MessageStringOf(x) 900 } 901 902 func (*NodeInfo_Attribute) ProtoMessage() {} 903 904 func (x *NodeInfo_Attribute) ProtoReflect() protoreflect.Message { 905 mi := &file_netmap_grpc_types_proto_msgTypes[8] 906 if protoimpl.UnsafeEnabled && x != nil { 907 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 908 if ms.LoadMessageInfo() == nil { 909 ms.StoreMessageInfo(mi) 910 } 911 return ms 912 } 913 return mi.MessageOf(x) 914 } 915 916 // Deprecated: Use NodeInfo_Attribute.ProtoReflect.Descriptor instead. 917 func (*NodeInfo_Attribute) Descriptor() ([]byte, []int) { 918 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{4, 0} 919 } 920 921 func (x *NodeInfo_Attribute) GetKey() string { 922 if x != nil { 923 return x.Key 924 } 925 return "" 926 } 927 928 func (x *NodeInfo_Attribute) GetValue() string { 929 if x != nil { 930 return x.Value 931 } 932 return "" 933 } 934 935 func (x *NodeInfo_Attribute) GetParents() []string { 936 if x != nil { 937 return x.Parents 938 } 939 return nil 940 } 941 942 // Single configuration parameter. Key MUST be network-unique. 943 // 944 // System parameters: 945 // - **AuditFee** \ 946 // Fee paid by the storage group owner to the Inner Ring member. 947 // Value: little-endian integer. Default: 0. 948 // - **BasicIncomeRate** \ 949 // Cost of storing one gigabyte of data for a period of one epoch. Paid by 950 // container owner to container nodes. 951 // Value: little-endian integer. Default: 0. 952 // - **ContainerAliasFee** \ 953 // Fee paid for named container's creation by the container owner. 954 // Value: little-endian integer. Default: 0. 955 // - **ContainerFee** \ 956 // Fee paid for container creation by the container owner. 957 // Value: little-endian integer. Default: 0. 958 // - **EigenTrustAlpha** \ 959 // Alpha parameter of EigenTrust algorithm used in the Reputation system. 960 // Value: decimal floating-point number in UTF-8 string representation. 961 // Default: 0. 962 // - **EigenTrustIterations** \ 963 // Number of EigenTrust algorithm iterations to pass in the Reputation system. 964 // Value: little-endian integer. Default: 0. 965 // - **EpochDuration** \ 966 // NeoFS epoch duration measured in Sidechain blocks. 967 // Value: little-endian integer. Default: 0. 968 // - **HomomorphicHashingDisabled** \ 969 // Flag of disabling the homomorphic hashing of objects' payload. 970 // Value: true if any byte != 0. Default: false. 971 // - **InnerRingCandidateFee** \ 972 // Fee for entrance to the Inner Ring paid by the candidate. 973 // Value: little-endian integer. Default: 0. 974 // - **MaintenanceModeAllowed** \ 975 // Flag allowing setting the MAINTENANCE state to storage nodes. 976 // Value: true if any byte != 0. Default: false. 977 // - **MaxObjectSize** \ 978 // Maximum size of physically stored NeoFS object measured in bytes. 979 // Value: little-endian integer. Default: 0. 980 // - **WithdrawFee** \ 981 // Fee paid for withdrawal of funds paid by the account owner. 982 // Value: little-endian integer. Default: 0. 983 type NetworkConfig_Parameter struct { 984 state protoimpl.MessageState 985 sizeCache protoimpl.SizeCache 986 unknownFields protoimpl.UnknownFields 987 988 // Parameter key. UTF-8 encoded string 989 Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` 990 // Parameter value 991 Value []byte `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` 992 } 993 994 func (x *NetworkConfig_Parameter) Reset() { 995 *x = NetworkConfig_Parameter{} 996 if protoimpl.UnsafeEnabled { 997 mi := &file_netmap_grpc_types_proto_msgTypes[9] 998 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 999 ms.StoreMessageInfo(mi) 1000 } 1001 } 1002 1003 func (x *NetworkConfig_Parameter) String() string { 1004 return protoimpl.X.MessageStringOf(x) 1005 } 1006 1007 func (*NetworkConfig_Parameter) ProtoMessage() {} 1008 1009 func (x *NetworkConfig_Parameter) ProtoReflect() protoreflect.Message { 1010 mi := &file_netmap_grpc_types_proto_msgTypes[9] 1011 if protoimpl.UnsafeEnabled && x != nil { 1012 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1013 if ms.LoadMessageInfo() == nil { 1014 ms.StoreMessageInfo(mi) 1015 } 1016 return ms 1017 } 1018 return mi.MessageOf(x) 1019 } 1020 1021 // Deprecated: Use NetworkConfig_Parameter.ProtoReflect.Descriptor instead. 1022 func (*NetworkConfig_Parameter) Descriptor() ([]byte, []int) { 1023 return file_netmap_grpc_types_proto_rawDescGZIP(), []int{6, 0} 1024 } 1025 1026 func (x *NetworkConfig_Parameter) GetKey() []byte { 1027 if x != nil { 1028 return x.Key 1029 } 1030 return nil 1031 } 1032 1033 func (x *NetworkConfig_Parameter) GetValue() []byte { 1034 if x != nil { 1035 return x.Value 1036 } 1037 return nil 1038 } 1039 1040 var File_netmap_grpc_types_proto protoreflect.FileDescriptor 1041 1042 var file_netmap_grpc_types_proto_rawDesc = []byte{ 1043 0x0a, 0x17, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74, 0x79, 1044 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 1045 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x1a, 0x15, 0x72, 0x65, 0x66, 1046 0x73, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 1047 0x74, 0x6f, 0x22, 0xa5, 0x01, 0x0a, 0x06, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x12, 0x0a, 1048 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 1049 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 1050 0x6b, 0x65, 0x79, 0x12, 0x2b, 0x0a, 0x02, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 1051 0x1b, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 1052 0x61, 0x70, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x02, 0x6f, 0x70, 1053 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 1054 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 1055 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 1056 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 1057 0x72, 0x52, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x22, 0x9c, 0x01, 0x0a, 0x08, 0x53, 1058 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 1059 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x63, 1060 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 1061 0x74, 0x12, 0x30, 0x0a, 0x06, 0x63, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 1062 0x0e, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 1063 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x43, 0x6c, 0x61, 0x75, 0x73, 0x65, 0x52, 0x06, 0x63, 0x6c, 0x61, 1064 0x75, 0x73, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 1065 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 1066 0x65, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 1067 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x3b, 0x0a, 0x07, 0x52, 0x65, 0x70, 1068 0x6c, 0x69, 0x63, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 1069 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 1070 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 1071 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x22, 0xa5, 0x02, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x63, 0x65, 1072 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x35, 0x0a, 0x08, 0x72, 0x65, 1073 0x70, 0x6c, 0x69, 0x63, 0x61, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6e, 1074 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 1075 0x52, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x63, 0x61, 1076 0x73, 0x12, 0x36, 0x0a, 0x17, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x62, 1077 0x61, 0x63, 0x6b, 0x75, 0x70, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 1078 0x28, 0x0d, 0x52, 0x15, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x42, 0x61, 0x63, 1079 0x6b, 0x75, 0x70, 0x46, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x12, 0x38, 0x0a, 0x09, 0x73, 0x65, 0x6c, 1080 0x65, 0x63, 0x74, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 1081 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 1082 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x52, 0x09, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 1083 0x6f, 0x72, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, 1084 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 1085 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x52, 0x07, 1086 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x12, 0x35, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 1087 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 1088 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x53, 0x75, 0x62, 0x6e, 1089 0x65, 0x74, 0x49, 0x44, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x22, 0xd8, 1090 0x02, 0x0a, 0x08, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 1091 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 1092 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x64, 1093 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 1094 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x44, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 1095 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6e, 1096 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 1097 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 1098 0x74, 0x65, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x36, 1099 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x20, 0x2e, 1100 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 1101 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 1102 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x1a, 0x4d, 0x0a, 0x09, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 1103 0x75, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 1104 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 1105 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x70, 1106 0x61, 0x72, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x70, 0x61, 1107 0x72, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x42, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0f, 1108 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 1109 0x0a, 0x0a, 0x06, 0x4f, 0x4e, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 1110 0x46, 0x46, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x41, 0x49, 0x4e, 1111 0x54, 0x45, 0x4e, 0x41, 0x4e, 0x43, 0x45, 0x10, 0x03, 0x22, 0x50, 0x0a, 0x06, 0x4e, 0x65, 0x74, 1112 0x6d, 0x61, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 1113 0x28, 0x04, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x30, 0x0a, 0x05, 0x6e, 0x6f, 0x64, 1114 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 1115 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 1116 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x6e, 0x6f, 0x64, 0x65, 0x73, 0x22, 0x8f, 0x01, 0x0a, 0x0d, 1117 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x49, 0x0a, 1118 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 1119 0x0b, 0x32, 0x29, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 1120 0x74, 0x6d, 0x61, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 1121 0x69, 0x67, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x52, 0x0a, 0x70, 0x61, 1122 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x1a, 0x33, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 1123 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 1124 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 1125 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xbf, 0x01, 1126 0x0a, 0x0b, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x23, 0x0a, 1127 0x0d, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x18, 0x01, 1128 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x45, 0x70, 0x6f, 1129 0x63, 0x68, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 1130 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x4e, 1131 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x20, 0x0a, 0x0c, 0x6d, 0x73, 0x5f, 0x70, 0x65, 0x72, 0x5f, 1132 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6d, 0x73, 0x50, 1133 0x65, 0x72, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x12, 0x46, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 1134 0x72, 0x6b, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 1135 0x1f, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x6e, 0x65, 0x74, 0x6d, 1136 0x61, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1137 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2a, 1138 0x67, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x19, 0x0a, 0x15, 1139 0x4f, 0x50, 0x45, 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 1140 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x45, 0x51, 0x10, 0x01, 0x12, 1141 0x06, 0x0a, 0x02, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x54, 0x10, 0x03, 0x12, 1142 0x06, 0x0a, 0x02, 0x47, 0x45, 0x10, 0x04, 0x12, 0x06, 0x0a, 0x02, 0x4c, 0x54, 0x10, 0x05, 0x12, 1143 0x06, 0x0a, 0x02, 0x4c, 0x45, 0x10, 0x06, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x52, 0x10, 0x07, 0x12, 1144 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x44, 0x10, 0x08, 0x2a, 0x38, 0x0a, 0x06, 0x43, 0x6c, 0x61, 0x75, 1145 0x73, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x4c, 0x41, 0x55, 0x53, 0x45, 0x5f, 0x55, 0x4e, 0x53, 1146 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x41, 1147 0x4d, 0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x49, 0x53, 0x54, 0x49, 0x4e, 0x43, 0x54, 1148 0x10, 0x02, 0x42, 0x5b, 0x5a, 0x3c, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 1149 0x2f, 0x54, 0x72, 0x75, 0x65, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x4c, 0x61, 0x62, 0x2f, 0x66, 0x72, 1150 0x6f, 0x73, 0x74, 0x66, 0x73, 0x2d, 0x61, 0x70, 0x69, 0x2d, 0x67, 0x6f, 0x2f, 0x76, 0x32, 0x2f, 1151 0x6e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x3b, 0x6e, 0x65, 0x74, 0x6d, 1152 0x61, 0x70, 0xaa, 0x02, 0x1a, 0x4e, 0x65, 0x6f, 0x2e, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x74, 0x6f, 1153 0x72, 0x61, 0x67, 0x65, 0x2e, 0x41, 0x50, 0x49, 0x2e, 0x4e, 0x65, 0x74, 0x6d, 0x61, 0x70, 0x62, 1154 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 1155 } 1156 1157 var ( 1158 file_netmap_grpc_types_proto_rawDescOnce sync.Once 1159 file_netmap_grpc_types_proto_rawDescData = file_netmap_grpc_types_proto_rawDesc 1160 ) 1161 1162 func file_netmap_grpc_types_proto_rawDescGZIP() []byte { 1163 file_netmap_grpc_types_proto_rawDescOnce.Do(func() { 1164 file_netmap_grpc_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_netmap_grpc_types_proto_rawDescData) 1165 }) 1166 return file_netmap_grpc_types_proto_rawDescData 1167 } 1168 1169 var file_netmap_grpc_types_proto_enumTypes = make([]protoimpl.EnumInfo, 3) 1170 var file_netmap_grpc_types_proto_msgTypes = make([]protoimpl.MessageInfo, 10) 1171 var file_netmap_grpc_types_proto_goTypes = []interface{}{ 1172 (Operation)(0), // 0: neo.fs.v2.netmap.Operation 1173 (Clause)(0), // 1: neo.fs.v2.netmap.Clause 1174 (NodeInfo_State)(0), // 2: neo.fs.v2.netmap.NodeInfo.State 1175 (*Filter)(nil), // 3: neo.fs.v2.netmap.Filter 1176 (*Selector)(nil), // 4: neo.fs.v2.netmap.Selector 1177 (*Replica)(nil), // 5: neo.fs.v2.netmap.Replica 1178 (*PlacementPolicy)(nil), // 6: neo.fs.v2.netmap.PlacementPolicy 1179 (*NodeInfo)(nil), // 7: neo.fs.v2.netmap.NodeInfo 1180 (*Netmap)(nil), // 8: neo.fs.v2.netmap.Netmap 1181 (*NetworkConfig)(nil), // 9: neo.fs.v2.netmap.NetworkConfig 1182 (*NetworkInfo)(nil), // 10: neo.fs.v2.netmap.NetworkInfo 1183 (*NodeInfo_Attribute)(nil), // 11: neo.fs.v2.netmap.NodeInfo.Attribute 1184 (*NetworkConfig_Parameter)(nil), // 12: neo.fs.v2.netmap.NetworkConfig.Parameter 1185 (*grpc.SubnetID)(nil), // 13: neo.fs.v2.refs.SubnetID 1186 } 1187 var file_netmap_grpc_types_proto_depIdxs = []int32{ 1188 0, // 0: neo.fs.v2.netmap.Filter.op:type_name -> neo.fs.v2.netmap.Operation 1189 3, // 1: neo.fs.v2.netmap.Filter.filters:type_name -> neo.fs.v2.netmap.Filter 1190 1, // 2: neo.fs.v2.netmap.Selector.clause:type_name -> neo.fs.v2.netmap.Clause 1191 5, // 3: neo.fs.v2.netmap.PlacementPolicy.replicas:type_name -> neo.fs.v2.netmap.Replica 1192 4, // 4: neo.fs.v2.netmap.PlacementPolicy.selectors:type_name -> neo.fs.v2.netmap.Selector 1193 3, // 5: neo.fs.v2.netmap.PlacementPolicy.filters:type_name -> neo.fs.v2.netmap.Filter 1194 13, // 6: neo.fs.v2.netmap.PlacementPolicy.subnet_id:type_name -> neo.fs.v2.refs.SubnetID 1195 11, // 7: neo.fs.v2.netmap.NodeInfo.attributes:type_name -> neo.fs.v2.netmap.NodeInfo.Attribute 1196 2, // 8: neo.fs.v2.netmap.NodeInfo.state:type_name -> neo.fs.v2.netmap.NodeInfo.State 1197 7, // 9: neo.fs.v2.netmap.Netmap.nodes:type_name -> neo.fs.v2.netmap.NodeInfo 1198 12, // 10: neo.fs.v2.netmap.NetworkConfig.parameters:type_name -> neo.fs.v2.netmap.NetworkConfig.Parameter 1199 9, // 11: neo.fs.v2.netmap.NetworkInfo.network_config:type_name -> neo.fs.v2.netmap.NetworkConfig 1200 12, // [12:12] is the sub-list for method output_type 1201 12, // [12:12] is the sub-list for method input_type 1202 12, // [12:12] is the sub-list for extension type_name 1203 12, // [12:12] is the sub-list for extension extendee 1204 0, // [0:12] is the sub-list for field type_name 1205 } 1206 1207 func init() { file_netmap_grpc_types_proto_init() } 1208 func file_netmap_grpc_types_proto_init() { 1209 if File_netmap_grpc_types_proto != nil { 1210 return 1211 } 1212 if !protoimpl.UnsafeEnabled { 1213 file_netmap_grpc_types_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 1214 switch v := v.(*Filter); i { 1215 case 0: 1216 return &v.state 1217 case 1: 1218 return &v.sizeCache 1219 case 2: 1220 return &v.unknownFields 1221 default: 1222 return nil 1223 } 1224 } 1225 file_netmap_grpc_types_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 1226 switch v := v.(*Selector); i { 1227 case 0: 1228 return &v.state 1229 case 1: 1230 return &v.sizeCache 1231 case 2: 1232 return &v.unknownFields 1233 default: 1234 return nil 1235 } 1236 } 1237 file_netmap_grpc_types_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 1238 switch v := v.(*Replica); i { 1239 case 0: 1240 return &v.state 1241 case 1: 1242 return &v.sizeCache 1243 case 2: 1244 return &v.unknownFields 1245 default: 1246 return nil 1247 } 1248 } 1249 file_netmap_grpc_types_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 1250 switch v := v.(*PlacementPolicy); i { 1251 case 0: 1252 return &v.state 1253 case 1: 1254 return &v.sizeCache 1255 case 2: 1256 return &v.unknownFields 1257 default: 1258 return nil 1259 } 1260 } 1261 file_netmap_grpc_types_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 1262 switch v := v.(*NodeInfo); i { 1263 case 0: 1264 return &v.state 1265 case 1: 1266 return &v.sizeCache 1267 case 2: 1268 return &v.unknownFields 1269 default: 1270 return nil 1271 } 1272 } 1273 file_netmap_grpc_types_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 1274 switch v := v.(*Netmap); i { 1275 case 0: 1276 return &v.state 1277 case 1: 1278 return &v.sizeCache 1279 case 2: 1280 return &v.unknownFields 1281 default: 1282 return nil 1283 } 1284 } 1285 file_netmap_grpc_types_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 1286 switch v := v.(*NetworkConfig); i { 1287 case 0: 1288 return &v.state 1289 case 1: 1290 return &v.sizeCache 1291 case 2: 1292 return &v.unknownFields 1293 default: 1294 return nil 1295 } 1296 } 1297 file_netmap_grpc_types_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 1298 switch v := v.(*NetworkInfo); i { 1299 case 0: 1300 return &v.state 1301 case 1: 1302 return &v.sizeCache 1303 case 2: 1304 return &v.unknownFields 1305 default: 1306 return nil 1307 } 1308 } 1309 file_netmap_grpc_types_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 1310 switch v := v.(*NodeInfo_Attribute); i { 1311 case 0: 1312 return &v.state 1313 case 1: 1314 return &v.sizeCache 1315 case 2: 1316 return &v.unknownFields 1317 default: 1318 return nil 1319 } 1320 } 1321 file_netmap_grpc_types_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 1322 switch v := v.(*NetworkConfig_Parameter); i { 1323 case 0: 1324 return &v.state 1325 case 1: 1326 return &v.sizeCache 1327 case 2: 1328 return &v.unknownFields 1329 default: 1330 return nil 1331 } 1332 } 1333 } 1334 type x struct{} 1335 out := protoimpl.TypeBuilder{ 1336 File: protoimpl.DescBuilder{ 1337 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 1338 RawDescriptor: file_netmap_grpc_types_proto_rawDesc, 1339 NumEnums: 3, 1340 NumMessages: 10, 1341 NumExtensions: 0, 1342 NumServices: 0, 1343 }, 1344 GoTypes: file_netmap_grpc_types_proto_goTypes, 1345 DependencyIndexes: file_netmap_grpc_types_proto_depIdxs, 1346 EnumInfos: file_netmap_grpc_types_proto_enumTypes, 1347 MessageInfos: file_netmap_grpc_types_proto_msgTypes, 1348 }.Build() 1349 File_netmap_grpc_types_proto = out.File 1350 file_netmap_grpc_types_proto_rawDesc = nil 1351 file_netmap_grpc_types_proto_goTypes = nil 1352 file_netmap_grpc_types_proto_depIdxs = nil 1353 }