17bdb5e9e5
Deprecate the pieceinfo database, and start storing piece info as a header to piece files. Institute a "storage format version" concept allowing us to handle pieces stored under multiple different types of storage. Add a piece_expirations table which will still be used to track expiration times, so we can query it, but which should be much smaller than the pieceinfo database would be for the same number of pieces. (Only pieces with expiration times need to be stored in piece_expirations, and we don't need to store large byte blobs like the serialized order limit, etc.) Use specialized names for accessing any functionality related only to dealing with V0 pieces (e.g., `store.V0PieceInfo()`). Move SpaceUsed- type functionality under the purview of the piece store. Add some generic interfaces for traversing all blobs or all pieces. Add lots of tests.
930 lines
33 KiB
Go
930 lines
33 KiB
Go
// Code generated by protoc-gen-gogo. DO NOT EDIT.
|
|
// source: piecestore2.proto
|
|
|
|
package pb
|
|
|
|
import (
|
|
context "context"
|
|
fmt "fmt"
|
|
_ "github.com/gogo/protobuf/gogoproto"
|
|
proto "github.com/gogo/protobuf/proto"
|
|
_ "github.com/golang/protobuf/ptypes/timestamp"
|
|
grpc "google.golang.org/grpc"
|
|
math "math"
|
|
time "time"
|
|
)
|
|
|
|
// Reference imports to suppress errors if they are not otherwise used.
|
|
var _ = proto.Marshal
|
|
var _ = fmt.Errorf
|
|
var _ = math.Inf
|
|
var _ = time.Kitchen
|
|
|
|
// This is a compile-time assertion to ensure that this generated file
|
|
// is compatible with the proto package it is being compiled against.
|
|
// A compilation error at this line likely means your copy of the
|
|
// proto package needs to be updated.
|
|
const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
|
|
|
|
type PieceHeader_FormatVersion int32
|
|
|
|
const (
|
|
PieceHeader_FORMAT_V0 PieceHeader_FormatVersion = 0
|
|
PieceHeader_FORMAT_V1 PieceHeader_FormatVersion = 1
|
|
)
|
|
|
|
var PieceHeader_FormatVersion_name = map[int32]string{
|
|
0: "FORMAT_V0",
|
|
1: "FORMAT_V1",
|
|
}
|
|
|
|
var PieceHeader_FormatVersion_value = map[string]int32{
|
|
"FORMAT_V0": 0,
|
|
"FORMAT_V1": 1,
|
|
}
|
|
|
|
func (x PieceHeader_FormatVersion) String() string {
|
|
return proto.EnumName(PieceHeader_FormatVersion_name, int32(x))
|
|
}
|
|
|
|
func (PieceHeader_FormatVersion) EnumDescriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{8, 0}
|
|
}
|
|
|
|
// Expected order of messages from uplink:
|
|
// OrderLimit ->
|
|
// repeated
|
|
// Order ->
|
|
// Chunk ->
|
|
// PieceHash signed by uplink ->
|
|
// <- PieceHash signed by storage node
|
|
//
|
|
type PieceUploadRequest struct {
|
|
// first message to show that we are allowed to upload
|
|
Limit *OrderLimit `protobuf:"bytes,1,opt,name=limit,proto3" json:"limit,omitempty"`
|
|
// order for uploading
|
|
Order *Order `protobuf:"bytes,2,opt,name=order,proto3" json:"order,omitempty"`
|
|
Chunk *PieceUploadRequest_Chunk `protobuf:"bytes,3,opt,name=chunk,proto3" json:"chunk,omitempty"`
|
|
// final message
|
|
Done *PieceHash `protobuf:"bytes,4,opt,name=done,proto3" json:"done,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceUploadRequest) Reset() { *m = PieceUploadRequest{} }
|
|
func (m *PieceUploadRequest) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceUploadRequest) ProtoMessage() {}
|
|
func (*PieceUploadRequest) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{0}
|
|
}
|
|
func (m *PieceUploadRequest) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceUploadRequest.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceUploadRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceUploadRequest.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceUploadRequest) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceUploadRequest.Merge(m, src)
|
|
}
|
|
func (m *PieceUploadRequest) XXX_Size() int {
|
|
return xxx_messageInfo_PieceUploadRequest.Size(m)
|
|
}
|
|
func (m *PieceUploadRequest) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceUploadRequest.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceUploadRequest proto.InternalMessageInfo
|
|
|
|
func (m *PieceUploadRequest) GetLimit() *OrderLimit {
|
|
if m != nil {
|
|
return m.Limit
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PieceUploadRequest) GetOrder() *Order {
|
|
if m != nil {
|
|
return m.Order
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PieceUploadRequest) GetChunk() *PieceUploadRequest_Chunk {
|
|
if m != nil {
|
|
return m.Chunk
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PieceUploadRequest) GetDone() *PieceHash {
|
|
if m != nil {
|
|
return m.Done
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// data message
|
|
type PieceUploadRequest_Chunk struct {
|
|
Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"`
|
|
Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceUploadRequest_Chunk) Reset() { *m = PieceUploadRequest_Chunk{} }
|
|
func (m *PieceUploadRequest_Chunk) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceUploadRequest_Chunk) ProtoMessage() {}
|
|
func (*PieceUploadRequest_Chunk) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{0, 0}
|
|
}
|
|
func (m *PieceUploadRequest_Chunk) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceUploadRequest_Chunk.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceUploadRequest_Chunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceUploadRequest_Chunk.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceUploadRequest_Chunk) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceUploadRequest_Chunk.Merge(m, src)
|
|
}
|
|
func (m *PieceUploadRequest_Chunk) XXX_Size() int {
|
|
return xxx_messageInfo_PieceUploadRequest_Chunk.Size(m)
|
|
}
|
|
func (m *PieceUploadRequest_Chunk) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceUploadRequest_Chunk.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceUploadRequest_Chunk proto.InternalMessageInfo
|
|
|
|
func (m *PieceUploadRequest_Chunk) GetOffset() int64 {
|
|
if m != nil {
|
|
return m.Offset
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *PieceUploadRequest_Chunk) GetData() []byte {
|
|
if m != nil {
|
|
return m.Data
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type PieceUploadResponse struct {
|
|
Done *PieceHash `protobuf:"bytes,1,opt,name=done,proto3" json:"done,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceUploadResponse) Reset() { *m = PieceUploadResponse{} }
|
|
func (m *PieceUploadResponse) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceUploadResponse) ProtoMessage() {}
|
|
func (*PieceUploadResponse) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{1}
|
|
}
|
|
func (m *PieceUploadResponse) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceUploadResponse.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceUploadResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceUploadResponse.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceUploadResponse) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceUploadResponse.Merge(m, src)
|
|
}
|
|
func (m *PieceUploadResponse) XXX_Size() int {
|
|
return xxx_messageInfo_PieceUploadResponse.Size(m)
|
|
}
|
|
func (m *PieceUploadResponse) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceUploadResponse.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceUploadResponse proto.InternalMessageInfo
|
|
|
|
func (m *PieceUploadResponse) GetDone() *PieceHash {
|
|
if m != nil {
|
|
return m.Done
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Expected order of messages from uplink:
|
|
// {OrderLimit, Chunk} ->
|
|
// go repeated
|
|
// Order -> (async)
|
|
// go repeated
|
|
// <- PieceDownloadResponse.Chunk
|
|
type PieceDownloadRequest struct {
|
|
// first message to show that we are allowed to upload
|
|
Limit *OrderLimit `protobuf:"bytes,1,opt,name=limit,proto3" json:"limit,omitempty"`
|
|
// order for downloading
|
|
Order *Order `protobuf:"bytes,2,opt,name=order,proto3" json:"order,omitempty"`
|
|
// request for the chunk
|
|
Chunk *PieceDownloadRequest_Chunk `protobuf:"bytes,3,opt,name=chunk,proto3" json:"chunk,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceDownloadRequest) Reset() { *m = PieceDownloadRequest{} }
|
|
func (m *PieceDownloadRequest) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceDownloadRequest) ProtoMessage() {}
|
|
func (*PieceDownloadRequest) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{2}
|
|
}
|
|
func (m *PieceDownloadRequest) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceDownloadRequest.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceDownloadRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceDownloadRequest.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceDownloadRequest) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceDownloadRequest.Merge(m, src)
|
|
}
|
|
func (m *PieceDownloadRequest) XXX_Size() int {
|
|
return xxx_messageInfo_PieceDownloadRequest.Size(m)
|
|
}
|
|
func (m *PieceDownloadRequest) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceDownloadRequest.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceDownloadRequest proto.InternalMessageInfo
|
|
|
|
func (m *PieceDownloadRequest) GetLimit() *OrderLimit {
|
|
if m != nil {
|
|
return m.Limit
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PieceDownloadRequest) GetOrder() *Order {
|
|
if m != nil {
|
|
return m.Order
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PieceDownloadRequest) GetChunk() *PieceDownloadRequest_Chunk {
|
|
if m != nil {
|
|
return m.Chunk
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Chunk that we wish to download
|
|
type PieceDownloadRequest_Chunk struct {
|
|
Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"`
|
|
ChunkSize int64 `protobuf:"varint,2,opt,name=chunk_size,json=chunkSize,proto3" json:"chunk_size,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceDownloadRequest_Chunk) Reset() { *m = PieceDownloadRequest_Chunk{} }
|
|
func (m *PieceDownloadRequest_Chunk) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceDownloadRequest_Chunk) ProtoMessage() {}
|
|
func (*PieceDownloadRequest_Chunk) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{2, 0}
|
|
}
|
|
func (m *PieceDownloadRequest_Chunk) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceDownloadRequest_Chunk.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceDownloadRequest_Chunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceDownloadRequest_Chunk.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceDownloadRequest_Chunk) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceDownloadRequest_Chunk.Merge(m, src)
|
|
}
|
|
func (m *PieceDownloadRequest_Chunk) XXX_Size() int {
|
|
return xxx_messageInfo_PieceDownloadRequest_Chunk.Size(m)
|
|
}
|
|
func (m *PieceDownloadRequest_Chunk) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceDownloadRequest_Chunk.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceDownloadRequest_Chunk proto.InternalMessageInfo
|
|
|
|
func (m *PieceDownloadRequest_Chunk) GetOffset() int64 {
|
|
if m != nil {
|
|
return m.Offset
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *PieceDownloadRequest_Chunk) GetChunkSize() int64 {
|
|
if m != nil {
|
|
return m.ChunkSize
|
|
}
|
|
return 0
|
|
}
|
|
|
|
type PieceDownloadResponse struct {
|
|
Chunk *PieceDownloadResponse_Chunk `protobuf:"bytes,1,opt,name=chunk,proto3" json:"chunk,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceDownloadResponse) Reset() { *m = PieceDownloadResponse{} }
|
|
func (m *PieceDownloadResponse) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceDownloadResponse) ProtoMessage() {}
|
|
func (*PieceDownloadResponse) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{3}
|
|
}
|
|
func (m *PieceDownloadResponse) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceDownloadResponse.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceDownloadResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceDownloadResponse.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceDownloadResponse) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceDownloadResponse.Merge(m, src)
|
|
}
|
|
func (m *PieceDownloadResponse) XXX_Size() int {
|
|
return xxx_messageInfo_PieceDownloadResponse.Size(m)
|
|
}
|
|
func (m *PieceDownloadResponse) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceDownloadResponse.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceDownloadResponse proto.InternalMessageInfo
|
|
|
|
func (m *PieceDownloadResponse) GetChunk() *PieceDownloadResponse_Chunk {
|
|
if m != nil {
|
|
return m.Chunk
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// Chunk response for download request
|
|
type PieceDownloadResponse_Chunk struct {
|
|
Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"`
|
|
Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceDownloadResponse_Chunk) Reset() { *m = PieceDownloadResponse_Chunk{} }
|
|
func (m *PieceDownloadResponse_Chunk) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceDownloadResponse_Chunk) ProtoMessage() {}
|
|
func (*PieceDownloadResponse_Chunk) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{3, 0}
|
|
}
|
|
func (m *PieceDownloadResponse_Chunk) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceDownloadResponse_Chunk.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceDownloadResponse_Chunk) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceDownloadResponse_Chunk.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceDownloadResponse_Chunk) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceDownloadResponse_Chunk.Merge(m, src)
|
|
}
|
|
func (m *PieceDownloadResponse_Chunk) XXX_Size() int {
|
|
return xxx_messageInfo_PieceDownloadResponse_Chunk.Size(m)
|
|
}
|
|
func (m *PieceDownloadResponse_Chunk) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceDownloadResponse_Chunk.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceDownloadResponse_Chunk proto.InternalMessageInfo
|
|
|
|
func (m *PieceDownloadResponse_Chunk) GetOffset() int64 {
|
|
if m != nil {
|
|
return m.Offset
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (m *PieceDownloadResponse_Chunk) GetData() []byte {
|
|
if m != nil {
|
|
return m.Data
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type PieceDeleteRequest struct {
|
|
Limit *OrderLimit `protobuf:"bytes,1,opt,name=limit,proto3" json:"limit,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceDeleteRequest) Reset() { *m = PieceDeleteRequest{} }
|
|
func (m *PieceDeleteRequest) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceDeleteRequest) ProtoMessage() {}
|
|
func (*PieceDeleteRequest) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{4}
|
|
}
|
|
func (m *PieceDeleteRequest) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceDeleteRequest.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceDeleteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceDeleteRequest.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceDeleteRequest) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceDeleteRequest.Merge(m, src)
|
|
}
|
|
func (m *PieceDeleteRequest) XXX_Size() int {
|
|
return xxx_messageInfo_PieceDeleteRequest.Size(m)
|
|
}
|
|
func (m *PieceDeleteRequest) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceDeleteRequest.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceDeleteRequest proto.InternalMessageInfo
|
|
|
|
func (m *PieceDeleteRequest) GetLimit() *OrderLimit {
|
|
if m != nil {
|
|
return m.Limit
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type PieceDeleteResponse struct {
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceDeleteResponse) Reset() { *m = PieceDeleteResponse{} }
|
|
func (m *PieceDeleteResponse) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceDeleteResponse) ProtoMessage() {}
|
|
func (*PieceDeleteResponse) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{5}
|
|
}
|
|
func (m *PieceDeleteResponse) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceDeleteResponse.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceDeleteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceDeleteResponse.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceDeleteResponse) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceDeleteResponse.Merge(m, src)
|
|
}
|
|
func (m *PieceDeleteResponse) XXX_Size() int {
|
|
return xxx_messageInfo_PieceDeleteResponse.Size(m)
|
|
}
|
|
func (m *PieceDeleteResponse) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceDeleteResponse.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceDeleteResponse proto.InternalMessageInfo
|
|
|
|
type RetainRequest struct {
|
|
CreationDate time.Time `protobuf:"bytes,1,opt,name=creation_date,json=creationDate,proto3,stdtime" json:"creation_date"`
|
|
Filter []byte `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *RetainRequest) Reset() { *m = RetainRequest{} }
|
|
func (m *RetainRequest) String() string { return proto.CompactTextString(m) }
|
|
func (*RetainRequest) ProtoMessage() {}
|
|
func (*RetainRequest) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{6}
|
|
}
|
|
func (m *RetainRequest) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_RetainRequest.Unmarshal(m, b)
|
|
}
|
|
func (m *RetainRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_RetainRequest.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *RetainRequest) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_RetainRequest.Merge(m, src)
|
|
}
|
|
func (m *RetainRequest) XXX_Size() int {
|
|
return xxx_messageInfo_RetainRequest.Size(m)
|
|
}
|
|
func (m *RetainRequest) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_RetainRequest.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_RetainRequest proto.InternalMessageInfo
|
|
|
|
func (m *RetainRequest) GetCreationDate() time.Time {
|
|
if m != nil {
|
|
return m.CreationDate
|
|
}
|
|
return time.Time{}
|
|
}
|
|
|
|
func (m *RetainRequest) GetFilter() []byte {
|
|
if m != nil {
|
|
return m.Filter
|
|
}
|
|
return nil
|
|
}
|
|
|
|
type RetainResponse struct {
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *RetainResponse) Reset() { *m = RetainResponse{} }
|
|
func (m *RetainResponse) String() string { return proto.CompactTextString(m) }
|
|
func (*RetainResponse) ProtoMessage() {}
|
|
func (*RetainResponse) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{7}
|
|
}
|
|
func (m *RetainResponse) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_RetainResponse.Unmarshal(m, b)
|
|
}
|
|
func (m *RetainResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_RetainResponse.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *RetainResponse) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_RetainResponse.Merge(m, src)
|
|
}
|
|
func (m *RetainResponse) XXX_Size() int {
|
|
return xxx_messageInfo_RetainResponse.Size(m)
|
|
}
|
|
func (m *RetainResponse) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_RetainResponse.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_RetainResponse proto.InternalMessageInfo
|
|
|
|
// PieceHeader is used in piece storage to keep track of piece attributes.
|
|
type PieceHeader struct {
|
|
// the storage format version being used for this piece. The piece filename should agree with this.
|
|
// The inclusion of this field is intended to aid repairability when filenames are damaged.
|
|
FormatVersion PieceHeader_FormatVersion `protobuf:"varint,1,opt,name=format_version,json=formatVersion,proto3,enum=piecestore.PieceHeader_FormatVersion" json:"format_version,omitempty"`
|
|
// content hash of the piece
|
|
Hash []byte `protobuf:"bytes,2,opt,name=hash,proto3" json:"hash,omitempty"`
|
|
// timestamp when upload occurred, as given by the "timestamp" field in the original orders.PieceHash
|
|
CreationTime time.Time `protobuf:"bytes,3,opt,name=creation_time,json=creationTime,proto3,stdtime" json:"creation_time"`
|
|
// signature from uplink over the original orders.PieceHash (the corresponding PieceHashSigning
|
|
// is reconstructable using the piece id from the piecestore, the piece size from the
|
|
// filesystem (minus the piece header size), and these (hash, upload_time, signature) fields).
|
|
Signature []byte `protobuf:"bytes,4,opt,name=signature,proto3" json:"signature,omitempty"`
|
|
// the OrderLimit authorizing storage of this piece, as signed by the satellite and sent by
|
|
// the uplink
|
|
OrderLimit OrderLimit `protobuf:"bytes,5,opt,name=order_limit,json=orderLimit,proto3" json:"order_limit"`
|
|
XXX_NoUnkeyedLiteral struct{} `json:"-"`
|
|
XXX_unrecognized []byte `json:"-"`
|
|
XXX_sizecache int32 `json:"-"`
|
|
}
|
|
|
|
func (m *PieceHeader) Reset() { *m = PieceHeader{} }
|
|
func (m *PieceHeader) String() string { return proto.CompactTextString(m) }
|
|
func (*PieceHeader) ProtoMessage() {}
|
|
func (*PieceHeader) Descriptor() ([]byte, []int) {
|
|
return fileDescriptor_23ff32dd550c2439, []int{8}
|
|
}
|
|
func (m *PieceHeader) XXX_Unmarshal(b []byte) error {
|
|
return xxx_messageInfo_PieceHeader.Unmarshal(m, b)
|
|
}
|
|
func (m *PieceHeader) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
|
|
return xxx_messageInfo_PieceHeader.Marshal(b, m, deterministic)
|
|
}
|
|
func (m *PieceHeader) XXX_Merge(src proto.Message) {
|
|
xxx_messageInfo_PieceHeader.Merge(m, src)
|
|
}
|
|
func (m *PieceHeader) XXX_Size() int {
|
|
return xxx_messageInfo_PieceHeader.Size(m)
|
|
}
|
|
func (m *PieceHeader) XXX_DiscardUnknown() {
|
|
xxx_messageInfo_PieceHeader.DiscardUnknown(m)
|
|
}
|
|
|
|
var xxx_messageInfo_PieceHeader proto.InternalMessageInfo
|
|
|
|
func (m *PieceHeader) GetFormatVersion() PieceHeader_FormatVersion {
|
|
if m != nil {
|
|
return m.FormatVersion
|
|
}
|
|
return PieceHeader_FORMAT_V0
|
|
}
|
|
|
|
func (m *PieceHeader) GetHash() []byte {
|
|
if m != nil {
|
|
return m.Hash
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PieceHeader) GetCreationTime() time.Time {
|
|
if m != nil {
|
|
return m.CreationTime
|
|
}
|
|
return time.Time{}
|
|
}
|
|
|
|
func (m *PieceHeader) GetSignature() []byte {
|
|
if m != nil {
|
|
return m.Signature
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (m *PieceHeader) GetOrderLimit() OrderLimit {
|
|
if m != nil {
|
|
return m.OrderLimit
|
|
}
|
|
return OrderLimit{}
|
|
}
|
|
|
|
func init() {
|
|
proto.RegisterEnum("piecestore.PieceHeader_FormatVersion", PieceHeader_FormatVersion_name, PieceHeader_FormatVersion_value)
|
|
proto.RegisterType((*PieceUploadRequest)(nil), "piecestore.PieceUploadRequest")
|
|
proto.RegisterType((*PieceUploadRequest_Chunk)(nil), "piecestore.PieceUploadRequest.Chunk")
|
|
proto.RegisterType((*PieceUploadResponse)(nil), "piecestore.PieceUploadResponse")
|
|
proto.RegisterType((*PieceDownloadRequest)(nil), "piecestore.PieceDownloadRequest")
|
|
proto.RegisterType((*PieceDownloadRequest_Chunk)(nil), "piecestore.PieceDownloadRequest.Chunk")
|
|
proto.RegisterType((*PieceDownloadResponse)(nil), "piecestore.PieceDownloadResponse")
|
|
proto.RegisterType((*PieceDownloadResponse_Chunk)(nil), "piecestore.PieceDownloadResponse.Chunk")
|
|
proto.RegisterType((*PieceDeleteRequest)(nil), "piecestore.PieceDeleteRequest")
|
|
proto.RegisterType((*PieceDeleteResponse)(nil), "piecestore.PieceDeleteResponse")
|
|
proto.RegisterType((*RetainRequest)(nil), "piecestore.RetainRequest")
|
|
proto.RegisterType((*RetainResponse)(nil), "piecestore.RetainResponse")
|
|
proto.RegisterType((*PieceHeader)(nil), "piecestore.PieceHeader")
|
|
}
|
|
|
|
func init() { proto.RegisterFile("piecestore2.proto", fileDescriptor_23ff32dd550c2439) }
|
|
|
|
var fileDescriptor_23ff32dd550c2439 = []byte{
|
|
// 634 bytes of a gzipped FileDescriptorProto
|
|
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x54, 0x4f, 0x6f, 0x12, 0x4f,
|
|
0x18, 0x66, 0x29, 0x90, 0xf2, 0xc2, 0x12, 0x3a, 0xbf, 0x5f, 0x0d, 0x6e, 0x54, 0xea, 0x6a, 0x95,
|
|
0x8b, 0xdb, 0x4a, 0x4f, 0x9a, 0x5a, 0x23, 0x92, 0x46, 0x63, 0x9b, 0x36, 0x63, 0xdb, 0x83, 0x17,
|
|
0x32, 0xc0, 0x2c, 0x6c, 0x84, 0x9d, 0x75, 0x67, 0xd0, 0xa4, 0x5f, 0xc1, 0x8b, 0x1f, 0xc9, 0x78,
|
|
0xf2, 0x53, 0xe8, 0xc1, 0x8f, 0xe1, 0xc5, 0xcc, 0xcc, 0x2e, 0xb0, 0x40, 0x21, 0x35, 0xf1, 0x04,
|
|
0xef, 0xff, 0x67, 0x9e, 0xf7, 0x79, 0x17, 0x36, 0x02, 0x8f, 0x76, 0x28, 0x17, 0x2c, 0xa4, 0x75,
|
|
0x27, 0x08, 0x99, 0x60, 0x08, 0x26, 0x2e, 0x0b, 0x7a, 0xac, 0xc7, 0xb4, 0xdf, 0xaa, 0xf6, 0x18,
|
|
0xeb, 0x0d, 0xe8, 0x8e, 0xb2, 0xda, 0x23, 0x77, 0x47, 0x78, 0x43, 0xca, 0x05, 0x19, 0x06, 0x51,
|
|
0x42, 0x91, 0x85, 0x5d, 0x1a, 0x72, 0x6d, 0xd9, 0xbf, 0x0d, 0x40, 0xa7, 0xb2, 0xd3, 0x79, 0x30,
|
|
0x60, 0xa4, 0x8b, 0xe9, 0x87, 0x11, 0xe5, 0x02, 0xd5, 0x20, 0x3b, 0xf0, 0x86, 0x9e, 0xa8, 0x18,
|
|
0x5b, 0x46, 0xad, 0x50, 0x47, 0x4e, 0x54, 0x74, 0x22, 0x7f, 0x8e, 0x64, 0x04, 0xeb, 0x04, 0x74,
|
|
0x0f, 0xb2, 0x2a, 0x56, 0x49, 0xab, 0x4c, 0x33, 0x91, 0x89, 0x75, 0x0c, 0x3d, 0x85, 0x6c, 0xa7,
|
|
0x3f, 0xf2, 0xdf, 0x57, 0xd6, 0x54, 0xd2, 0x7d, 0x67, 0x02, 0xde, 0x99, 0x9f, 0xee, 0xbc, 0x94,
|
|
0xb9, 0x58, 0x97, 0xa0, 0x6d, 0xc8, 0x74, 0x99, 0x4f, 0x2b, 0x19, 0x55, 0xba, 0x11, 0xf7, 0x57,
|
|
0x65, 0xaf, 0x08, 0xef, 0x63, 0x15, 0xb6, 0xf6, 0x20, 0xab, 0xca, 0xd0, 0x0d, 0xc8, 0x31, 0xd7,
|
|
0xe5, 0x54, 0x63, 0x5f, 0xc3, 0x91, 0x85, 0x10, 0x64, 0xba, 0x44, 0x10, 0x85, 0xb3, 0x88, 0xd5,
|
|
0x7f, 0x7b, 0x1f, 0xfe, 0x4b, 0x8c, 0xe7, 0x01, 0xf3, 0x39, 0x1d, 0x8f, 0x34, 0x96, 0x8e, 0xb4,
|
|
0x7f, 0x19, 0xf0, 0xbf, 0xf2, 0x35, 0xd9, 0x27, 0xff, 0x1f, 0xb2, 0xb7, 0x9f, 0x64, 0xef, 0xc1,
|
|
0x1c, 0x7b, 0x33, 0xf3, 0x13, 0xfc, 0x59, 0x07, 0xab, 0x88, 0xb9, 0x0d, 0xa0, 0x32, 0x5b, 0xdc,
|
|
0xbb, 0xa4, 0x0a, 0xc8, 0x1a, 0xce, 0x2b, 0xcf, 0x5b, 0xef, 0x92, 0xda, 0x9f, 0x0d, 0xd8, 0x9c,
|
|
0x99, 0x12, 0xd1, 0xf4, 0x2c, 0xc6, 0xa5, 0x9f, 0xf9, 0x70, 0x09, 0x2e, 0x5d, 0x91, 0x04, 0xf6,
|
|
0x57, 0x1b, 0x3b, 0x88, 0xe4, 0xda, 0xa4, 0x03, 0x2a, 0xe8, 0xb5, 0x09, 0xb7, 0x37, 0xa3, 0x8d,
|
|
0xc7, 0xf5, 0x1a, 0x98, 0x1d, 0x82, 0x89, 0xa9, 0x20, 0x9e, 0x1f, 0x77, 0x7c, 0x0d, 0x66, 0x27,
|
|
0xa4, 0x44, 0x78, 0xcc, 0x6f, 0x75, 0x89, 0x88, 0xb5, 0x60, 0x39, 0xfa, 0xbc, 0x9c, 0xf8, 0xbc,
|
|
0x9c, 0xb3, 0xf8, 0xbc, 0x1a, 0xeb, 0xdf, 0x7f, 0x54, 0x53, 0x5f, 0x7e, 0x56, 0x0d, 0x5c, 0x8c,
|
|
0x4b, 0x9b, 0x44, 0x50, 0xf9, 0x3c, 0xd7, 0x1b, 0x88, 0x68, 0xc9, 0x45, 0x1c, 0x59, 0x76, 0x19,
|
|
0x4a, 0xf1, 0xcc, 0x08, 0xc5, 0xb7, 0x34, 0x14, 0xb4, 0xc8, 0x28, 0x91, 0x8b, 0x3f, 0x82, 0x92,
|
|
0xcb, 0xc2, 0x21, 0x11, 0xad, 0x8f, 0x34, 0xe4, 0x1e, 0xf3, 0x15, 0x8a, 0x52, 0x7d, 0x7b, 0x8e,
|
|
0x69, 0x5d, 0xe0, 0x1c, 0xaa, 0xec, 0x0b, 0x9d, 0x8c, 0x4d, 0x77, 0xda, 0x94, 0x74, 0xf6, 0x09,
|
|
0xef, 0xc7, 0x74, 0xca, 0xff, 0x89, 0x67, 0xca, 0x0f, 0x45, 0x24, 0xb1, 0x6b, 0x3e, 0x53, 0x06,
|
|
0xd1, 0x2d, 0xc8, 0x73, 0xaf, 0xe7, 0x13, 0x31, 0x0a, 0xf5, 0xb1, 0x16, 0xf1, 0xc4, 0x81, 0x9e,
|
|
0x40, 0x41, 0xed, 0xa4, 0xa5, 0xf7, 0x94, 0xbd, 0x6a, 0x4f, 0x8d, 0x8c, 0x6c, 0x8f, 0x81, 0x8d,
|
|
0x3d, 0xf6, 0x23, 0x30, 0x13, 0xef, 0x42, 0x26, 0xe4, 0x0f, 0x4f, 0xf0, 0xf1, 0x8b, 0xb3, 0xd6,
|
|
0xc5, 0x6e, 0x39, 0x35, 0x6d, 0x3e, 0x2e, 0x1b, 0xf5, 0xaf, 0x69, 0x80, 0xd3, 0x31, 0x3d, 0xe8,
|
|
0x18, 0x72, 0xfa, 0xba, 0xd1, 0x9d, 0xe5, 0x5f, 0x1d, 0xab, 0x7a, 0x65, 0x3c, 0x5a, 0x4f, 0xaa,
|
|
0x66, 0xa0, 0x73, 0x58, 0x8f, 0x55, 0x8d, 0xb6, 0x56, 0x1d, 0xa2, 0x75, 0x77, 0xe5, 0x49, 0xc8,
|
|
0xa6, 0xbb, 0x06, 0x7a, 0x03, 0x39, 0xad, 0xc8, 0x05, 0x28, 0x13, 0x52, 0x5f, 0x80, 0x72, 0x46,
|
|
0xca, 0x29, 0xf4, 0x1c, 0x72, 0x5a, 0x58, 0xe8, 0xe6, 0x74, 0x72, 0x42, 0xe0, 0x96, 0xb5, 0x28,
|
|
0xa4, 0x5b, 0x34, 0x32, 0xef, 0xd2, 0x41, 0xbb, 0x9d, 0x53, 0xcb, 0xdf, 0xfb, 0x13, 0x00, 0x00,
|
|
0xff, 0xff, 0x64, 0x65, 0x86, 0x27, 0x7d, 0x06, 0x00, 0x00,
|
|
}
|
|
|
|
// Reference imports to suppress errors if they are not otherwise used.
|
|
var _ context.Context
|
|
var _ grpc.ClientConn
|
|
|
|
// This is a compile-time assertion to ensure that this generated file
|
|
// is compatible with the grpc package it is being compiled against.
|
|
const _ = grpc.SupportPackageIsVersion4
|
|
|
|
// PiecestoreClient is the client API for Piecestore service.
|
|
//
|
|
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
|
|
type PiecestoreClient interface {
|
|
Upload(ctx context.Context, opts ...grpc.CallOption) (Piecestore_UploadClient, error)
|
|
Download(ctx context.Context, opts ...grpc.CallOption) (Piecestore_DownloadClient, error)
|
|
Delete(ctx context.Context, in *PieceDeleteRequest, opts ...grpc.CallOption) (*PieceDeleteResponse, error)
|
|
Retain(ctx context.Context, in *RetainRequest, opts ...grpc.CallOption) (*RetainResponse, error)
|
|
}
|
|
|
|
type piecestoreClient struct {
|
|
cc *grpc.ClientConn
|
|
}
|
|
|
|
func NewPiecestoreClient(cc *grpc.ClientConn) PiecestoreClient {
|
|
return &piecestoreClient{cc}
|
|
}
|
|
|
|
func (c *piecestoreClient) Upload(ctx context.Context, opts ...grpc.CallOption) (Piecestore_UploadClient, error) {
|
|
stream, err := c.cc.NewStream(ctx, &_Piecestore_serviceDesc.Streams[0], "/piecestore.Piecestore/Upload", opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
x := &piecestoreUploadClient{stream}
|
|
return x, nil
|
|
}
|
|
|
|
type Piecestore_UploadClient interface {
|
|
Send(*PieceUploadRequest) error
|
|
CloseAndRecv() (*PieceUploadResponse, error)
|
|
grpc.ClientStream
|
|
}
|
|
|
|
type piecestoreUploadClient struct {
|
|
grpc.ClientStream
|
|
}
|
|
|
|
func (x *piecestoreUploadClient) Send(m *PieceUploadRequest) error {
|
|
return x.ClientStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *piecestoreUploadClient) CloseAndRecv() (*PieceUploadResponse, error) {
|
|
if err := x.ClientStream.CloseSend(); err != nil {
|
|
return nil, err
|
|
}
|
|
m := new(PieceUploadResponse)
|
|
if err := x.ClientStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func (c *piecestoreClient) Download(ctx context.Context, opts ...grpc.CallOption) (Piecestore_DownloadClient, error) {
|
|
stream, err := c.cc.NewStream(ctx, &_Piecestore_serviceDesc.Streams[1], "/piecestore.Piecestore/Download", opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
x := &piecestoreDownloadClient{stream}
|
|
return x, nil
|
|
}
|
|
|
|
type Piecestore_DownloadClient interface {
|
|
Send(*PieceDownloadRequest) error
|
|
Recv() (*PieceDownloadResponse, error)
|
|
grpc.ClientStream
|
|
}
|
|
|
|
type piecestoreDownloadClient struct {
|
|
grpc.ClientStream
|
|
}
|
|
|
|
func (x *piecestoreDownloadClient) Send(m *PieceDownloadRequest) error {
|
|
return x.ClientStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *piecestoreDownloadClient) Recv() (*PieceDownloadResponse, error) {
|
|
m := new(PieceDownloadResponse)
|
|
if err := x.ClientStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func (c *piecestoreClient) Delete(ctx context.Context, in *PieceDeleteRequest, opts ...grpc.CallOption) (*PieceDeleteResponse, error) {
|
|
out := new(PieceDeleteResponse)
|
|
err := c.cc.Invoke(ctx, "/piecestore.Piecestore/Delete", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
func (c *piecestoreClient) Retain(ctx context.Context, in *RetainRequest, opts ...grpc.CallOption) (*RetainResponse, error) {
|
|
out := new(RetainResponse)
|
|
err := c.cc.Invoke(ctx, "/piecestore.Piecestore/Retain", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
// PiecestoreServer is the server API for Piecestore service.
|
|
type PiecestoreServer interface {
|
|
Upload(Piecestore_UploadServer) error
|
|
Download(Piecestore_DownloadServer) error
|
|
Delete(context.Context, *PieceDeleteRequest) (*PieceDeleteResponse, error)
|
|
Retain(context.Context, *RetainRequest) (*RetainResponse, error)
|
|
}
|
|
|
|
func RegisterPiecestoreServer(s *grpc.Server, srv PiecestoreServer) {
|
|
s.RegisterService(&_Piecestore_serviceDesc, srv)
|
|
}
|
|
|
|
func _Piecestore_Upload_Handler(srv interface{}, stream grpc.ServerStream) error {
|
|
return srv.(PiecestoreServer).Upload(&piecestoreUploadServer{stream})
|
|
}
|
|
|
|
type Piecestore_UploadServer interface {
|
|
SendAndClose(*PieceUploadResponse) error
|
|
Recv() (*PieceUploadRequest, error)
|
|
grpc.ServerStream
|
|
}
|
|
|
|
type piecestoreUploadServer struct {
|
|
grpc.ServerStream
|
|
}
|
|
|
|
func (x *piecestoreUploadServer) SendAndClose(m *PieceUploadResponse) error {
|
|
return x.ServerStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *piecestoreUploadServer) Recv() (*PieceUploadRequest, error) {
|
|
m := new(PieceUploadRequest)
|
|
if err := x.ServerStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func _Piecestore_Download_Handler(srv interface{}, stream grpc.ServerStream) error {
|
|
return srv.(PiecestoreServer).Download(&piecestoreDownloadServer{stream})
|
|
}
|
|
|
|
type Piecestore_DownloadServer interface {
|
|
Send(*PieceDownloadResponse) error
|
|
Recv() (*PieceDownloadRequest, error)
|
|
grpc.ServerStream
|
|
}
|
|
|
|
type piecestoreDownloadServer struct {
|
|
grpc.ServerStream
|
|
}
|
|
|
|
func (x *piecestoreDownloadServer) Send(m *PieceDownloadResponse) error {
|
|
return x.ServerStream.SendMsg(m)
|
|
}
|
|
|
|
func (x *piecestoreDownloadServer) Recv() (*PieceDownloadRequest, error) {
|
|
m := new(PieceDownloadRequest)
|
|
if err := x.ServerStream.RecvMsg(m); err != nil {
|
|
return nil, err
|
|
}
|
|
return m, nil
|
|
}
|
|
|
|
func _Piecestore_Delete_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(PieceDeleteRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(PiecestoreServer).Delete(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/piecestore.Piecestore/Delete",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(PiecestoreServer).Delete(ctx, req.(*PieceDeleteRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
func _Piecestore_Retain_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(RetainRequest)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(PiecestoreServer).Retain(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/piecestore.Piecestore/Retain",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(PiecestoreServer).Retain(ctx, req.(*RetainRequest))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
var _Piecestore_serviceDesc = grpc.ServiceDesc{
|
|
ServiceName: "piecestore.Piecestore",
|
|
HandlerType: (*PiecestoreServer)(nil),
|
|
Methods: []grpc.MethodDesc{
|
|
{
|
|
MethodName: "Delete",
|
|
Handler: _Piecestore_Delete_Handler,
|
|
},
|
|
{
|
|
MethodName: "Retain",
|
|
Handler: _Piecestore_Retain_Handler,
|
|
},
|
|
},
|
|
Streams: []grpc.StreamDesc{
|
|
{
|
|
StreamName: "Upload",
|
|
Handler: _Piecestore_Upload_Handler,
|
|
ClientStreams: true,
|
|
},
|
|
{
|
|
StreamName: "Download",
|
|
Handler: _Piecestore_Download_Handler,
|
|
ServerStreams: true,
|
|
ClientStreams: true,
|
|
},
|
|
},
|
|
Metadata: "piecestore2.proto",
|
|
}
|