frostfs-api/bootstrap/types.proto
Leonard Lyubich 7c71813d22 [#34] bootstrap: Define node state enum in NodeInfo
Replaces Status field of NodeInfo with State field value of NodeInfo.State
enumeration.

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-08-06 23:30:09 +03:00

35 lines
1.1 KiB
Protocol Buffer

syntax = "proto3";
package bootstrap;
option go_package = "github.com/nspcc-dev/neofs-api-go/bootstrap";
option csharp_namespace = "NeoFS.API.Bootstrap";
import "github.com/gogo/protobuf/gogoproto/gogo.proto";
option (gogoproto.stable_marshaler_all) = true;
option (gogoproto.stringer_all) = false;
option (gogoproto.goproto_stringer_all) = false;
message SpreadMap {
// Epoch is current epoch for netmap
uint64 Epoch = 1;
// NetMap is a set of NodeInfos
repeated NodeInfo NetMap = 2 [(gogoproto.nullable) = false];
}
message NodeInfo {
// Address is a node [multi-address](https://github.com/multiformats/multiaddr)
string Address = 1 [(gogoproto.jsontag) = "address"];
// PubKey is a compressed public key representation in bytes
bytes PubKey = 2 [(gogoproto.jsontag) = "pubkey,omitempty"];
// Options is set of node optional information, such as storage capacity, node location, price and etc
repeated string Options = 3 [(gogoproto.jsontag) = "options,omitempty"];
enum State {
Unknown = 0;
Online = 1;
Offline = 2;
}
State state = 4;
}