forked from TrueCloudLab/frostfs-api
49 lines
1.7 KiB
Protocol Buffer
49 lines
1.7 KiB
Protocol Buffer
syntax = "proto3";
|
|
package service;
|
|
option go_package = "github.com/nspcc-dev/neofs-api-go/service";
|
|
option csharp_namespace = "NeoFS.API.Service";
|
|
|
|
import "github.com/gogo/protobuf/gogoproto/gogo.proto";
|
|
|
|
option (gogoproto.stable_marshaler_all) = true;
|
|
|
|
// RequestMetaHeader contains information about request meta headers
|
|
// (should be embedded into message)
|
|
message RequestMetaHeader {
|
|
// TTL must be larger than zero, it decreased in every NeoFS Node
|
|
uint32 TTL = 1;
|
|
// Epoch for user can be empty, because node sets epoch to the actual value
|
|
uint64 Epoch = 2;
|
|
// Version defines protocol version
|
|
// TODO: not used for now, should be implemented in future
|
|
uint32 Version = 3;
|
|
// Raw determines whether the request is raw or not
|
|
bool Raw = 4;
|
|
// ExtendedHeader carries extended headers of the request
|
|
RequestExtendedHeader ExtendedHeader = 5 [(gogoproto.embed) = true, (gogoproto.nullable) = false];
|
|
}
|
|
|
|
// ResponseMetaHeader contains meta information based on request processing by server
|
|
// (should be embedded into message)
|
|
message ResponseMetaHeader {
|
|
// Current NeoFS epoch on server
|
|
uint64 Epoch = 1;
|
|
// Version defines protocol version
|
|
// TODO: not used for now, should be implemented in future
|
|
uint32 Version = 2;
|
|
}
|
|
|
|
// RequestExtendedHeader contains extended headers of request
|
|
message RequestExtendedHeader {
|
|
// KV contains string key-value pair
|
|
message KV {
|
|
// K carries extended header key
|
|
string K = 1;
|
|
|
|
// V carries extended header value
|
|
string V = 2;
|
|
}
|
|
|
|
// Headers carries list of key-value headers
|
|
repeated KV Headers = 1 [(gogoproto.nullable) = false];
|
|
}
|