2020-01-30 11:41:24 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
package storagegroup;
|
2020-03-31 06:58:22 +00:00
|
|
|
option go_package = "github.com/nspcc-dev/neofs-api-go/storagegroup";
|
2020-02-05 12:14:39 +00:00
|
|
|
option csharp_namespace = "NeoFS.API.StorageGroup";
|
2020-01-30 11:41:24 +00:00
|
|
|
|
2020-08-04 14:21:44 +00:00
|
|
|
import "refs/types.proto";
|
2020-01-30 11:41:24 +00:00
|
|
|
|
|
|
|
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
|
2020-08-05 08:32:49 +00:00
|
|
|
bytes ValidationHash = 2;
|
2020-01-30 11:41:24 +00:00
|
|
|
|
|
|
|
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
|
2020-08-05 08:32:49 +00:00
|
|
|
Unit unit = 1;
|
2020-01-30 11:41:24 +00:00
|
|
|
// Value for lifetime
|
|
|
|
int64 Value = 2;
|
|
|
|
}
|
|
|
|
|
|
|
|
// Lifetime is time until storage group is valid
|
2020-08-05 08:32:49 +00:00
|
|
|
Lifetime lifetime = 3;
|
2020-08-04 14:21:44 +00:00
|
|
|
|
|
|
|
// Members carries the list of identifiers of the object storage group members.
|
|
|
|
// The list is strictly ordered.
|
|
|
|
repeated refs.ObjectID Members = 4;
|
2020-01-30 11:41:24 +00:00
|
|
|
}
|