fb5ccbc407
* Pieces must be name spaced by Satellite * fixed formatting
111 lines
2.1 KiB
Protocol Buffer
111 lines
2.1 KiB
Protocol Buffer
// Copyright (C) 2018 Storj Labs, Inc.
|
|
// See LICENSE for copying information.
|
|
|
|
syntax = "proto3";
|
|
option go_package = "pb";
|
|
|
|
package piecestoreroutes;
|
|
|
|
service PieceStoreRoutes {
|
|
rpc Piece(PieceId) returns (PieceSummary) {}
|
|
|
|
rpc Retrieve(stream PieceRetrieval) returns (stream PieceRetrievalStream) {}
|
|
|
|
rpc Store(stream PieceStore) returns (PieceStoreSummary) {}
|
|
|
|
rpc Delete(PieceDelete) returns (PieceDeleteSummary) {}
|
|
|
|
rpc Stats(StatsReq) returns (StatSummary) {}
|
|
}
|
|
|
|
message PayerBandwidthAllocation {
|
|
message Data {
|
|
bytes payer = 1;
|
|
bytes renter = 2;
|
|
int64 max_size = 3;
|
|
int64 expiration_unix_sec = 4;
|
|
string serial_number = 5;
|
|
}
|
|
bytes signature = 1;
|
|
bytes data = 2; // Serialization of above Data Struct
|
|
}
|
|
|
|
message RenterBandwidthAllocation {
|
|
message Data {
|
|
PayerBandwidthAllocation payer_allocation = 1;
|
|
int64 total = 2;
|
|
}
|
|
|
|
bytes signature = 1;
|
|
bytes data = 2; // Serialization of above Data Struct
|
|
}
|
|
|
|
message PieceStore {
|
|
message PieceData {
|
|
string id = 1;
|
|
int64 expiration_unix_sec = 2;
|
|
bytes content = 3;
|
|
}
|
|
|
|
RenterBandwidthAllocation bandwidthallocation = 1;
|
|
PieceData piecedata = 2;
|
|
SignedMessage authorization = 3;
|
|
}
|
|
|
|
message PieceId {
|
|
string id = 1;
|
|
|
|
SignedMessage authorization = 2;
|
|
}
|
|
|
|
message PieceSummary {
|
|
string id = 1;
|
|
int64 size = 2;
|
|
int64 expiration_unix_sec = 3;
|
|
}
|
|
|
|
message PieceRetrieval {
|
|
message PieceData {
|
|
string id = 1;
|
|
int64 size = 2;
|
|
int64 offset = 3;
|
|
}
|
|
|
|
RenterBandwidthAllocation bandwidthallocation = 1;
|
|
PieceData pieceData = 2;
|
|
SignedMessage authorization = 3;
|
|
}
|
|
|
|
message PieceRetrievalStream {
|
|
int64 size = 1;
|
|
bytes content = 2;
|
|
}
|
|
|
|
message PieceDelete {
|
|
string id = 1;
|
|
SignedMessage authorization = 3;
|
|
}
|
|
|
|
message PieceDeleteSummary {
|
|
string message = 1;
|
|
}
|
|
|
|
message PieceStoreSummary {
|
|
string message = 1;
|
|
int64 totalReceived = 2;
|
|
}
|
|
|
|
message StatsReq {}
|
|
|
|
message StatSummary {
|
|
int64 usedSpace = 1;
|
|
int64 availableSpace = 2;
|
|
int64 usedBandwidth = 3;
|
|
int64 availableBandwidth = 4;
|
|
}
|
|
|
|
message SignedMessage {
|
|
bytes data = 1;
|
|
bytes signature = 2;
|
|
bytes publicKey = 3;
|
|
} |