frostfs-api/storagegroup/types.proto
Leonard Lyubich 248a91b329 [#28] storagegroup: Remove gogoproto from typedef
As mentioned in #32, there is a need to remove gogoproto usage from NeoFS API
since this plugin is not cross-language. This commit removes usage from
StorageGroup message and all related types

Signed-off-by: Leonard Lyubich <leonard@nspcc.ru>
2020-08-06 21:59:42 +03:00

36 lines
1.2 KiB
Protocol Buffer

syntax = "proto3";
package storagegroup;
option go_package = "github.com/nspcc-dev/neofs-api-go/storagegroup";
option csharp_namespace = "NeoFS.API.StorageGroup";
import "refs/types.proto";
message StorageGroup {
// ValidationDataSize is size of the all object's payloads included into storage group
uint64 ValidationDataSize = 1;
// ValidationHash is homomorphic hash of all object's payloads included into storage group
bytes ValidationHash = 2;
message Lifetime {
enum Unit {
// Unlimited set if storage group always valid
Unlimited = 0;
// NeoFSEpoch set if storage group is valid until lifetime NeoFS epoch
NeoFSEpoch = 1;
// UnixTime set if storage group is valid until lifetime unix timestamp
UnixTime = 2;
}
// Unit is lifetime type
Unit unit = 1;
// Value for lifetime
int64 Value = 2;
}
// Lifetime is time until storage group is valid
Lifetime lifetime = 3;
// Members carries the list of identifiers of the object storage group members.
// The list is strictly ordered.
repeated refs.ObjectID Members = 4;
}