pb

package
v2.0.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 11, 2025 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLengthDownload        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowDownload          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupDownload = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	ErrInvalidLengthStorage        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowStorage          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupStorage = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	ErrInvalidLengthUpload        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowUpload          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupUpload = fmt.Errorf("proto: unexpected end of group")
)
View Source
var DownloadStatus_name = map[int32]string{
	0: "DOWNLOAD_STATUS_UNSPECIFIED",
	1: "DOWNLOAD_STATUS_FETCHING_INFO",
	2: "DOWNLOAD_STATUS_PENDING",
	3: "DOWNLOAD_STATUS_DOWNLOADING",
	4: "DOWNLOAD_STATUS_PAUSED",
	5: "DOWNLOAD_STATUS_COMPLETED",
	6: "DOWNLOAD_STATUS_FAILED",
	7: "DOWNLOAD_STATUS_CANCELLED",
}
View Source
var DownloadStatus_value = map[string]int32{
	"DOWNLOAD_STATUS_UNSPECIFIED":   0,
	"DOWNLOAD_STATUS_FETCHING_INFO": 1,
	"DOWNLOAD_STATUS_PENDING":       2,
	"DOWNLOAD_STATUS_DOWNLOADING":   3,
	"DOWNLOAD_STATUS_PAUSED":        4,
	"DOWNLOAD_STATUS_COMPLETED":     5,
	"DOWNLOAD_STATUS_FAILED":        6,
	"DOWNLOAD_STATUS_CANCELLED":     7,
}
View Source
var SegmentDownloadStatus_name = map[int32]string{
	0: "SEGMENT_DOWNLOAD_STATUS_UNSPECIFIED",
	1: "SEGMENT_DOWNLOAD_STATUS_PENDING",
	2: "SEGMENT_DOWNLOAD_STATUS_DOWNLOADING",
	3: "SEGMENT_DOWNLOAD_STATUS_COMPLETED",
	4: "SEGMENT_DOWNLOAD_STATUS_FAILED",
}
View Source
var SegmentDownloadStatus_value = map[string]int32{
	"SEGMENT_DOWNLOAD_STATUS_UNSPECIFIED": 0,
	"SEGMENT_DOWNLOAD_STATUS_PENDING":     1,
	"SEGMENT_DOWNLOAD_STATUS_DOWNLOADING": 2,
	"SEGMENT_DOWNLOAD_STATUS_COMPLETED":   3,
	"SEGMENT_DOWNLOAD_STATUS_FAILED":      4,
}
View Source
var SegmentStatus_name = map[int32]string{
	0: "SEGMENT_STATUS_UNSPECIFIED",
	1: "SEGMENT_STATUS_PENDING",
	2: "SEGMENT_STATUS_TRANSFERRING",
	3: "SEGMENT_STATUS_COMPLETED",
	4: "SEGMENT_STATUS_FAILED",
}
View Source
var SegmentStatus_value = map[string]int32{
	"SEGMENT_STATUS_UNSPECIFIED":  0,
	"SEGMENT_STATUS_PENDING":      1,
	"SEGMENT_STATUS_TRANSFERRING": 2,
	"SEGMENT_STATUS_COMPLETED":    3,
	"SEGMENT_STATUS_FAILED":       4,
}
View Source
var SegmentUploadStatus_name = map[int32]string{
	0: "SEGMENT_UPLOAD_STATUS_UNSPECIFIED",
	1: "SEGMENT_UPLOAD_STATUS_NOT_READY",
	2: "SEGMENT_UPLOAD_STATUS_PENDING",
	3: "SEGMENT_UPLOAD_STATUS_UPLOADING",
	4: "SEGMENT_UPLOAD_STATUS_COMPLETED",
	5: "SEGMENT_UPLOAD_STATUS_FAILED",
}
View Source
var SegmentUploadStatus_value = map[string]int32{
	"SEGMENT_UPLOAD_STATUS_UNSPECIFIED": 0,
	"SEGMENT_UPLOAD_STATUS_NOT_READY":   1,
	"SEGMENT_UPLOAD_STATUS_PENDING":     2,
	"SEGMENT_UPLOAD_STATUS_UPLOADING":   3,
	"SEGMENT_UPLOAD_STATUS_COMPLETED":   4,
	"SEGMENT_UPLOAD_STATUS_FAILED":      5,
}
View Source
var TransferStatus_name = map[int32]string{
	0: "TRANSFER_STATUS_UNSPECIFIED",
	1: "TRANSFER_STATUS_CODING",
	2: "TRANSFER_STATUS_PENDING",
	3: "TRANSFER_STATUS_TRANSFERRING",
	4: "TRANSFER_STATUS_PAUSED",
	5: "TRANSFER_STATUS_COMPLETED",
	6: "TRANSFER_STATUS_FAILED",
	7: "TRANSFER_STATUS_CANCELED",
	8: "TRANSFER_STATUS_EXCEPTION",
}
View Source
var TransferStatus_value = map[string]int32{
	"TRANSFER_STATUS_UNSPECIFIED":  0,
	"TRANSFER_STATUS_CODING":       1,
	"TRANSFER_STATUS_PENDING":      2,
	"TRANSFER_STATUS_TRANSFERRING": 3,
	"TRANSFER_STATUS_PAUSED":       4,
	"TRANSFER_STATUS_COMPLETED":    5,
	"TRANSFER_STATUS_FAILED":       6,
	"TRANSFER_STATUS_CANCELED":     7,
	"TRANSFER_STATUS_EXCEPTION":    8,
}
View Source
var UploadStatus_name = map[int32]string{
	0: "UPLOAD_STATUS_UNSPECIFIED",
	1: "UPLOAD_STATUS_ENCODING",
	2: "UPLOAD_STATUS_PENDING",
	3: "UPLOAD_STATUS_UPLOADING",
	4: "UPLOAD_STATUS_PAUSED",
	5: "UPLOAD_STATUS_COMPLETED",
	6: "UPLOAD_STATUS_FAILED",
	7: "UPLOAD_STATUS_CANCELED",
	8: "UPLOAD_STATUS_FILE_EXCEPTION",
}
View Source
var UploadStatus_value = map[string]int32{
	"UPLOAD_STATUS_UNSPECIFIED":    0,
	"UPLOAD_STATUS_ENCODING":       1,
	"UPLOAD_STATUS_PENDING":        2,
	"UPLOAD_STATUS_UPLOADING":      3,
	"UPLOAD_STATUS_PAUSED":         4,
	"UPLOAD_STATUS_COMPLETED":      5,
	"UPLOAD_STATUS_FAILED":         6,
	"UPLOAD_STATUS_CANCELED":       7,
	"UPLOAD_STATUS_FILE_EXCEPTION": 8,
}

Functions

This section is empty.

Types

type DownloadChan

type DownloadChan struct {
	// 任务唯一标识,通常是该片段数据的哈希值
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 下载任务是否完成的标志
	IsComplete bool `protobuf:"varint,2,opt,name=is_complete,json=isComplete,proto3" json:"is_complete,omitempty"`
	// 下载进度百分比,范围0-100
	DownloadProgress int64 `protobuf:"varint,3,opt,name=download_progress,json=downloadProgress,proto3" json:"download_progress,omitempty"`
	// 文件总片段数量,数据片段+校验片段
	TotalShards int64 `protobuf:"varint,4,opt,name=total_shards,json=totalShards,proto3" json:"total_shards,omitempty"`
	// 文件片段唯一标识
	SegmentId string `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	// 文件片段索引,表示该片段在文件中的顺序
	SegmentIndex int64 `protobuf:"varint,6,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 文件片段大小,单位为字节
	SegmentSize int64 `protobuf:"varint,7,opt,name=segment_size,json=segmentSize,proto3" json:"segment_size,omitempty"`
	// 是否为纠删码冗余分片
	IsRsCodes bool `protobuf:"varint,8,opt,name=is_rs_codes,json=isRsCodes,proto3" json:"is_rs_codes,omitempty"`
	// 存储该文件片段的节点ID
	NodeId string `protobuf:"bytes,9,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	// 下载完成时间的时间戳
	DownloadTime         int64    `protobuf:"varint,10,opt,name=download_time,json=downloadTime,proto3" json:"download_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

DownloadChan 用于刷新下载任务的通道

func (*DownloadChan) Descriptor

func (*DownloadChan) Descriptor() ([]byte, []int)

func (*DownloadChan) GetDownloadProgress

func (m *DownloadChan) GetDownloadProgress() int64

func (*DownloadChan) GetDownloadTime

func (m *DownloadChan) GetDownloadTime() int64

func (*DownloadChan) GetIsComplete

func (m *DownloadChan) GetIsComplete() bool

func (*DownloadChan) GetIsRsCodes

func (m *DownloadChan) GetIsRsCodes() bool

func (*DownloadChan) GetNodeId

func (m *DownloadChan) GetNodeId() string

func (*DownloadChan) GetSegmentId

func (m *DownloadChan) GetSegmentId() string

func (*DownloadChan) GetSegmentIndex

func (m *DownloadChan) GetSegmentIndex() int64

func (*DownloadChan) GetSegmentSize

func (m *DownloadChan) GetSegmentSize() int64

func (*DownloadChan) GetTaskId

func (m *DownloadChan) GetTaskId() string

func (*DownloadChan) GetTotalShards

func (m *DownloadChan) GetTotalShards() int64

func (*DownloadChan) Marshal

func (m *DownloadChan) Marshal() (dAtA []byte, err error)

func (*DownloadChan) MarshalTo

func (m *DownloadChan) MarshalTo(dAtA []byte) (int, error)

func (*DownloadChan) MarshalToSizedBuffer

func (m *DownloadChan) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadChan) ProtoMessage

func (*DownloadChan) ProtoMessage()

func (*DownloadChan) Reset

func (m *DownloadChan) Reset()

func (*DownloadChan) Size

func (m *DownloadChan) Size() (n int)

func (*DownloadChan) String

func (m *DownloadChan) String() string

func (*DownloadChan) Unmarshal

func (m *DownloadChan) Unmarshal(dAtA []byte) error

func (*DownloadChan) XXX_DiscardUnknown

func (m *DownloadChan) XXX_DiscardUnknown()

func (*DownloadChan) XXX_Marshal

func (m *DownloadChan) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadChan) XXX_Merge

func (m *DownloadChan) XXX_Merge(src proto.Message)

func (*DownloadChan) XXX_Size

func (m *DownloadChan) XXX_Size() int

func (*DownloadChan) XXX_Unmarshal

func (m *DownloadChan) XXX_Unmarshal(b []byte) error

type DownloadFileRecord

type DownloadFileRecord struct {
	// 任务唯一标识,用于在系统中唯一识别该下载任务
	// @gotags: badgerhold:"key"
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty" badgerhold:"key"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	PubkeyHash []byte `protobuf:"bytes,3,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty"`
	// 恢复密钥的第一个分片,用于密钥重建
	FirstKeyShare []byte `protobuf:"bytes,4,opt,name=first_key_share,json=firstKeyShare,proto3" json:"first_key_share,omitempty"`
	// 文件的临时存储位置,用于存储下载过程中的临时文件
	TempStorage string `protobuf:"bytes,5,opt,name=temp_storage,json=tempStorage,proto3" json:"temp_storage,omitempty"`
	// 文件的元数据,如文件名、大小、类型等基本信息
	FileMeta *FileMeta `protobuf:"bytes,6,opt,name=file_meta,json=fileMeta,proto3" json:"file_meta,omitempty"`
	// 文件片段的哈希表,记录每个片段的哈希值,支持纠错和数据完整性验证
	SliceTable map[int64]*HashTable `` /* 180-byte string literal not displayed */
	// 文件下载的开始时间戳,记录任务开始执行的时间点
	StartedAt int64 `protobuf:"varint,8,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"`
	// 文件下载的完成时间戳,记录任务完成执行的时间点
	FinishedAt int64 `protobuf:"varint,9,opt,name=finished_at,json=finishedAt,proto3" json:"finished_at,omitempty"`
	// 下载任务的当前状态,如pending、downloading、completed等
	// @gotags: badgerhold:"index"
	Status               DownloadStatus `protobuf:"varint,10,opt,name=status,proto3,enum=pb.DownloadStatus" json:"status,omitempty" badgerhold:"index"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

DownloadFileRecord 包含待下载文件的详细信息及其分片信息

func (*DownloadFileRecord) Descriptor

func (*DownloadFileRecord) Descriptor() ([]byte, []int)

func (*DownloadFileRecord) GetFileId

func (m *DownloadFileRecord) GetFileId() string

func (*DownloadFileRecord) GetFileMeta

func (m *DownloadFileRecord) GetFileMeta() *FileMeta

func (*DownloadFileRecord) GetFinishedAt

func (m *DownloadFileRecord) GetFinishedAt() int64

func (*DownloadFileRecord) GetFirstKeyShare

func (m *DownloadFileRecord) GetFirstKeyShare() []byte

func (*DownloadFileRecord) GetPubkeyHash

func (m *DownloadFileRecord) GetPubkeyHash() []byte

func (*DownloadFileRecord) GetSliceTable

func (m *DownloadFileRecord) GetSliceTable() map[int64]*HashTable

func (*DownloadFileRecord) GetStartedAt

func (m *DownloadFileRecord) GetStartedAt() int64

func (*DownloadFileRecord) GetStatus

func (m *DownloadFileRecord) GetStatus() DownloadStatus

func (*DownloadFileRecord) GetTaskId

func (m *DownloadFileRecord) GetTaskId() string

func (*DownloadFileRecord) GetTempStorage

func (m *DownloadFileRecord) GetTempStorage() string

func (*DownloadFileRecord) Marshal

func (m *DownloadFileRecord) Marshal() (dAtA []byte, err error)

func (*DownloadFileRecord) MarshalTo

func (m *DownloadFileRecord) MarshalTo(dAtA []byte) (int, error)

func (*DownloadFileRecord) MarshalToSizedBuffer

func (m *DownloadFileRecord) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadFileRecord) ProtoMessage

func (*DownloadFileRecord) ProtoMessage()

func (*DownloadFileRecord) Reset

func (m *DownloadFileRecord) Reset()

func (*DownloadFileRecord) Size

func (m *DownloadFileRecord) Size() (n int)

func (*DownloadFileRecord) String

func (m *DownloadFileRecord) String() string

func (*DownloadFileRecord) Unmarshal

func (m *DownloadFileRecord) Unmarshal(dAtA []byte) error

func (*DownloadFileRecord) XXX_DiscardUnknown

func (m *DownloadFileRecord) XXX_DiscardUnknown()

func (*DownloadFileRecord) XXX_Marshal

func (m *DownloadFileRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadFileRecord) XXX_Merge

func (m *DownloadFileRecord) XXX_Merge(src proto.Message)

func (*DownloadFileRecord) XXX_Size

func (m *DownloadFileRecord) XXX_Size() int

func (*DownloadFileRecord) XXX_Unmarshal

func (m *DownloadFileRecord) XXX_Unmarshal(b []byte) error

type DownloadOperationInfo

type DownloadOperationInfo struct {
	// 任务唯一标识,用于区分和管理不同的下载任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件路径,指定要下载的文件在本地系统中的位置
	FilePath string `protobuf:"bytes,2,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,3,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 文件的基本元数据信息,包括文件名、大小等
	FileMeta *FileMeta `protobuf:"bytes,4,opt,name=file_meta,json=fileMeta,proto3" json:"file_meta,omitempty"`
	// 数据片段数量,表示文件被分割成的片段数
	DataShards int64 `protobuf:"varint,5,opt,name=data_shards,json=dataShards,proto3" json:"data_shards,omitempty"`
	// 校验片段数量,用于纠删码的冗余片段数
	ParityShards int64 `protobuf:"varint,6,opt,name=parity_shards,json=parityShards,proto3" json:"parity_shards,omitempty"`
	// 文件片段大小,单位为字节
	SegmentSize int64 `protobuf:"varint,7,opt,name=segment_size,json=segmentSize,proto3" json:"segment_size,omitempty"`
	// 奇偶校验片段占比,表示冗余数据占总数据的比例
	ParityRatio float64 `protobuf:"fixed64,8,opt,name=parity_ratio,json=parityRatio,proto3" json:"parity_ratio,omitempty"`
	// 文件开始下载的时间戳,记录下载操作开始的精确时间
	UploadTime int64 `protobuf:"varint,9,opt,name=upload_time,json=uploadTime,proto3" json:"upload_time,omitempty"`
	// 下载操作的状态,反映当前下载任务的进展情况
	Status               DownloadStatus `protobuf:"varint,10,opt,name=status,proto3,enum=pb.DownloadStatus" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
	XXX_unrecognized     []byte         `json:"-"`
	XXX_sizecache        int32          `json:"-"`
}

DownloadOperationInfo 表示下载操作的预处理或返回信息

func (*DownloadOperationInfo) Descriptor

func (*DownloadOperationInfo) Descriptor() ([]byte, []int)

func (*DownloadOperationInfo) GetDataShards

func (m *DownloadOperationInfo) GetDataShards() int64

func (*DownloadOperationInfo) GetFileId

func (m *DownloadOperationInfo) GetFileId() string

func (*DownloadOperationInfo) GetFileMeta

func (m *DownloadOperationInfo) GetFileMeta() *FileMeta

func (*DownloadOperationInfo) GetFilePath

func (m *DownloadOperationInfo) GetFilePath() string

func (*DownloadOperationInfo) GetParityRatio

func (m *DownloadOperationInfo) GetParityRatio() float64

func (*DownloadOperationInfo) GetParityShards

func (m *DownloadOperationInfo) GetParityShards() int64

func (*DownloadOperationInfo) GetSegmentSize

func (m *DownloadOperationInfo) GetSegmentSize() int64

func (*DownloadOperationInfo) GetStatus

func (m *DownloadOperationInfo) GetStatus() DownloadStatus

func (*DownloadOperationInfo) GetTaskId

func (m *DownloadOperationInfo) GetTaskId() string

func (*DownloadOperationInfo) GetUploadTime

func (m *DownloadOperationInfo) GetUploadTime() int64

func (*DownloadOperationInfo) Marshal

func (m *DownloadOperationInfo) Marshal() (dAtA []byte, err error)

func (*DownloadOperationInfo) MarshalTo

func (m *DownloadOperationInfo) MarshalTo(dAtA []byte) (int, error)

func (*DownloadOperationInfo) MarshalToSizedBuffer

func (m *DownloadOperationInfo) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadOperationInfo) ProtoMessage

func (*DownloadOperationInfo) ProtoMessage()

func (*DownloadOperationInfo) Reset

func (m *DownloadOperationInfo) Reset()

func (*DownloadOperationInfo) Size

func (m *DownloadOperationInfo) Size() (n int)

func (*DownloadOperationInfo) String

func (m *DownloadOperationInfo) String() string

func (*DownloadOperationInfo) Unmarshal

func (m *DownloadOperationInfo) Unmarshal(dAtA []byte) error

func (*DownloadOperationInfo) XXX_DiscardUnknown

func (m *DownloadOperationInfo) XXX_DiscardUnknown()

func (*DownloadOperationInfo) XXX_Marshal

func (m *DownloadOperationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadOperationInfo) XXX_Merge

func (m *DownloadOperationInfo) XXX_Merge(src proto.Message)

func (*DownloadOperationInfo) XXX_Size

func (m *DownloadOperationInfo) XXX_Size() int

func (*DownloadOperationInfo) XXX_Unmarshal

func (m *DownloadOperationInfo) XXX_Unmarshal(b []byte) error

type DownloadPubSubFileInfoRequest

type DownloadPubSubFileInfoRequest struct {
	// 任务唯一标识,用于在系统中唯一识别该下载任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	PubkeyHash []byte `protobuf:"bytes,3,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty"`
	// 请求者的 AddrInfo,包含 ID 和地址信息
	AddrInfo             []byte   `protobuf:"bytes,4,opt,name=addr_info,json=addrInfo,proto3" json:"addr_info,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

DownloadPubSubFileInfoRequest 下载订阅文件信息请求

func (*DownloadPubSubFileInfoRequest) Descriptor

func (*DownloadPubSubFileInfoRequest) Descriptor() ([]byte, []int)

func (*DownloadPubSubFileInfoRequest) GetAddrInfo

func (m *DownloadPubSubFileInfoRequest) GetAddrInfo() []byte

func (*DownloadPubSubFileInfoRequest) GetFileId

func (m *DownloadPubSubFileInfoRequest) GetFileId() string

func (*DownloadPubSubFileInfoRequest) GetPubkeyHash

func (m *DownloadPubSubFileInfoRequest) GetPubkeyHash() []byte

func (*DownloadPubSubFileInfoRequest) GetTaskId

func (m *DownloadPubSubFileInfoRequest) GetTaskId() string

func (*DownloadPubSubFileInfoRequest) Marshal

func (m *DownloadPubSubFileInfoRequest) Marshal() (dAtA []byte, err error)

func (*DownloadPubSubFileInfoRequest) MarshalTo

func (m *DownloadPubSubFileInfoRequest) MarshalTo(dAtA []byte) (int, error)

func (*DownloadPubSubFileInfoRequest) MarshalToSizedBuffer

func (m *DownloadPubSubFileInfoRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadPubSubFileInfoRequest) ProtoMessage

func (*DownloadPubSubFileInfoRequest) ProtoMessage()

func (*DownloadPubSubFileInfoRequest) Reset

func (m *DownloadPubSubFileInfoRequest) Reset()

func (*DownloadPubSubFileInfoRequest) Size

func (m *DownloadPubSubFileInfoRequest) Size() (n int)

func (*DownloadPubSubFileInfoRequest) String

func (*DownloadPubSubFileInfoRequest) Unmarshal

func (m *DownloadPubSubFileInfoRequest) Unmarshal(dAtA []byte) error

func (*DownloadPubSubFileInfoRequest) XXX_DiscardUnknown

func (m *DownloadPubSubFileInfoRequest) XXX_DiscardUnknown()

func (*DownloadPubSubFileInfoRequest) XXX_Marshal

func (m *DownloadPubSubFileInfoRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadPubSubFileInfoRequest) XXX_Merge

func (m *DownloadPubSubFileInfoRequest) XXX_Merge(src proto.Message)

func (*DownloadPubSubFileInfoRequest) XXX_Size

func (m *DownloadPubSubFileInfoRequest) XXX_Size() int

func (*DownloadPubSubFileInfoRequest) XXX_Unmarshal

func (m *DownloadPubSubFileInfoRequest) XXX_Unmarshal(b []byte) error

type DownloadPubSubFileInfoResponse

type DownloadPubSubFileInfoResponse struct {
	// 任务唯一标识,用于在系统中唯一识别该下载任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 文件元数据,包含文件的基本信息如名称、大小等
	FileMeta *FileMeta `protobuf:"bytes,3,opt,name=file_meta,json=fileMeta,proto3" json:"file_meta,omitempty"`
	// 文件片段的哈希表,记录每个片段的哈希值,支持纠错和数据完整性验证
	SliceTable           map[int64]*HashTable `` /* 180-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}             `json:"-"`
	XXX_unrecognized     []byte               `json:"-"`
	XXX_sizecache        int32                `json:"-"`
}

DownloadPubSubFileInfoResponse 下载订阅文件信息响应

func (*DownloadPubSubFileInfoResponse) Descriptor

func (*DownloadPubSubFileInfoResponse) Descriptor() ([]byte, []int)

func (*DownloadPubSubFileInfoResponse) GetFileId

func (m *DownloadPubSubFileInfoResponse) GetFileId() string

func (*DownloadPubSubFileInfoResponse) GetFileMeta

func (m *DownloadPubSubFileInfoResponse) GetFileMeta() *FileMeta

func (*DownloadPubSubFileInfoResponse) GetSliceTable

func (m *DownloadPubSubFileInfoResponse) GetSliceTable() map[int64]*HashTable

func (*DownloadPubSubFileInfoResponse) GetTaskId

func (m *DownloadPubSubFileInfoResponse) GetTaskId() string

func (*DownloadPubSubFileInfoResponse) Marshal

func (m *DownloadPubSubFileInfoResponse) Marshal() (dAtA []byte, err error)

func (*DownloadPubSubFileInfoResponse) MarshalTo

func (m *DownloadPubSubFileInfoResponse) MarshalTo(dAtA []byte) (int, error)

func (*DownloadPubSubFileInfoResponse) MarshalToSizedBuffer

func (m *DownloadPubSubFileInfoResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadPubSubFileInfoResponse) ProtoMessage

func (*DownloadPubSubFileInfoResponse) ProtoMessage()

func (*DownloadPubSubFileInfoResponse) Reset

func (m *DownloadPubSubFileInfoResponse) Reset()

func (*DownloadPubSubFileInfoResponse) Size

func (m *DownloadPubSubFileInfoResponse) Size() (n int)

func (*DownloadPubSubFileInfoResponse) String

func (*DownloadPubSubFileInfoResponse) Unmarshal

func (m *DownloadPubSubFileInfoResponse) Unmarshal(dAtA []byte) error

func (*DownloadPubSubFileInfoResponse) XXX_DiscardUnknown

func (m *DownloadPubSubFileInfoResponse) XXX_DiscardUnknown()

func (*DownloadPubSubFileInfoResponse) XXX_Marshal

func (m *DownloadPubSubFileInfoResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadPubSubFileInfoResponse) XXX_Merge

func (m *DownloadPubSubFileInfoResponse) XXX_Merge(src proto.Message)

func (*DownloadPubSubFileInfoResponse) XXX_Size

func (m *DownloadPubSubFileInfoResponse) XXX_Size() int

func (*DownloadPubSubFileInfoResponse) XXX_Unmarshal

func (m *DownloadPubSubFileInfoResponse) XXX_Unmarshal(b []byte) error

type DownloadPubSubManifestRequest

type DownloadPubSubManifestRequest struct {
	// 任务唯一标识,用于在系统中唯一识别该下载任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	PubkeyHash []byte `protobuf:"bytes,3,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty"`
	// 请求者的 AddrInfo,包含 ID 和地址信息
	AddrInfo []byte `protobuf:"bytes,4,opt,name=addr_info,json=addrInfo,proto3" json:"addr_info,omitempty"`
	// 请求下载的文件片段唯一标识数组
	RequestedSegmentIds  []string `protobuf:"bytes,5,rep,name=requested_segment_ids,json=requestedSegmentIds,proto3" json:"requested_segment_ids,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

DownloadPubSubManifestRequest 下载订阅索引清单请求

func (*DownloadPubSubManifestRequest) Descriptor

func (*DownloadPubSubManifestRequest) Descriptor() ([]byte, []int)

func (*DownloadPubSubManifestRequest) GetAddrInfo

func (m *DownloadPubSubManifestRequest) GetAddrInfo() []byte

func (*DownloadPubSubManifestRequest) GetFileId

func (m *DownloadPubSubManifestRequest) GetFileId() string

func (*DownloadPubSubManifestRequest) GetPubkeyHash

func (m *DownloadPubSubManifestRequest) GetPubkeyHash() []byte

func (*DownloadPubSubManifestRequest) GetRequestedSegmentIds

func (m *DownloadPubSubManifestRequest) GetRequestedSegmentIds() []string

func (*DownloadPubSubManifestRequest) GetTaskId

func (m *DownloadPubSubManifestRequest) GetTaskId() string

func (*DownloadPubSubManifestRequest) Marshal

func (m *DownloadPubSubManifestRequest) Marshal() (dAtA []byte, err error)

func (*DownloadPubSubManifestRequest) MarshalTo

func (m *DownloadPubSubManifestRequest) MarshalTo(dAtA []byte) (int, error)

func (*DownloadPubSubManifestRequest) MarshalToSizedBuffer

func (m *DownloadPubSubManifestRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadPubSubManifestRequest) ProtoMessage

func (*DownloadPubSubManifestRequest) ProtoMessage()

func (*DownloadPubSubManifestRequest) Reset

func (m *DownloadPubSubManifestRequest) Reset()

func (*DownloadPubSubManifestRequest) Size

func (m *DownloadPubSubManifestRequest) Size() (n int)

func (*DownloadPubSubManifestRequest) String

func (*DownloadPubSubManifestRequest) Unmarshal

func (m *DownloadPubSubManifestRequest) Unmarshal(dAtA []byte) error

func (*DownloadPubSubManifestRequest) XXX_DiscardUnknown

func (m *DownloadPubSubManifestRequest) XXX_DiscardUnknown()

func (*DownloadPubSubManifestRequest) XXX_Marshal

func (m *DownloadPubSubManifestRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadPubSubManifestRequest) XXX_Merge

func (m *DownloadPubSubManifestRequest) XXX_Merge(src proto.Message)

func (*DownloadPubSubManifestRequest) XXX_Size

func (m *DownloadPubSubManifestRequest) XXX_Size() int

func (*DownloadPubSubManifestRequest) XXX_Unmarshal

func (m *DownloadPubSubManifestRequest) XXX_Unmarshal(b []byte) error

type DownloadPubSubManifestResponse

type DownloadPubSubManifestResponse struct {
	// 任务唯一标识,用于在系统中唯一识别该下载任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 本地可用的分片索引数组
	AvailableSlices      map[int64]string `` /* 195-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

DownloadPubSubManifestResponse 下载订阅索引清单响应

func (*DownloadPubSubManifestResponse) Descriptor

func (*DownloadPubSubManifestResponse) Descriptor() ([]byte, []int)

func (*DownloadPubSubManifestResponse) GetAvailableSlices

func (m *DownloadPubSubManifestResponse) GetAvailableSlices() map[int64]string

func (*DownloadPubSubManifestResponse) GetTaskId

func (m *DownloadPubSubManifestResponse) GetTaskId() string

func (*DownloadPubSubManifestResponse) Marshal

func (m *DownloadPubSubManifestResponse) Marshal() (dAtA []byte, err error)

func (*DownloadPubSubManifestResponse) MarshalTo

func (m *DownloadPubSubManifestResponse) MarshalTo(dAtA []byte) (int, error)

func (*DownloadPubSubManifestResponse) MarshalToSizedBuffer

func (m *DownloadPubSubManifestResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadPubSubManifestResponse) ProtoMessage

func (*DownloadPubSubManifestResponse) ProtoMessage()

func (*DownloadPubSubManifestResponse) Reset

func (m *DownloadPubSubManifestResponse) Reset()

func (*DownloadPubSubManifestResponse) Size

func (m *DownloadPubSubManifestResponse) Size() (n int)

func (*DownloadPubSubManifestResponse) String

func (*DownloadPubSubManifestResponse) Unmarshal

func (m *DownloadPubSubManifestResponse) Unmarshal(dAtA []byte) error

func (*DownloadPubSubManifestResponse) XXX_DiscardUnknown

func (m *DownloadPubSubManifestResponse) XXX_DiscardUnknown()

func (*DownloadPubSubManifestResponse) XXX_Marshal

func (m *DownloadPubSubManifestResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadPubSubManifestResponse) XXX_Merge

func (m *DownloadPubSubManifestResponse) XXX_Merge(src proto.Message)

func (*DownloadPubSubManifestResponse) XXX_Size

func (m *DownloadPubSubManifestResponse) XXX_Size() int

func (*DownloadPubSubManifestResponse) XXX_Unmarshal

func (m *DownloadPubSubManifestResponse) XXX_Unmarshal(b []byte) error

type DownloadSegmentRecord

type DownloadSegmentRecord struct {
	// 文件片段的唯一标识,通常是该片段数据的哈希值
	// @gotags: badgerhold:"key"
	SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty" badgerhold:"key"`
	// 文件片段的索引,表示该片段在文件中的顺序,从0开始
	// @gotags: badgerhold:"index"
	SegmentIndex int64 `protobuf:"varint,2,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty" badgerhold:"index"`
	// 任务唯一标识
	// @gotags: badgerhold:"index"
	TaskId string `protobuf:"bytes,3,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty" badgerhold:"index"`
	// 分片大小,单位为字节,描述该片段的数据量大小
	Size_ int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// 当前片段的CRC32校验和
	// @gotags: badgerhold:"index"
	Crc32Checksum uint32 `protobuf:"varint,5,opt,name=crc32_checksum,json=crc32Checksum,proto3" json:"crc32_checksum,omitempty" badgerhold:"index"`
	// 当前片段的解密后内容
	SegmentContent []byte `protobuf:"bytes,6,opt,name=segment_content,json=segmentContent,proto3" json:"segment_content,omitempty"`
	// 是否是纠删码片段,用于标识该片段是原始数据还是冗余数据
	IsRsCodes bool `protobuf:"varint,7,opt,name=is_rs_codes,json=isRsCodes,proto3" json:"is_rs_codes,omitempty"`
	// 分片所在节点,及其是否可用
	SegmentNode map[string]bool `` /* 183-byte string literal not displayed */
	// 分片的下载状态,描述该片段的下载进度和结果
	// @gotags: badgerhold:"index"
	Status               SegmentDownloadStatus `protobuf:"varint,9,opt,name=status,proto3,enum=pb.SegmentDownloadStatus" json:"status,omitempty" badgerhold:"index"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

DownloadSegmentRecord 描述一个文件分片的详细信息及其下载状态

func (*DownloadSegmentRecord) Descriptor

func (*DownloadSegmentRecord) Descriptor() ([]byte, []int)

func (*DownloadSegmentRecord) GetCrc32Checksum

func (m *DownloadSegmentRecord) GetCrc32Checksum() uint32

func (*DownloadSegmentRecord) GetIsRsCodes

func (m *DownloadSegmentRecord) GetIsRsCodes() bool

func (*DownloadSegmentRecord) GetSegmentContent

func (m *DownloadSegmentRecord) GetSegmentContent() []byte

func (*DownloadSegmentRecord) GetSegmentId

func (m *DownloadSegmentRecord) GetSegmentId() string

func (*DownloadSegmentRecord) GetSegmentIndex

func (m *DownloadSegmentRecord) GetSegmentIndex() int64

func (*DownloadSegmentRecord) GetSegmentNode

func (m *DownloadSegmentRecord) GetSegmentNode() map[string]bool

func (*DownloadSegmentRecord) GetSize_

func (m *DownloadSegmentRecord) GetSize_() int64

func (*DownloadSegmentRecord) GetStatus

func (*DownloadSegmentRecord) GetTaskId

func (m *DownloadSegmentRecord) GetTaskId() string

func (*DownloadSegmentRecord) Marshal

func (m *DownloadSegmentRecord) Marshal() (dAtA []byte, err error)

func (*DownloadSegmentRecord) MarshalTo

func (m *DownloadSegmentRecord) MarshalTo(dAtA []byte) (int, error)

func (*DownloadSegmentRecord) MarshalToSizedBuffer

func (m *DownloadSegmentRecord) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*DownloadSegmentRecord) ProtoMessage

func (*DownloadSegmentRecord) ProtoMessage()

func (*DownloadSegmentRecord) Reset

func (m *DownloadSegmentRecord) Reset()

func (*DownloadSegmentRecord) Size

func (m *DownloadSegmentRecord) Size() (n int)

func (*DownloadSegmentRecord) String

func (m *DownloadSegmentRecord) String() string

func (*DownloadSegmentRecord) Unmarshal

func (m *DownloadSegmentRecord) Unmarshal(dAtA []byte) error

func (*DownloadSegmentRecord) XXX_DiscardUnknown

func (m *DownloadSegmentRecord) XXX_DiscardUnknown()

func (*DownloadSegmentRecord) XXX_Marshal

func (m *DownloadSegmentRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*DownloadSegmentRecord) XXX_Merge

func (m *DownloadSegmentRecord) XXX_Merge(src proto.Message)

func (*DownloadSegmentRecord) XXX_Size

func (m *DownloadSegmentRecord) XXX_Size() int

func (*DownloadSegmentRecord) XXX_Unmarshal

func (m *DownloadSegmentRecord) XXX_Unmarshal(b []byte) error

type DownloadStatus

type DownloadStatus int32

DownloadStatus 表示下载任务的状态

const (
	// 未指定状态,表示任务状态未初始化或未知
	DownloadStatus_DOWNLOAD_STATUS_UNSPECIFIED DownloadStatus = 0
	// 获取文件信息中,表示正在向网络请求文件的元数据信息(如名称、大小、格式等)
	DownloadStatus_DOWNLOAD_STATUS_FETCHING_INFO DownloadStatus = 1
	// 待下载,任务已创建但尚未开始执行,等待系统调度
	DownloadStatus_DOWNLOAD_STATUS_PENDING DownloadStatus = 2
	// 下载中,任务正在执行文件下载操作,数据传输进行中
	DownloadStatus_DOWNLOAD_STATUS_DOWNLOADING DownloadStatus = 3
	// 已暂停,任务已被用户或系统暂停,可通过恢复操作继续执行
	DownloadStatus_DOWNLOAD_STATUS_PAUSED DownloadStatus = 4
	// 已完成,任务已成功完成所有下载操作,文件已全部传输到目标位置
	DownloadStatus_DOWNLOAD_STATUS_COMPLETED DownloadStatus = 5
	// 失败,任务由于网络问题、存储错误等原因未能成功完成
	DownloadStatus_DOWNLOAD_STATUS_FAILED DownloadStatus = 6
	// 已取消,任务被用户或系统主动取消,不再继续执行
	DownloadStatus_DOWNLOAD_STATUS_CANCELLED DownloadStatus = 7
)

func (DownloadStatus) EnumDescriptor

func (DownloadStatus) EnumDescriptor() ([]byte, []int)

func (DownloadStatus) String

func (x DownloadStatus) String() string

type FileAssetRecord

type FileAssetRecord struct {
	// 文件唯一标识
	// @gotags: badgerhold:"key"
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty" badgerhold:"key"`
	// 文件内容的SHA256哈希值,用于校验文件完整性
	Sha256Hash []byte `protobuf:"bytes,2,opt,name=sha256_hash,json=sha256Hash,proto3" json:"sha256_hash,omitempty"`
	// 文件名称
	// @gotags: badgerhold:"index"
	Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty" badgerhold:"index"`
	// 文件大小(字节)
	Size_ int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// 文件扩展名,用于识别文件类型
	Extension string `protobuf:"bytes,5,opt,name=extension,proto3" json:"extension,omitempty"`
	// MIME类型,用于标识文件格式,如"application/pdf"
	ContentType string `protobuf:"bytes,6,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	// @gotags: badgerhold:"index"
	PubkeyHash []byte `protobuf:"bytes,7,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty" badgerhold:"index"`
	// 父级ID,用于构建文件层次结构
	ParentId int64 `protobuf:"varint,8,opt,name=parent_id,json=parentId,proto3" json:"parent_id,omitempty"`
	// 文件类型(0:文件, 1:文件夹)
	Type int64 `protobuf:"varint,9,opt,name=type,proto3" json:"type,omitempty"`
	// 标签,用于文件分类和检索
	Labels string `protobuf:"bytes,10,opt,name=labels,proto3" json:"labels,omitempty"`
	// 是否共享,标识文件是否可被其他用户访问
	IsShared bool `protobuf:"varint,11,opt,name=is_shared,json=isShared,proto3" json:"is_shared,omitempty"`
	// 共享金额,如果文件是付费共享,这里记录共享价格
	ShareAmount float64 `protobuf:"fixed64,12,opt,name=share_amount,json=shareAmount,proto3" json:"share_amount,omitempty"`
	// 上传时间(创建时间),记录文件首次上传的时间戳
	UploadTime int64 `protobuf:"varint,13,opt,name=upload_time,json=uploadTime,proto3" json:"upload_time,omitempty"`
	// 修改时间,记录文件最后一次被修改的时间戳
	ModTime              int64    `protobuf:"varint,14,opt,name=mod_time,json=modTime,proto3" json:"mod_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

FileAssetRecord 表示文件资产记录,用于存储在本地数据库中

func (*FileAssetRecord) Descriptor

func (*FileAssetRecord) Descriptor() ([]byte, []int)

func (*FileAssetRecord) GetContentType

func (m *FileAssetRecord) GetContentType() string

func (*FileAssetRecord) GetExtension

func (m *FileAssetRecord) GetExtension() string

func (*FileAssetRecord) GetFileId

func (m *FileAssetRecord) GetFileId() string

func (*FileAssetRecord) GetIsShared

func (m *FileAssetRecord) GetIsShared() bool

func (*FileAssetRecord) GetLabels

func (m *FileAssetRecord) GetLabels() string

func (*FileAssetRecord) GetModTime

func (m *FileAssetRecord) GetModTime() int64

func (*FileAssetRecord) GetName

func (m *FileAssetRecord) GetName() string

func (*FileAssetRecord) GetParentId

func (m *FileAssetRecord) GetParentId() int64

func (*FileAssetRecord) GetPubkeyHash

func (m *FileAssetRecord) GetPubkeyHash() []byte

func (*FileAssetRecord) GetSha256Hash

func (m *FileAssetRecord) GetSha256Hash() []byte

func (*FileAssetRecord) GetShareAmount

func (m *FileAssetRecord) GetShareAmount() float64

func (*FileAssetRecord) GetSize_

func (m *FileAssetRecord) GetSize_() int64

func (*FileAssetRecord) GetType

func (m *FileAssetRecord) GetType() int64

func (*FileAssetRecord) GetUploadTime

func (m *FileAssetRecord) GetUploadTime() int64

func (*FileAssetRecord) Marshal

func (m *FileAssetRecord) Marshal() (dAtA []byte, err error)

func (*FileAssetRecord) MarshalTo

func (m *FileAssetRecord) MarshalTo(dAtA []byte) (int, error)

func (*FileAssetRecord) MarshalToSizedBuffer

func (m *FileAssetRecord) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*FileAssetRecord) ProtoMessage

func (*FileAssetRecord) ProtoMessage()

func (*FileAssetRecord) Reset

func (m *FileAssetRecord) Reset()

func (*FileAssetRecord) Size

func (m *FileAssetRecord) Size() (n int)

func (*FileAssetRecord) String

func (m *FileAssetRecord) String() string

func (*FileAssetRecord) Unmarshal

func (m *FileAssetRecord) Unmarshal(dAtA []byte) error

func (*FileAssetRecord) XXX_DiscardUnknown

func (m *FileAssetRecord) XXX_DiscardUnknown()

func (*FileAssetRecord) XXX_Marshal

func (m *FileAssetRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*FileAssetRecord) XXX_Merge

func (m *FileAssetRecord) XXX_Merge(src proto.Message)

func (*FileAssetRecord) XXX_Size

func (m *FileAssetRecord) XXX_Size() int

func (*FileAssetRecord) XXX_Unmarshal

func (m *FileAssetRecord) XXX_Unmarshal(b []byte) error

type FileMeta

type FileMeta struct {
	// 文件原始名称,不包含扩展名
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// 文件扩展名,不包含点号(.)
	Extension string `protobuf:"bytes,2,opt,name=extension,proto3" json:"extension,omitempty"`
	// 文件总大小,单位:字节
	Size_ int64 `protobuf:"varint,3,opt,name=size,proto3" json:"size,omitempty"`
	// MIME类型,用于标识文件格式
	ContentType string `protobuf:"bytes,4,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// 文件内容的SHA256哈希值,用于校验文件完整性
	Sha256Hash []byte `protobuf:"bytes,5,opt,name=sha256_hash,json=sha256Hash,proto3" json:"sha256_hash,omitempty"`
	// 文件最后修改的Unix时间戳
	ModifiedAt           int64    `protobuf:"varint,6,opt,name=modified_at,json=modifiedAt,proto3" json:"modified_at,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

FileMeta 定义文件的基本元数据

func (*FileMeta) Descriptor

func (*FileMeta) Descriptor() ([]byte, []int)

func (*FileMeta) GetContentType

func (m *FileMeta) GetContentType() string

func (*FileMeta) GetExtension

func (m *FileMeta) GetExtension() string

func (*FileMeta) GetModifiedAt

func (m *FileMeta) GetModifiedAt() int64

func (*FileMeta) GetName

func (m *FileMeta) GetName() string

func (*FileMeta) GetSha256Hash

func (m *FileMeta) GetSha256Hash() []byte

func (*FileMeta) GetSize_

func (m *FileMeta) GetSize_() int64

func (*FileMeta) Marshal

func (m *FileMeta) Marshal() (dAtA []byte, err error)

func (*FileMeta) MarshalTo

func (m *FileMeta) MarshalTo(dAtA []byte) (int, error)

func (*FileMeta) MarshalToSizedBuffer

func (m *FileMeta) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*FileMeta) ProtoMessage

func (*FileMeta) ProtoMessage()

func (*FileMeta) Reset

func (m *FileMeta) Reset()

func (*FileMeta) Size

func (m *FileMeta) Size() (n int)

func (*FileMeta) String

func (m *FileMeta) String() string

func (*FileMeta) Unmarshal

func (m *FileMeta) Unmarshal(dAtA []byte) error

func (*FileMeta) XXX_DiscardUnknown

func (m *FileMeta) XXX_DiscardUnknown()

func (*FileMeta) XXX_Marshal

func (m *FileMeta) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*FileMeta) XXX_Merge

func (m *FileMeta) XXX_Merge(src proto.Message)

func (*FileMeta) XXX_Size

func (m *FileMeta) XXX_Size() int

func (*FileMeta) XXX_Unmarshal

func (m *FileMeta) XXX_Unmarshal(b []byte) error

type FileSecurity

type FileSecurity struct {
	// 文件加密密钥,用于加密整个文件
	Secret []byte `protobuf:"bytes,1,opt,name=secret,proto3" json:"secret,omitempty"`
	// 文件加密密钥列表,用于在上传过程中保证文件数据的安全,支持多重加密
	EncryptionKey [][]byte `protobuf:"bytes,2,rep,name=encryption_key,json=encryptionKey,proto3" json:"encryption_key,omitempty"`
	// 所有者的私钥,用于文件片段签名(注意:在实际使用中,私钥不应该通过网络传输)
	OwnerPriv []byte `protobuf:"bytes,3,opt,name=owner_priv,json=ownerPriv,proto3" json:"owner_priv,omitempty"`
	// P2PKH 脚本,用于验证文件所有者的身份
	P2PkhScript []byte `protobuf:"bytes,4,opt,name=p2pkh_script,json=p2pkhScript,proto3" json:"p2pkh_script,omitempty"`
	// P2PK 脚本,用于进行文件验签操作
	P2PkScript           []byte   `protobuf:"bytes,5,opt,name=p2pk_script,json=p2pkScript,proto3" json:"p2pk_script,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

FileSecurity 封装了文件的安全和权限相关的信息

func (*FileSecurity) Descriptor

func (*FileSecurity) Descriptor() ([]byte, []int)

func (*FileSecurity) GetEncryptionKey

func (m *FileSecurity) GetEncryptionKey() [][]byte

func (*FileSecurity) GetOwnerPriv

func (m *FileSecurity) GetOwnerPriv() []byte

func (*FileSecurity) GetP2PkScript

func (m *FileSecurity) GetP2PkScript() []byte

func (*FileSecurity) GetP2PkhScript

func (m *FileSecurity) GetP2PkhScript() []byte

func (*FileSecurity) GetSecret

func (m *FileSecurity) GetSecret() []byte

func (*FileSecurity) Marshal

func (m *FileSecurity) Marshal() (dAtA []byte, err error)

func (*FileSecurity) MarshalTo

func (m *FileSecurity) MarshalTo(dAtA []byte) (int, error)

func (*FileSecurity) MarshalToSizedBuffer

func (m *FileSecurity) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*FileSecurity) ProtoMessage

func (*FileSecurity) ProtoMessage()

func (*FileSecurity) Reset

func (m *FileSecurity) Reset()

func (*FileSecurity) Size

func (m *FileSecurity) Size() (n int)

func (*FileSecurity) String

func (m *FileSecurity) String() string

func (*FileSecurity) Unmarshal

func (m *FileSecurity) Unmarshal(dAtA []byte) error

func (*FileSecurity) XXX_DiscardUnknown

func (m *FileSecurity) XXX_DiscardUnknown()

func (*FileSecurity) XXX_Marshal

func (m *FileSecurity) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*FileSecurity) XXX_Merge

func (m *FileSecurity) XXX_Merge(src proto.Message)

func (*FileSecurity) XXX_Size

func (m *FileSecurity) XXX_Size() int

func (*FileSecurity) XXX_Unmarshal

func (m *FileSecurity) XXX_Unmarshal(b []byte) error

type FileSegmentStorage

type FileSegmentStorage struct {
	// 文件唯一标识,由文件内容和所有者私钥生成的SHA256哈希值
	// @gotags: badgerhold:"index"
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty" badgerhold:"index"`
	// 文件原始名称,不包含扩展名
	// @gotags: badgerhold:"index"
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty" badgerhold:"index"`
	// 文件扩展名,不包含点号(.)
	Extension string `protobuf:"bytes,3,opt,name=extension,proto3" json:"extension,omitempty"`
	// 文件总大小,单位:字节
	Size_ int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// MIME类型,用于标识文件格式,如"application/pdf"
	ContentType string `protobuf:"bytes,5,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// 文件内容的SHA256哈希值,用于校验文件完整性
	Sha256Hash []byte `protobuf:"bytes,6,opt,name=sha256_hash,json=sha256Hash,proto3" json:"sha256_hash,omitempty"`
	// 文件首次上传的Unix时间戳
	UploadTime int64 `protobuf:"varint,7,opt,name=upload_time,json=uploadTime,proto3" json:"upload_time,omitempty"`
	// P2PKH脚本,用于验证文件所有者身份
	// @gotags: badgerhold:"index"
	P2PkhScript []byte `protobuf:"bytes,8,opt,name=p2pkh_script,json=p2pkhScript,proto3" json:"p2pkh_script,omitempty" badgerhold:"index"`
	// P2PK脚本,用于文件签名验证
	P2PkScript []byte `protobuf:"bytes,9,opt,name=p2pk_script,json=p2pkScript,proto3" json:"p2pk_script,omitempty"`
	// 文件分片哈希表,key为分片索引,value为分片的哈希信息
	SliceTable map[int64]*HashTable `` /* 181-byte string literal not displayed */
	// 当前片段的唯一标识,由file_id和segment_index生成
	// @gotags: badgerhold:"key"
	SegmentId string `protobuf:"bytes,11,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty" badgerhold:"key"`
	// 当前片段在文件中的索引位置,从0开始
	SegmentIndex int64 `protobuf:"varint,12,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 当前片段的CRC32校验和
	Crc32Checksum uint32 `protobuf:"varint,13,opt,name=crc32_checksum,json=crc32Checksum,proto3" json:"crc32_checksum,omitempty"`
	// 当前片段的加密后内容
	SegmentContent []byte `protobuf:"bytes,14,opt,name=segment_content,json=segmentContent,proto3" json:"segment_content,omitempty"`
	// 用于解密segment_content的AES密钥
	EncryptionKey []byte `protobuf:"bytes,15,opt,name=encryption_key,json=encryptionKey,proto3" json:"encryption_key,omitempty"`
	// 文件所有者对片段内容的数字签名
	Signature []byte `protobuf:"bytes,16,opt,name=signature,proto3" json:"signature,omitempty"`
	// 是否允许其他节点访问该片段
	Shared bool `protobuf:"varint,17,opt,name=shared,proto3" json:"shared,omitempty"`
	// 片段的版本号,用于版本控制
	Version              string   `protobuf:"bytes,18,opt,name=version,proto3" json:"version,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

FileSegmentStorage 表示文件片段的存储结构,用于持久化存储文件片段及其元数据

func (*FileSegmentStorage) Descriptor

func (*FileSegmentStorage) Descriptor() ([]byte, []int)

func (*FileSegmentStorage) GetContentType

func (m *FileSegmentStorage) GetContentType() string

func (*FileSegmentStorage) GetCrc32Checksum

func (m *FileSegmentStorage) GetCrc32Checksum() uint32

func (*FileSegmentStorage) GetEncryptionKey

func (m *FileSegmentStorage) GetEncryptionKey() []byte

func (*FileSegmentStorage) GetExtension

func (m *FileSegmentStorage) GetExtension() string

func (*FileSegmentStorage) GetFileId

func (m *FileSegmentStorage) GetFileId() string

func (*FileSegmentStorage) GetName

func (m *FileSegmentStorage) GetName() string

func (*FileSegmentStorage) GetP2PkScript

func (m *FileSegmentStorage) GetP2PkScript() []byte

func (*FileSegmentStorage) GetP2PkhScript

func (m *FileSegmentStorage) GetP2PkhScript() []byte

func (*FileSegmentStorage) GetSegmentContent

func (m *FileSegmentStorage) GetSegmentContent() []byte

func (*FileSegmentStorage) GetSegmentId

func (m *FileSegmentStorage) GetSegmentId() string

func (*FileSegmentStorage) GetSegmentIndex

func (m *FileSegmentStorage) GetSegmentIndex() int64

func (*FileSegmentStorage) GetSha256Hash

func (m *FileSegmentStorage) GetSha256Hash() []byte

func (*FileSegmentStorage) GetShared

func (m *FileSegmentStorage) GetShared() bool

func (*FileSegmentStorage) GetSignature

func (m *FileSegmentStorage) GetSignature() []byte

func (*FileSegmentStorage) GetSize_

func (m *FileSegmentStorage) GetSize_() int64

func (*FileSegmentStorage) GetSliceTable

func (m *FileSegmentStorage) GetSliceTable() map[int64]*HashTable

func (*FileSegmentStorage) GetUploadTime

func (m *FileSegmentStorage) GetUploadTime() int64

func (*FileSegmentStorage) GetVersion

func (m *FileSegmentStorage) GetVersion() string

func (*FileSegmentStorage) Marshal

func (m *FileSegmentStorage) Marshal() (dAtA []byte, err error)

func (*FileSegmentStorage) MarshalTo

func (m *FileSegmentStorage) MarshalTo(dAtA []byte) (int, error)

func (*FileSegmentStorage) MarshalToSizedBuffer

func (m *FileSegmentStorage) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*FileSegmentStorage) ProtoMessage

func (*FileSegmentStorage) ProtoMessage()

func (*FileSegmentStorage) Reset

func (m *FileSegmentStorage) Reset()

func (*FileSegmentStorage) Size

func (m *FileSegmentStorage) Size() (n int)

func (*FileSegmentStorage) String

func (m *FileSegmentStorage) String() string

func (*FileSegmentStorage) Unmarshal

func (m *FileSegmentStorage) Unmarshal(dAtA []byte) error

func (*FileSegmentStorage) XXX_DiscardUnknown

func (m *FileSegmentStorage) XXX_DiscardUnknown()

func (*FileSegmentStorage) XXX_Marshal

func (m *FileSegmentStorage) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*FileSegmentStorage) XXX_Merge

func (m *FileSegmentStorage) XXX_Merge(src proto.Message)

func (*FileSegmentStorage) XXX_Size

func (m *FileSegmentStorage) XXX_Size() int

func (*FileSegmentStorage) XXX_Unmarshal

func (m *FileSegmentStorage) XXX_Unmarshal(b []byte) error

type FileSegmentStorageSql

type FileSegmentStorageSql struct {
	// 文件唯一标识,由文件内容和所有者私钥生成的SHA256哈希值
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 文件原始名称,不包含扩展名
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// 文件扩展名,不包含点号(.)
	Extension string `protobuf:"bytes,3,opt,name=extension,proto3" json:"extension,omitempty"`
	// 文件总大小,单位:字节
	Size_ int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// MIME类型,用于标识文件格式,如"application/pdf"
	ContentType string `protobuf:"bytes,5,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// 文件内容的SHA256哈希值,用于校验文件完整性
	Sha256Hash []byte `protobuf:"bytes,6,opt,name=sha256_hash,json=sha256Hash,proto3" json:"sha256_hash,omitempty"`
	// 文件首次上传的Unix时间戳
	UploadTime int64 `protobuf:"varint,7,opt,name=upload_time,json=uploadTime,proto3" json:"upload_time,omitempty"`
	// P2PKH脚本,用于验证文件所有者身份
	// @gotags: badgerhold:"index"
	P2PkhScript []byte `protobuf:"bytes,8,opt,name=p2pkh_script,json=p2pkhScript,proto3" json:"p2pkh_script,omitempty" badgerhold:"index"`
	// P2PK脚本,用于文件签名验证
	P2PkScript []byte `protobuf:"bytes,9,opt,name=p2pk_script,json=p2pkScript,proto3" json:"p2pk_script,omitempty"`
	// 文件分片哈希表,key为分片索引,value为分片的哈希信息
	SliceTable []byte `protobuf:"bytes,10,opt,name=slice_table,json=sliceTable,proto3" json:"slice_table,omitempty"`
	// 当前片段的唯一标识,由file_id和segment_index生成
	SegmentId string `protobuf:"bytes,11,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	// 当前片段在文件中的索引位置,从0开始
	SegmentIndex int64 `protobuf:"varint,12,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 当前片段的CRC32校验和
	Crc32Checksum uint32 `protobuf:"varint,13,opt,name=crc32_checksum,json=crc32Checksum,proto3" json:"crc32_checksum,omitempty"`
	// 当前片段的加密后内容
	SegmentContent []byte `protobuf:"bytes,14,opt,name=segment_content,json=segmentContent,proto3" json:"segment_content,omitempty"`
	// 用于解密segment_content的AES密钥
	EncryptionKey []byte `protobuf:"bytes,15,opt,name=encryption_key,json=encryptionKey,proto3" json:"encryption_key,omitempty"`
	// 文件所有者对片段内容的数字签名
	Signature []byte `protobuf:"bytes,16,opt,name=signature,proto3" json:"signature,omitempty"`
	// 是否允许其他节点访问该片段
	Shared bool `protobuf:"varint,17,opt,name=shared,proto3" json:"shared,omitempty"`
	// 片段的版本号,用于版本控制
	Version              string   `protobuf:"bytes,18,opt,name=version,proto3" json:"version,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

FileSegmentStorageSql 表示文件片段的存储结构,用于持久化存储文件片段及其元数据()

func (*FileSegmentStorageSql) Descriptor

func (*FileSegmentStorageSql) Descriptor() ([]byte, []int)

func (*FileSegmentStorageSql) GetContentType

func (m *FileSegmentStorageSql) GetContentType() string

func (*FileSegmentStorageSql) GetCrc32Checksum

func (m *FileSegmentStorageSql) GetCrc32Checksum() uint32

func (*FileSegmentStorageSql) GetEncryptionKey

func (m *FileSegmentStorageSql) GetEncryptionKey() []byte

func (*FileSegmentStorageSql) GetExtension

func (m *FileSegmentStorageSql) GetExtension() string

func (*FileSegmentStorageSql) GetFileId

func (m *FileSegmentStorageSql) GetFileId() string

func (*FileSegmentStorageSql) GetName

func (m *FileSegmentStorageSql) GetName() string

func (*FileSegmentStorageSql) GetP2PkScript

func (m *FileSegmentStorageSql) GetP2PkScript() []byte

func (*FileSegmentStorageSql) GetP2PkhScript

func (m *FileSegmentStorageSql) GetP2PkhScript() []byte

func (*FileSegmentStorageSql) GetSegmentContent

func (m *FileSegmentStorageSql) GetSegmentContent() []byte

func (*FileSegmentStorageSql) GetSegmentId

func (m *FileSegmentStorageSql) GetSegmentId() string

func (*FileSegmentStorageSql) GetSegmentIndex

func (m *FileSegmentStorageSql) GetSegmentIndex() int64

func (*FileSegmentStorageSql) GetSha256Hash

func (m *FileSegmentStorageSql) GetSha256Hash() []byte

func (*FileSegmentStorageSql) GetShared

func (m *FileSegmentStorageSql) GetShared() bool

func (*FileSegmentStorageSql) GetSignature

func (m *FileSegmentStorageSql) GetSignature() []byte

func (*FileSegmentStorageSql) GetSize_

func (m *FileSegmentStorageSql) GetSize_() int64

func (*FileSegmentStorageSql) GetSliceTable

func (m *FileSegmentStorageSql) GetSliceTable() []byte

func (*FileSegmentStorageSql) GetUploadTime

func (m *FileSegmentStorageSql) GetUploadTime() int64

func (*FileSegmentStorageSql) GetVersion

func (m *FileSegmentStorageSql) GetVersion() string

func (*FileSegmentStorageSql) Marshal

func (m *FileSegmentStorageSql) Marshal() (dAtA []byte, err error)

func (*FileSegmentStorageSql) MarshalTo

func (m *FileSegmentStorageSql) MarshalTo(dAtA []byte) (int, error)

func (*FileSegmentStorageSql) MarshalToSizedBuffer

func (m *FileSegmentStorageSql) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*FileSegmentStorageSql) ProtoMessage

func (*FileSegmentStorageSql) ProtoMessage()

func (*FileSegmentStorageSql) Reset

func (m *FileSegmentStorageSql) Reset()

func (*FileSegmentStorageSql) Size

func (m *FileSegmentStorageSql) Size() (n int)

func (*FileSegmentStorageSql) String

func (m *FileSegmentStorageSql) String() string

func (*FileSegmentStorageSql) Unmarshal

func (m *FileSegmentStorageSql) Unmarshal(dAtA []byte) error

func (*FileSegmentStorageSql) XXX_DiscardUnknown

func (m *FileSegmentStorageSql) XXX_DiscardUnknown()

func (*FileSegmentStorageSql) XXX_Marshal

func (m *FileSegmentStorageSql) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*FileSegmentStorageSql) XXX_Merge

func (m *FileSegmentStorageSql) XXX_Merge(src proto.Message)

func (*FileSegmentStorageSql) XXX_Size

func (m *FileSegmentStorageSql) XXX_Size() int

func (*FileSegmentStorageSql) XXX_Unmarshal

func (m *FileSegmentStorageSql) XXX_Unmarshal(b []byte) error

type HashTable

type HashTable struct {
	// 当前片段的唯一标识,由file_id和segment_index生成
	SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	// 当前片段在文件中的索引位置,从0开始
	SegmentIndex int64 `protobuf:"varint,2,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 分片的CRC32校验和
	Crc32Checksum uint32 `protobuf:"varint,3,opt,name=crc32_checksum,json=crc32Checksum,proto3" json:"crc32_checksum,omitempty"`
	// 是否为纠删码冗余分片
	IsRsCodes            bool     `protobuf:"varint,4,opt,name=is_rs_codes,json=isRsCodes,proto3" json:"is_rs_codes,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

HashTable 定义文件分片的校验信息

func (*HashTable) Descriptor

func (*HashTable) Descriptor() ([]byte, []int)

func (*HashTable) GetCrc32Checksum

func (m *HashTable) GetCrc32Checksum() uint32

func (*HashTable) GetIsRsCodes

func (m *HashTable) GetIsRsCodes() bool

func (*HashTable) GetSegmentId

func (m *HashTable) GetSegmentId() string

func (*HashTable) GetSegmentIndex

func (m *HashTable) GetSegmentIndex() int64

func (*HashTable) Marshal

func (m *HashTable) Marshal() (dAtA []byte, err error)

func (*HashTable) MarshalTo

func (m *HashTable) MarshalTo(dAtA []byte) (int, error)

func (*HashTable) MarshalToSizedBuffer

func (m *HashTable) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*HashTable) ProtoMessage

func (*HashTable) ProtoMessage()

func (*HashTable) Reset

func (m *HashTable) Reset()

func (*HashTable) Size

func (m *HashTable) Size() (n int)

func (*HashTable) String

func (m *HashTable) String() string

func (*HashTable) Unmarshal

func (m *HashTable) Unmarshal(dAtA []byte) error

func (*HashTable) XXX_DiscardUnknown

func (m *HashTable) XXX_DiscardUnknown()

func (*HashTable) XXX_Marshal

func (m *HashTable) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*HashTable) XXX_Merge

func (m *HashTable) XXX_Merge(src proto.Message)

func (*HashTable) XXX_Size

func (m *HashTable) XXX_Size() int

func (*HashTable) XXX_Unmarshal

func (m *HashTable) XXX_Unmarshal(b []byte) error

type RequestRenameFileSegmentPubSub

type RequestRenameFileSegmentPubSub struct {
	// 文件唯一标识,用于在系统内部唯一区分文件
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	PubkeyHash []byte `protobuf:"bytes,2,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty"`
	// 请求者的 AddrInfo,包含节点 ID 和地址信息
	AddrInfo []byte `protobuf:"bytes,3,opt,name=addr_info,json=addrInfo,proto3" json:"addr_info,omitempty"`
	// 新的文件名
	NewName              string   `protobuf:"bytes,4,opt,name=new_name,json=newName,proto3" json:"new_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

RequestRenameFileSegmentPubSub 请求重命名文件

func (*RequestRenameFileSegmentPubSub) Descriptor

func (*RequestRenameFileSegmentPubSub) Descriptor() ([]byte, []int)

func (*RequestRenameFileSegmentPubSub) GetAddrInfo

func (m *RequestRenameFileSegmentPubSub) GetAddrInfo() []byte

func (*RequestRenameFileSegmentPubSub) GetFileId

func (m *RequestRenameFileSegmentPubSub) GetFileId() string

func (*RequestRenameFileSegmentPubSub) GetNewName

func (m *RequestRenameFileSegmentPubSub) GetNewName() string

func (*RequestRenameFileSegmentPubSub) GetPubkeyHash

func (m *RequestRenameFileSegmentPubSub) GetPubkeyHash() []byte

func (*RequestRenameFileSegmentPubSub) Marshal

func (m *RequestRenameFileSegmentPubSub) Marshal() (dAtA []byte, err error)

func (*RequestRenameFileSegmentPubSub) MarshalTo

func (m *RequestRenameFileSegmentPubSub) MarshalTo(dAtA []byte) (int, error)

func (*RequestRenameFileSegmentPubSub) MarshalToSizedBuffer

func (m *RequestRenameFileSegmentPubSub) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RequestRenameFileSegmentPubSub) ProtoMessage

func (*RequestRenameFileSegmentPubSub) ProtoMessage()

func (*RequestRenameFileSegmentPubSub) Reset

func (m *RequestRenameFileSegmentPubSub) Reset()

func (*RequestRenameFileSegmentPubSub) Size

func (m *RequestRenameFileSegmentPubSub) Size() (n int)

func (*RequestRenameFileSegmentPubSub) String

func (*RequestRenameFileSegmentPubSub) Unmarshal

func (m *RequestRenameFileSegmentPubSub) Unmarshal(dAtA []byte) error

func (*RequestRenameFileSegmentPubSub) XXX_DiscardUnknown

func (m *RequestRenameFileSegmentPubSub) XXX_DiscardUnknown()

func (*RequestRenameFileSegmentPubSub) XXX_Marshal

func (m *RequestRenameFileSegmentPubSub) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RequestRenameFileSegmentPubSub) XXX_Merge

func (m *RequestRenameFileSegmentPubSub) XXX_Merge(src proto.Message)

func (*RequestRenameFileSegmentPubSub) XXX_Size

func (m *RequestRenameFileSegmentPubSub) XXX_Size() int

func (*RequestRenameFileSegmentPubSub) XXX_Unmarshal

func (m *RequestRenameFileSegmentPubSub) XXX_Unmarshal(b []byte) error

type RequestSearchFileSegmentPubSub

type RequestSearchFileSegmentPubSub struct {
	// 文件唯一标识,用于在系统内部唯一区分文件
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 请求者的 AddrInfo,包含节点 ID 和地址信息
	AddrInfo             []byte   `protobuf:"bytes,2,opt,name=addr_info,json=addrInfo,proto3" json:"addr_info,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

RequestSearchFileSegmentPubSub 请求检索文件

func (*RequestSearchFileSegmentPubSub) Descriptor

func (*RequestSearchFileSegmentPubSub) Descriptor() ([]byte, []int)

func (*RequestSearchFileSegmentPubSub) GetAddrInfo

func (m *RequestSearchFileSegmentPubSub) GetAddrInfo() []byte

func (*RequestSearchFileSegmentPubSub) GetFileId

func (m *RequestSearchFileSegmentPubSub) GetFileId() string

func (*RequestSearchFileSegmentPubSub) Marshal

func (m *RequestSearchFileSegmentPubSub) Marshal() (dAtA []byte, err error)

func (*RequestSearchFileSegmentPubSub) MarshalTo

func (m *RequestSearchFileSegmentPubSub) MarshalTo(dAtA []byte) (int, error)

func (*RequestSearchFileSegmentPubSub) MarshalToSizedBuffer

func (m *RequestSearchFileSegmentPubSub) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RequestSearchFileSegmentPubSub) ProtoMessage

func (*RequestSearchFileSegmentPubSub) ProtoMessage()

func (*RequestSearchFileSegmentPubSub) Reset

func (m *RequestSearchFileSegmentPubSub) Reset()

func (*RequestSearchFileSegmentPubSub) Size

func (m *RequestSearchFileSegmentPubSub) Size() (n int)

func (*RequestSearchFileSegmentPubSub) String

func (*RequestSearchFileSegmentPubSub) Unmarshal

func (m *RequestSearchFileSegmentPubSub) Unmarshal(dAtA []byte) error

func (*RequestSearchFileSegmentPubSub) XXX_DiscardUnknown

func (m *RequestSearchFileSegmentPubSub) XXX_DiscardUnknown()

func (*RequestSearchFileSegmentPubSub) XXX_Marshal

func (m *RequestSearchFileSegmentPubSub) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RequestSearchFileSegmentPubSub) XXX_Merge

func (m *RequestSearchFileSegmentPubSub) XXX_Merge(src proto.Message)

func (*RequestSearchFileSegmentPubSub) XXX_Size

func (m *RequestSearchFileSegmentPubSub) XXX_Size() int

func (*RequestSearchFileSegmentPubSub) XXX_Unmarshal

func (m *RequestSearchFileSegmentPubSub) XXX_Unmarshal(b []byte) error

type RequestSetFileSegmentPubSub

type RequestSetFileSegmentPubSub struct {
	// 文件唯一标识,用于在系统内部唯一区分文件
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	PubkeyHash []byte `protobuf:"bytes,2,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty"`
	// 请求者的 AddrInfo,包含节点 ID 和地址信息
	AddrInfo []byte `protobuf:"bytes,3,opt,name=addr_info,json=addrInfo,proto3" json:"addr_info,omitempty"`
	// 是否开启共享,true表示开启共享,false表示关闭共享
	EnableSharing        bool     `protobuf:"varint,4,opt,name=enable_sharing,json=enableSharing,proto3" json:"enable_sharing,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

RequestSetFileSegmentPubSub 请求设置共享文件

func (*RequestSetFileSegmentPubSub) Descriptor

func (*RequestSetFileSegmentPubSub) Descriptor() ([]byte, []int)

func (*RequestSetFileSegmentPubSub) GetAddrInfo

func (m *RequestSetFileSegmentPubSub) GetAddrInfo() []byte

func (*RequestSetFileSegmentPubSub) GetEnableSharing

func (m *RequestSetFileSegmentPubSub) GetEnableSharing() bool

func (*RequestSetFileSegmentPubSub) GetFileId

func (m *RequestSetFileSegmentPubSub) GetFileId() string

func (*RequestSetFileSegmentPubSub) GetPubkeyHash

func (m *RequestSetFileSegmentPubSub) GetPubkeyHash() []byte

func (*RequestSetFileSegmentPubSub) Marshal

func (m *RequestSetFileSegmentPubSub) Marshal() (dAtA []byte, err error)

func (*RequestSetFileSegmentPubSub) MarshalTo

func (m *RequestSetFileSegmentPubSub) MarshalTo(dAtA []byte) (int, error)

func (*RequestSetFileSegmentPubSub) MarshalToSizedBuffer

func (m *RequestSetFileSegmentPubSub) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RequestSetFileSegmentPubSub) ProtoMessage

func (*RequestSetFileSegmentPubSub) ProtoMessage()

func (*RequestSetFileSegmentPubSub) Reset

func (m *RequestSetFileSegmentPubSub) Reset()

func (*RequestSetFileSegmentPubSub) Size

func (m *RequestSetFileSegmentPubSub) Size() (n int)

func (*RequestSetFileSegmentPubSub) String

func (m *RequestSetFileSegmentPubSub) String() string

func (*RequestSetFileSegmentPubSub) Unmarshal

func (m *RequestSetFileSegmentPubSub) Unmarshal(dAtA []byte) error

func (*RequestSetFileSegmentPubSub) XXX_DiscardUnknown

func (m *RequestSetFileSegmentPubSub) XXX_DiscardUnknown()

func (*RequestSetFileSegmentPubSub) XXX_Marshal

func (m *RequestSetFileSegmentPubSub) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RequestSetFileSegmentPubSub) XXX_Merge

func (m *RequestSetFileSegmentPubSub) XXX_Merge(src proto.Message)

func (*RequestSetFileSegmentPubSub) XXX_Size

func (m *RequestSetFileSegmentPubSub) XXX_Size() int

func (*RequestSetFileSegmentPubSub) XXX_Unmarshal

func (m *RequestSetFileSegmentPubSub) XXX_Unmarshal(b []byte) error

type ResponseSearchFileSegmentPubSub

type ResponseSearchFileSegmentPubSub struct {
	// 文件唯一标识
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 文件原始名称
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// 文件扩展名
	Extension string `protobuf:"bytes,3,opt,name=extension,proto3" json:"extension,omitempty"`
	// 文件总大小
	Size_ int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// MIME类型
	ContentType string `protobuf:"bytes,5,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// 文件内容的SHA256哈希值
	Sha256Hash []byte `protobuf:"bytes,6,opt,name=sha256_hash,json=sha256Hash,proto3" json:"sha256_hash,omitempty"`
	// 文件上传时间
	UploadTime int64 `protobuf:"varint,7,opt,name=upload_time,json=uploadTime,proto3" json:"upload_time,omitempty"`
	// 文件所有者的P2PKH脚本
	P2PkhScript []byte `protobuf:"bytes,8,opt,name=p2pkh_script,json=p2pkhScript,proto3" json:"p2pkh_script,omitempty"`
	// 是否共享
	Shared bool `protobuf:"varint,9,opt,name=shared,proto3" json:"shared,omitempty"`
	// 响应状态码,0表示成功,非0表示失败
	StatusCode int32 `protobuf:"varint,10,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
	// 响应消息,用于描述处理结果
	Message              string   `protobuf:"bytes,11,opt,name=message,proto3" json:"message,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

ResponseSearchFileSegmentPubSub 检索文件的响应

func (*ResponseSearchFileSegmentPubSub) Descriptor

func (*ResponseSearchFileSegmentPubSub) Descriptor() ([]byte, []int)

func (*ResponseSearchFileSegmentPubSub) GetContentType

func (m *ResponseSearchFileSegmentPubSub) GetContentType() string

func (*ResponseSearchFileSegmentPubSub) GetExtension

func (m *ResponseSearchFileSegmentPubSub) GetExtension() string

func (*ResponseSearchFileSegmentPubSub) GetFileId

func (m *ResponseSearchFileSegmentPubSub) GetFileId() string

func (*ResponseSearchFileSegmentPubSub) GetMessage

func (m *ResponseSearchFileSegmentPubSub) GetMessage() string

func (*ResponseSearchFileSegmentPubSub) GetName

func (*ResponseSearchFileSegmentPubSub) GetP2PkhScript

func (m *ResponseSearchFileSegmentPubSub) GetP2PkhScript() []byte

func (*ResponseSearchFileSegmentPubSub) GetSha256Hash

func (m *ResponseSearchFileSegmentPubSub) GetSha256Hash() []byte

func (*ResponseSearchFileSegmentPubSub) GetShared

func (m *ResponseSearchFileSegmentPubSub) GetShared() bool

func (*ResponseSearchFileSegmentPubSub) GetSize_

func (m *ResponseSearchFileSegmentPubSub) GetSize_() int64

func (*ResponseSearchFileSegmentPubSub) GetStatusCode

func (m *ResponseSearchFileSegmentPubSub) GetStatusCode() int32

func (*ResponseSearchFileSegmentPubSub) GetUploadTime

func (m *ResponseSearchFileSegmentPubSub) GetUploadTime() int64

func (*ResponseSearchFileSegmentPubSub) Marshal

func (m *ResponseSearchFileSegmentPubSub) Marshal() (dAtA []byte, err error)

func (*ResponseSearchFileSegmentPubSub) MarshalTo

func (m *ResponseSearchFileSegmentPubSub) MarshalTo(dAtA []byte) (int, error)

func (*ResponseSearchFileSegmentPubSub) MarshalToSizedBuffer

func (m *ResponseSearchFileSegmentPubSub) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ResponseSearchFileSegmentPubSub) ProtoMessage

func (*ResponseSearchFileSegmentPubSub) ProtoMessage()

func (*ResponseSearchFileSegmentPubSub) Reset

func (*ResponseSearchFileSegmentPubSub) Size

func (m *ResponseSearchFileSegmentPubSub) Size() (n int)

func (*ResponseSearchFileSegmentPubSub) String

func (*ResponseSearchFileSegmentPubSub) Unmarshal

func (m *ResponseSearchFileSegmentPubSub) Unmarshal(dAtA []byte) error

func (*ResponseSearchFileSegmentPubSub) XXX_DiscardUnknown

func (m *ResponseSearchFileSegmentPubSub) XXX_DiscardUnknown()

func (*ResponseSearchFileSegmentPubSub) XXX_Marshal

func (m *ResponseSearchFileSegmentPubSub) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ResponseSearchFileSegmentPubSub) XXX_Merge

func (m *ResponseSearchFileSegmentPubSub) XXX_Merge(src proto.Message)

func (*ResponseSearchFileSegmentPubSub) XXX_Size

func (m *ResponseSearchFileSegmentPubSub) XXX_Size() int

func (*ResponseSearchFileSegmentPubSub) XXX_Unmarshal

func (m *ResponseSearchFileSegmentPubSub) XXX_Unmarshal(b []byte) error

type SegmentContentRequest

type SegmentContentRequest struct {
	// 任务唯一标识,用于在系统中唯一识别该下载任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	PubkeyHash []byte `protobuf:"bytes,3,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty"`
	// 请求者的 AddrInfo,包含 ID 和地址信息
	AddrInfo []byte `protobuf:"bytes,4,opt,name=addr_info,json=addrInfo,proto3" json:"addr_info,omitempty"`
	// 文件片段的唯一标识,通常是该片段数据的哈希值
	SegmentId string `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	// 文件片段索引,表示该片段在文件中的顺序
	SegmentIndex int64 `protobuf:"varint,6,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 请求下载的文件片段唯一标识数组,用于批量请求
	RequestedSegmentIds  []string `protobuf:"bytes,7,rep,name=requested_segment_ids,json=requestedSegmentIds,proto3" json:"requested_segment_ids,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

SegmentContentRequest 文件片段内容请求

func (*SegmentContentRequest) Descriptor

func (*SegmentContentRequest) Descriptor() ([]byte, []int)

func (*SegmentContentRequest) GetAddrInfo

func (m *SegmentContentRequest) GetAddrInfo() []byte

func (*SegmentContentRequest) GetFileId

func (m *SegmentContentRequest) GetFileId() string

func (*SegmentContentRequest) GetPubkeyHash

func (m *SegmentContentRequest) GetPubkeyHash() []byte

func (*SegmentContentRequest) GetRequestedSegmentIds

func (m *SegmentContentRequest) GetRequestedSegmentIds() []string

func (*SegmentContentRequest) GetSegmentId

func (m *SegmentContentRequest) GetSegmentId() string

func (*SegmentContentRequest) GetSegmentIndex

func (m *SegmentContentRequest) GetSegmentIndex() int64

func (*SegmentContentRequest) GetTaskId

func (m *SegmentContentRequest) GetTaskId() string

func (*SegmentContentRequest) Marshal

func (m *SegmentContentRequest) Marshal() (dAtA []byte, err error)

func (*SegmentContentRequest) MarshalTo

func (m *SegmentContentRequest) MarshalTo(dAtA []byte) (int, error)

func (*SegmentContentRequest) MarshalToSizedBuffer

func (m *SegmentContentRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*SegmentContentRequest) ProtoMessage

func (*SegmentContentRequest) ProtoMessage()

func (*SegmentContentRequest) Reset

func (m *SegmentContentRequest) Reset()

func (*SegmentContentRequest) Size

func (m *SegmentContentRequest) Size() (n int)

func (*SegmentContentRequest) String

func (m *SegmentContentRequest) String() string

func (*SegmentContentRequest) Unmarshal

func (m *SegmentContentRequest) Unmarshal(dAtA []byte) error

func (*SegmentContentRequest) XXX_DiscardUnknown

func (m *SegmentContentRequest) XXX_DiscardUnknown()

func (*SegmentContentRequest) XXX_Marshal

func (m *SegmentContentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SegmentContentRequest) XXX_Merge

func (m *SegmentContentRequest) XXX_Merge(src proto.Message)

func (*SegmentContentRequest) XXX_Size

func (m *SegmentContentRequest) XXX_Size() int

func (*SegmentContentRequest) XXX_Unmarshal

func (m *SegmentContentRequest) XXX_Unmarshal(b []byte) error

type SegmentContentResponse

type SegmentContentResponse struct {
	// 任务唯一标识,用于在系统中唯一识别该下载任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 文件元数据,包含文件的基本信息如名称、大小等
	FileMeta *FileMeta `protobuf:"bytes,3,opt,name=file_meta,json=fileMeta,proto3" json:"file_meta,omitempty"`
	// P2PK 脚本,用于进行文件验签操作
	P2PkScript []byte `protobuf:"bytes,4,opt,name=p2pk_script,json=p2pkScript,proto3" json:"p2pk_script,omitempty"`
	// 文件片段的唯一标识,通常是该片段数据的哈希值
	SegmentId string `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	// 文件片段的索引,表示该片段在文件中的顺序
	SegmentIndex int64 `protobuf:"varint,6,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 分片的CRC32校验和
	Crc32Checksum uint32 `protobuf:"varint,7,opt,name=crc32_checksum,json=crc32Checksum,proto3" json:"crc32_checksum,omitempty"`
	// 文件片段的内容(加密),存储实际的加密后的数据
	SegmentContent []byte `protobuf:"bytes,8,opt,name=segment_content,json=segmentContent,proto3" json:"segment_content,omitempty"`
	// 文件加密密钥,用于解密文件内容
	EncryptionKey []byte `protobuf:"bytes,9,opt,name=encryption_key,json=encryptionKey,proto3" json:"encryption_key,omitempty"`
	// 文件和文件片段的数据签名,用于验证数据的真实性和完整性
	Signature []byte `protobuf:"bytes,10,opt,name=signature,proto3" json:"signature,omitempty"`
	// 文件片段的哈希表,记录每个片段的哈希值,支持纠错和数据完整性验证
	SliceTable map[int64]*HashTable `` /* 181-byte string literal not displayed */
	// 本地可用的分片索引数组
	AvailableSlices      map[int64]string `` /* 196-byte string literal not displayed */
	XXX_NoUnkeyedLiteral struct{}         `json:"-"`
	XXX_unrecognized     []byte           `json:"-"`
	XXX_sizecache        int32            `json:"-"`
}

SegmentContentResponse 文件片段内容响应

func (*SegmentContentResponse) Descriptor

func (*SegmentContentResponse) Descriptor() ([]byte, []int)

func (*SegmentContentResponse) GetAvailableSlices

func (m *SegmentContentResponse) GetAvailableSlices() map[int64]string

func (*SegmentContentResponse) GetCrc32Checksum

func (m *SegmentContentResponse) GetCrc32Checksum() uint32

func (*SegmentContentResponse) GetEncryptionKey

func (m *SegmentContentResponse) GetEncryptionKey() []byte

func (*SegmentContentResponse) GetFileId

func (m *SegmentContentResponse) GetFileId() string

func (*SegmentContentResponse) GetFileMeta

func (m *SegmentContentResponse) GetFileMeta() *FileMeta

func (*SegmentContentResponse) GetP2PkScript

func (m *SegmentContentResponse) GetP2PkScript() []byte

func (*SegmentContentResponse) GetSegmentContent

func (m *SegmentContentResponse) GetSegmentContent() []byte

func (*SegmentContentResponse) GetSegmentId

func (m *SegmentContentResponse) GetSegmentId() string

func (*SegmentContentResponse) GetSegmentIndex

func (m *SegmentContentResponse) GetSegmentIndex() int64

func (*SegmentContentResponse) GetSignature

func (m *SegmentContentResponse) GetSignature() []byte

func (*SegmentContentResponse) GetSliceTable

func (m *SegmentContentResponse) GetSliceTable() map[int64]*HashTable

func (*SegmentContentResponse) GetTaskId

func (m *SegmentContentResponse) GetTaskId() string

func (*SegmentContentResponse) Marshal

func (m *SegmentContentResponse) Marshal() (dAtA []byte, err error)

func (*SegmentContentResponse) MarshalTo

func (m *SegmentContentResponse) MarshalTo(dAtA []byte) (int, error)

func (*SegmentContentResponse) MarshalToSizedBuffer

func (m *SegmentContentResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*SegmentContentResponse) ProtoMessage

func (*SegmentContentResponse) ProtoMessage()

func (*SegmentContentResponse) Reset

func (m *SegmentContentResponse) Reset()

func (*SegmentContentResponse) Size

func (m *SegmentContentResponse) Size() (n int)

func (*SegmentContentResponse) String

func (m *SegmentContentResponse) String() string

func (*SegmentContentResponse) Unmarshal

func (m *SegmentContentResponse) Unmarshal(dAtA []byte) error

func (*SegmentContentResponse) XXX_DiscardUnknown

func (m *SegmentContentResponse) XXX_DiscardUnknown()

func (*SegmentContentResponse) XXX_Marshal

func (m *SegmentContentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SegmentContentResponse) XXX_Merge

func (m *SegmentContentResponse) XXX_Merge(src proto.Message)

func (*SegmentContentResponse) XXX_Size

func (m *SegmentContentResponse) XXX_Size() int

func (*SegmentContentResponse) XXX_Unmarshal

func (m *SegmentContentResponse) XXX_Unmarshal(b []byte) error

type SegmentDownloadStatus

type SegmentDownloadStatus int32

SegmentDownloadStatus 表示文件片段的下载状态

const (
	// 未指定状态,表示片段状态未初始化或未知
	SegmentDownloadStatus_SEGMENT_DOWNLOAD_STATUS_UNSPECIFIED SegmentDownloadStatus = 0
	// 待下载,文件片段已准备好待下载但尚未开始传输
	SegmentDownloadStatus_SEGMENT_DOWNLOAD_STATUS_PENDING SegmentDownloadStatus = 1
	// 下载中,文件片段正在下载过程中,数据正在传输
	SegmentDownloadStatus_SEGMENT_DOWNLOAD_STATUS_DOWNLOADING SegmentDownloadStatus = 2
	// 已完成,文件片段已成功下载并通过完整性校验
	SegmentDownloadStatus_SEGMENT_DOWNLOAD_STATUS_COMPLETED SegmentDownloadStatus = 3
	// 失败,文件片段下载失败,可能是由于网络问题或服务器错误
	SegmentDownloadStatus_SEGMENT_DOWNLOAD_STATUS_FAILED SegmentDownloadStatus = 4
)

func (SegmentDownloadStatus) EnumDescriptor

func (SegmentDownloadStatus) EnumDescriptor() ([]byte, []int)

func (SegmentDownloadStatus) String

func (x SegmentDownloadStatus) String() string

type SegmentStatus

type SegmentStatus int32
const (
	// 未指定状态,表示片段状态未初始化或未知
	SegmentStatus_SEGMENT_STATUS_UNSPECIFIED SegmentStatus = 0
	// 待处理,文件片段已准备好但尚未开始传输
	// - 上传:文件片段已完成预处理,等待上传
	// - 下载:文件片段元信息已获取,等待下载
	// - 传输:文件片段已完成预处理,等待传输
	SegmentStatus_SEGMENT_STATUS_PENDING SegmentStatus = 1
	// 传输中,文件片段正在传输过程中
	// - 上传:数据正在上传到目标存储
	// - 下载:数据正在从源存储下载
	// - 传输:数据正在传输到目标节点
	SegmentStatus_SEGMENT_STATUS_TRANSFERRING SegmentStatus = 2
	// 已完成,文件片段传输成功并通过完整性校验
	// - 校验内容:数据完整性、大小、哈希值等
	SegmentStatus_SEGMENT_STATUS_COMPLETED SegmentStatus = 3
	// 失败,文件片段传输失败
	// 可能的原因:
	// - 网络问题:连接断开、超时
	// - 存储问题:空间不足、权限错误
	// - 校验失败:数据损坏、大小不匹配
	SegmentStatus_SEGMENT_STATUS_FAILED SegmentStatus = 4
)

func (SegmentStatus) EnumDescriptor

func (SegmentStatus) EnumDescriptor() ([]byte, []int)

func (SegmentStatus) String

func (x SegmentStatus) String() string

type SegmentUploadStatus

type SegmentUploadStatus int32

SegmentUploadStatus 表示文件片段的上传状态

const (
	// 未指定状态,表示片段状态未初始化或未知
	SegmentUploadStatus_SEGMENT_UPLOAD_STATUS_UNSPECIFIED SegmentUploadStatus = 0
	// 尚未准备好,文件片段尚未完成预处理或加密等准备工作
	SegmentUploadStatus_SEGMENT_UPLOAD_STATUS_NOT_READY SegmentUploadStatus = 1
	// 待上传,文件片段已准备好待上传但尚未开始传输
	SegmentUploadStatus_SEGMENT_UPLOAD_STATUS_PENDING SegmentUploadStatus = 2
	// 上传中,文件片段正在上传过程中,数据正在传输
	SegmentUploadStatus_SEGMENT_UPLOAD_STATUS_UPLOADING SegmentUploadStatus = 3
	// 已完成,文件片段已成功上传并通过完整性校验
	SegmentUploadStatus_SEGMENT_UPLOAD_STATUS_COMPLETED SegmentUploadStatus = 4
	// 失败,文件片段上传失败,可能是由于网络问题或服务器错误
	SegmentUploadStatus_SEGMENT_UPLOAD_STATUS_FAILED SegmentUploadStatus = 5
)

func (SegmentUploadStatus) EnumDescriptor

func (SegmentUploadStatus) EnumDescriptor() ([]byte, []int)

func (SegmentUploadStatus) String

func (x SegmentUploadStatus) String() string

type SignatureData

type SignatureData struct {
	// 文件唯一标识,由文件内容和所有者私钥生成的SHA256哈希值
	FileId string `protobuf:"bytes,1,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// MIME类型,用于标识文件格式
	ContentType string `protobuf:"bytes,2,opt,name=content_type,json=contentType,proto3" json:"content_type,omitempty"`
	// 文件内容的SHA256哈希值,用于校验文件完整性
	Sha256Hash []byte `protobuf:"bytes,3,opt,name=sha256_hash,json=sha256Hash,proto3" json:"sha256_hash,omitempty"`
	// 文件所有分片的哈希信息列表
	SliceTable []*HashTable `protobuf:"bytes,4,rep,name=slice_table,json=sliceTable,proto3" json:"slice_table,omitempty"`
	// 当前片段的唯一标识
	SegmentId string `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	// 当前片段在文件中的索引位置
	SegmentIndex int64 `protobuf:"varint,6,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 当前片段的CRC32校验和
	Crc32Checksum uint32 `protobuf:"varint,7,opt,name=crc32_checksum,json=crc32Checksum,proto3" json:"crc32_checksum,omitempty"`
	// 当前片段的加密后内容
	EncryptedData        []byte   `protobuf:"bytes,8,opt,name=encrypted_data,json=encryptedData,proto3" json:"encrypted_data,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

SignatureData 定义生成数字签名时需要签名的数据字段

func (*SignatureData) Descriptor

func (*SignatureData) Descriptor() ([]byte, []int)

func (*SignatureData) GetContentType

func (m *SignatureData) GetContentType() string

func (*SignatureData) GetCrc32Checksum

func (m *SignatureData) GetCrc32Checksum() uint32

func (*SignatureData) GetEncryptedData

func (m *SignatureData) GetEncryptedData() []byte

func (*SignatureData) GetFileId

func (m *SignatureData) GetFileId() string

func (*SignatureData) GetSegmentId

func (m *SignatureData) GetSegmentId() string

func (*SignatureData) GetSegmentIndex

func (m *SignatureData) GetSegmentIndex() int64

func (*SignatureData) GetSha256Hash

func (m *SignatureData) GetSha256Hash() []byte

func (*SignatureData) GetSliceTable

func (m *SignatureData) GetSliceTable() []*HashTable

func (*SignatureData) Marshal

func (m *SignatureData) Marshal() (dAtA []byte, err error)

func (*SignatureData) MarshalTo

func (m *SignatureData) MarshalTo(dAtA []byte) (int, error)

func (*SignatureData) MarshalToSizedBuffer

func (m *SignatureData) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*SignatureData) ProtoMessage

func (*SignatureData) ProtoMessage()

func (*SignatureData) Reset

func (m *SignatureData) Reset()

func (*SignatureData) Size

func (m *SignatureData) Size() (n int)

func (*SignatureData) String

func (m *SignatureData) String() string

func (*SignatureData) Unmarshal

func (m *SignatureData) Unmarshal(dAtA []byte) error

func (*SignatureData) XXX_DiscardUnknown

func (m *SignatureData) XXX_DiscardUnknown()

func (*SignatureData) XXX_Marshal

func (m *SignatureData) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*SignatureData) XXX_Merge

func (m *SignatureData) XXX_Merge(src proto.Message)

func (*SignatureData) XXX_Size

func (m *SignatureData) XXX_Size() int

func (*SignatureData) XXX_Unmarshal

func (m *SignatureData) XXX_Unmarshal(b []byte) error

type TransferStatus

type TransferStatus int32

TransferStatus 表示传输任务的通用状态

const (
	// 未指定状态,表示任务状态未初始化或未知
	TransferStatus_TRANSFER_STATUS_UNSPECIFIED TransferStatus = 0
	// 编解码中,表示文件正在进行编码或解码处理
	TransferStatus_TRANSFER_STATUS_CODING TransferStatus = 1
	// 待处理,任务已创建但尚未开始执行
	TransferStatus_TRANSFER_STATUS_PENDING TransferStatus = 2
	// 传输中,任务正在执行数据传输操作
	TransferStatus_TRANSFER_STATUS_TRANSFERRING TransferStatus = 3
	// 已暂停,任务已被暂停,可通过继续操作恢复
	TransferStatus_TRANSFER_STATUS_PAUSED TransferStatus = 4
	// 已完成,任务已成功完成所有操作
	TransferStatus_TRANSFER_STATUS_COMPLETED TransferStatus = 5
	// 失败,任务由于各种原因未能成功完成
	TransferStatus_TRANSFER_STATUS_FAILED TransferStatus = 6
	// 已取消,任务被主动取消
	TransferStatus_TRANSFER_STATUS_CANCELED TransferStatus = 7
	// 异常,表示传输过程中检测到严重问题
	TransferStatus_TRANSFER_STATUS_EXCEPTION TransferStatus = 8
)

func (TransferStatus) EnumDescriptor

func (TransferStatus) EnumDescriptor() ([]byte, []int)

func (TransferStatus) String

func (x TransferStatus) String() string

type UploadChan

type UploadChan struct {
	// 任务唯一标识,通常是该片段数据的哈希值
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 上传任务是否完成的标志
	IsComplete bool `protobuf:"varint,2,opt,name=is_complete,json=isComplete,proto3" json:"is_complete,omitempty"`
	// 上传进度百分比,范围0-100
	UploadProgress int64 `protobuf:"varint,3,opt,name=upload_progress,json=uploadProgress,proto3" json:"upload_progress,omitempty"`
	// 文件总片段数量,数据片段+校验片段
	TotalShards int64 `protobuf:"varint,4,opt,name=total_shards,json=totalShards,proto3" json:"total_shards,omitempty"`
	// 文件片段唯一标识
	SegmentId string `protobuf:"bytes,5,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty"`
	// 文件片段索引,表示该片段在文件中的顺序
	SegmentIndex int64 `protobuf:"varint,6,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty"`
	// 文件片段大小,单位为字节
	SegmentSize int64 `protobuf:"varint,7,opt,name=segment_size,json=segmentSize,proto3" json:"segment_size,omitempty"`
	// 是否使用纠删码技术
	IsRsCodes bool `protobuf:"varint,8,opt,name=is_rs_codes,json=isRsCodes,proto3" json:"is_rs_codes,omitempty"`
	// 存储该文件片段的节点ID
	NodeId string `protobuf:"bytes,9,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
	// 上传完成时间的时间戳
	UploadTime           int64    `protobuf:"varint,10,opt,name=upload_time,json=uploadTime,proto3" json:"upload_time,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

UploadChan 用于表示上传任务的通道信息,用于实时通信和状态更新

func (*UploadChan) Descriptor

func (*UploadChan) Descriptor() ([]byte, []int)

func (*UploadChan) GetIsComplete

func (m *UploadChan) GetIsComplete() bool

func (*UploadChan) GetIsRsCodes

func (m *UploadChan) GetIsRsCodes() bool

func (*UploadChan) GetNodeId

func (m *UploadChan) GetNodeId() string

func (*UploadChan) GetSegmentId

func (m *UploadChan) GetSegmentId() string

func (*UploadChan) GetSegmentIndex

func (m *UploadChan) GetSegmentIndex() int64

func (*UploadChan) GetSegmentSize

func (m *UploadChan) GetSegmentSize() int64

func (*UploadChan) GetTaskId

func (m *UploadChan) GetTaskId() string

func (*UploadChan) GetTotalShards

func (m *UploadChan) GetTotalShards() int64

func (*UploadChan) GetUploadProgress

func (m *UploadChan) GetUploadProgress() int64

func (*UploadChan) GetUploadTime

func (m *UploadChan) GetUploadTime() int64

func (*UploadChan) Marshal

func (m *UploadChan) Marshal() (dAtA []byte, err error)

func (*UploadChan) MarshalTo

func (m *UploadChan) MarshalTo(dAtA []byte) (int, error)

func (*UploadChan) MarshalToSizedBuffer

func (m *UploadChan) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*UploadChan) ProtoMessage

func (*UploadChan) ProtoMessage()

func (*UploadChan) Reset

func (m *UploadChan) Reset()

func (*UploadChan) Size

func (m *UploadChan) Size() (n int)

func (*UploadChan) String

func (m *UploadChan) String() string

func (*UploadChan) Unmarshal

func (m *UploadChan) Unmarshal(dAtA []byte) error

func (*UploadChan) XXX_DiscardUnknown

func (m *UploadChan) XXX_DiscardUnknown()

func (*UploadChan) XXX_Marshal

func (m *UploadChan) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UploadChan) XXX_Merge

func (m *UploadChan) XXX_Merge(src proto.Message)

func (*UploadChan) XXX_Size

func (m *UploadChan) XXX_Size() int

func (*UploadChan) XXX_Unmarshal

func (m *UploadChan) XXX_Unmarshal(b []byte) error

type UploadFileRecord

type UploadFileRecord struct {
	// 任务唯一标识
	// @gotags: badgerhold:"key"
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty" badgerhold:"key"`
	// 文件唯一标识,由文件内容和所有者私钥生成的SHA256哈希值
	// @gotags: badgerhold:"index"
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty" badgerhold:"index"`
	// 文件路径
	Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	// 文件的基本元数据
	FileMeta *FileMeta `protobuf:"bytes,4,opt,name=file_meta,json=fileMeta,proto3" json:"file_meta,omitempty"`
	// 文件的安全和权限相关信息
	FileSecurity *FileSecurity `protobuf:"bytes,5,opt,name=file_security,json=fileSecurity,proto3" json:"file_security,omitempty"`
	// 文件分片哈希表
	SliceTable map[int64]*HashTable `` /* 180-byte string literal not displayed */
	// 文件上传的开始时间戳
	StartedAt int64 `protobuf:"varint,7,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"`
	// 文件上传的完成时间戳
	FinishedAt int64 `protobuf:"varint,8,opt,name=finished_at,json=finishedAt,proto3" json:"finished_at,omitempty"`
	// 上传任务的当前状态
	// @gotags: badgerhold:"index"
	Status               UploadStatus `protobuf:"varint,9,opt,name=status,proto3,enum=pb.UploadStatus" json:"status,omitempty" badgerhold:"index"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

UploadFileRecord 上传文件记录

func (*UploadFileRecord) Descriptor

func (*UploadFileRecord) Descriptor() ([]byte, []int)

func (*UploadFileRecord) GetFileId

func (m *UploadFileRecord) GetFileId() string

func (*UploadFileRecord) GetFileMeta

func (m *UploadFileRecord) GetFileMeta() *FileMeta

func (*UploadFileRecord) GetFileSecurity

func (m *UploadFileRecord) GetFileSecurity() *FileSecurity

func (*UploadFileRecord) GetFinishedAt

func (m *UploadFileRecord) GetFinishedAt() int64

func (*UploadFileRecord) GetPath

func (m *UploadFileRecord) GetPath() string

func (*UploadFileRecord) GetSliceTable

func (m *UploadFileRecord) GetSliceTable() map[int64]*HashTable

func (*UploadFileRecord) GetStartedAt

func (m *UploadFileRecord) GetStartedAt() int64

func (*UploadFileRecord) GetStatus

func (m *UploadFileRecord) GetStatus() UploadStatus

func (*UploadFileRecord) GetTaskId

func (m *UploadFileRecord) GetTaskId() string

func (*UploadFileRecord) Marshal

func (m *UploadFileRecord) Marshal() (dAtA []byte, err error)

func (*UploadFileRecord) MarshalTo

func (m *UploadFileRecord) MarshalTo(dAtA []byte) (int, error)

func (*UploadFileRecord) MarshalToSizedBuffer

func (m *UploadFileRecord) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*UploadFileRecord) ProtoMessage

func (*UploadFileRecord) ProtoMessage()

func (*UploadFileRecord) Reset

func (m *UploadFileRecord) Reset()

func (*UploadFileRecord) Size

func (m *UploadFileRecord) Size() (n int)

func (*UploadFileRecord) String

func (m *UploadFileRecord) String() string

func (*UploadFileRecord) Unmarshal

func (m *UploadFileRecord) Unmarshal(dAtA []byte) error

func (*UploadFileRecord) XXX_DiscardUnknown

func (m *UploadFileRecord) XXX_DiscardUnknown()

func (*UploadFileRecord) XXX_Marshal

func (m *UploadFileRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UploadFileRecord) XXX_Merge

func (m *UploadFileRecord) XXX_Merge(src proto.Message)

func (*UploadFileRecord) XXX_Size

func (m *UploadFileRecord) XXX_Size() int

func (*UploadFileRecord) XXX_Unmarshal

func (m *UploadFileRecord) XXX_Unmarshal(b []byte) error

type UploadFilesSummaries

type UploadFilesSummaries struct {
	// 任务唯一标识,用于区分和管理不同的上传任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件名,显示正在上传的文件名称
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// 文件扩展名,用于识别文件类型
	Extension string `protobuf:"bytes,3,opt,name=extension,proto3" json:"extension,omitempty"`
	// 待上传总大小(字节),包括文件大小和奇偶校验片段大小
	TotalSize int64 `protobuf:"varint,4,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	// 上传状态,反映当前上传任务的进展情况
	UploadStatus UploadStatus `protobuf:"varint,5,opt,name=upload_status,json=uploadStatus,proto3,enum=pb.UploadStatus" json:"upload_status,omitempty"`
	// 上传进度(百分比),范围0-100,表示已上传的数据量占总数据量的比例
	Progress             int64    `protobuf:"varint,6,opt,name=progress,proto3" json:"progress,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

UploadFilesSummaries 定义了上传任务的概要信息,用于快速展示任务状态

func (*UploadFilesSummaries) Descriptor

func (*UploadFilesSummaries) Descriptor() ([]byte, []int)

func (*UploadFilesSummaries) GetExtension

func (m *UploadFilesSummaries) GetExtension() string

func (*UploadFilesSummaries) GetName

func (m *UploadFilesSummaries) GetName() string

func (*UploadFilesSummaries) GetProgress

func (m *UploadFilesSummaries) GetProgress() int64

func (*UploadFilesSummaries) GetTaskId

func (m *UploadFilesSummaries) GetTaskId() string

func (*UploadFilesSummaries) GetTotalSize

func (m *UploadFilesSummaries) GetTotalSize() int64

func (*UploadFilesSummaries) GetUploadStatus

func (m *UploadFilesSummaries) GetUploadStatus() UploadStatus

func (*UploadFilesSummaries) Marshal

func (m *UploadFilesSummaries) Marshal() (dAtA []byte, err error)

func (*UploadFilesSummaries) MarshalTo

func (m *UploadFilesSummaries) MarshalTo(dAtA []byte) (int, error)

func (*UploadFilesSummaries) MarshalToSizedBuffer

func (m *UploadFilesSummaries) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*UploadFilesSummaries) ProtoMessage

func (*UploadFilesSummaries) ProtoMessage()

func (*UploadFilesSummaries) Reset

func (m *UploadFilesSummaries) Reset()

func (*UploadFilesSummaries) Size

func (m *UploadFilesSummaries) Size() (n int)

func (*UploadFilesSummaries) String

func (m *UploadFilesSummaries) String() string

func (*UploadFilesSummaries) Unmarshal

func (m *UploadFilesSummaries) Unmarshal(dAtA []byte) error

func (*UploadFilesSummaries) XXX_DiscardUnknown

func (m *UploadFilesSummaries) XXX_DiscardUnknown()

func (*UploadFilesSummaries) XXX_Marshal

func (m *UploadFilesSummaries) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UploadFilesSummaries) XXX_Merge

func (m *UploadFilesSummaries) XXX_Merge(src proto.Message)

func (*UploadFilesSummaries) XXX_Size

func (m *UploadFilesSummaries) XXX_Size() int

func (*UploadFilesSummaries) XXX_Unmarshal

func (m *UploadFilesSummaries) XXX_Unmarshal(b []byte) error

type UploadOperationInfo

type UploadOperationInfo struct {
	// 任务唯一标识,用于区分和管理不同的上传任务
	TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	// 文件路径,指定要上传的文件在本地系统中的位置
	FilePath string `protobuf:"bytes,2,opt,name=file_path,json=filePath,proto3" json:"file_path,omitempty"`
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,3,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 文件的基本元数据信息,包括文件名、大小等
	FileMeta *FileMeta `protobuf:"bytes,4,opt,name=file_meta,json=fileMeta,proto3" json:"file_meta,omitempty"`
	// 数据片段数量,表示文件被分割成的片段数
	DataShards int64 `protobuf:"varint,5,opt,name=data_shards,json=dataShards,proto3" json:"data_shards,omitempty"`
	// 校验片段数量,用于纠删码的冗余片段数
	ParityShards int64 `protobuf:"varint,6,opt,name=parity_shards,json=parityShards,proto3" json:"parity_shards,omitempty"`
	// 文件片段大小,单位为字节
	SegmentSize int64 `protobuf:"varint,7,opt,name=segment_size,json=segmentSize,proto3" json:"segment_size,omitempty"`
	// 奇偶校验片段占比,表示冗余数据占总数据的比例
	ParityRatio float64 `protobuf:"fixed64,8,opt,name=parity_ratio,json=parityRatio,proto3" json:"parity_ratio,omitempty"`
	// 文件开始上传的时间戳,记录上传操作开始的精确时间
	UploadTime int64 `protobuf:"varint,9,opt,name=upload_time,json=uploadTime,proto3" json:"upload_time,omitempty"`
	// 上传操作的状态,反映当前上传任务的进展情况
	Status               UploadStatus `protobuf:"varint,10,opt,name=status,proto3,enum=pb.UploadStatus" json:"status,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

UploadOperationInfo 表示上传操作的预处理或返回信息

func (*UploadOperationInfo) Descriptor

func (*UploadOperationInfo) Descriptor() ([]byte, []int)

func (*UploadOperationInfo) GetDataShards

func (m *UploadOperationInfo) GetDataShards() int64

func (*UploadOperationInfo) GetFileId

func (m *UploadOperationInfo) GetFileId() string

func (*UploadOperationInfo) GetFileMeta

func (m *UploadOperationInfo) GetFileMeta() *FileMeta

func (*UploadOperationInfo) GetFilePath

func (m *UploadOperationInfo) GetFilePath() string

func (*UploadOperationInfo) GetParityRatio

func (m *UploadOperationInfo) GetParityRatio() float64

func (*UploadOperationInfo) GetParityShards

func (m *UploadOperationInfo) GetParityShards() int64

func (*UploadOperationInfo) GetSegmentSize

func (m *UploadOperationInfo) GetSegmentSize() int64

func (*UploadOperationInfo) GetStatus

func (m *UploadOperationInfo) GetStatus() UploadStatus

func (*UploadOperationInfo) GetTaskId

func (m *UploadOperationInfo) GetTaskId() string

func (*UploadOperationInfo) GetUploadTime

func (m *UploadOperationInfo) GetUploadTime() int64

func (*UploadOperationInfo) Marshal

func (m *UploadOperationInfo) Marshal() (dAtA []byte, err error)

func (*UploadOperationInfo) MarshalTo

func (m *UploadOperationInfo) MarshalTo(dAtA []byte) (int, error)

func (*UploadOperationInfo) MarshalToSizedBuffer

func (m *UploadOperationInfo) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*UploadOperationInfo) ProtoMessage

func (*UploadOperationInfo) ProtoMessage()

func (*UploadOperationInfo) Reset

func (m *UploadOperationInfo) Reset()

func (*UploadOperationInfo) Size

func (m *UploadOperationInfo) Size() (n int)

func (*UploadOperationInfo) String

func (m *UploadOperationInfo) String() string

func (*UploadOperationInfo) Unmarshal

func (m *UploadOperationInfo) Unmarshal(dAtA []byte) error

func (*UploadOperationInfo) XXX_DiscardUnknown

func (m *UploadOperationInfo) XXX_DiscardUnknown()

func (*UploadOperationInfo) XXX_Marshal

func (m *UploadOperationInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UploadOperationInfo) XXX_Merge

func (m *UploadOperationInfo) XXX_Merge(src proto.Message)

func (*UploadOperationInfo) XXX_Size

func (m *UploadOperationInfo) XXX_Size() int

func (*UploadOperationInfo) XXX_Unmarshal

func (m *UploadOperationInfo) XXX_Unmarshal(b []byte) error

type UploadPubSubDeleteFileSegmentRequest

type UploadPubSubDeleteFileSegmentRequest struct {
	// 文件唯一标识,用于在系统内部唯一区分文件,通常是哈希值或UUID
	FileId string `protobuf:"bytes,2,opt,name=file_id,json=fileId,proto3" json:"file_id,omitempty"`
	// 所有者的公钥哈希,用于身份验证和访问控制
	PubkeyHash           []byte   `protobuf:"bytes,3,opt,name=pubkey_hash,json=pubkeyHash,proto3" json:"pubkey_hash,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

UploadPubSubDeleteFileSegmentRequest 上传订阅删除文件信息请求

func (*UploadPubSubDeleteFileSegmentRequest) Descriptor

func (*UploadPubSubDeleteFileSegmentRequest) Descriptor() ([]byte, []int)

func (*UploadPubSubDeleteFileSegmentRequest) GetFileId

func (*UploadPubSubDeleteFileSegmentRequest) GetPubkeyHash

func (m *UploadPubSubDeleteFileSegmentRequest) GetPubkeyHash() []byte

func (*UploadPubSubDeleteFileSegmentRequest) Marshal

func (m *UploadPubSubDeleteFileSegmentRequest) Marshal() (dAtA []byte, err error)

func (*UploadPubSubDeleteFileSegmentRequest) MarshalTo

func (m *UploadPubSubDeleteFileSegmentRequest) MarshalTo(dAtA []byte) (int, error)

func (*UploadPubSubDeleteFileSegmentRequest) MarshalToSizedBuffer

func (m *UploadPubSubDeleteFileSegmentRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*UploadPubSubDeleteFileSegmentRequest) ProtoMessage

func (*UploadPubSubDeleteFileSegmentRequest) ProtoMessage()

func (*UploadPubSubDeleteFileSegmentRequest) Reset

func (*UploadPubSubDeleteFileSegmentRequest) Size

func (*UploadPubSubDeleteFileSegmentRequest) String

func (*UploadPubSubDeleteFileSegmentRequest) Unmarshal

func (m *UploadPubSubDeleteFileSegmentRequest) Unmarshal(dAtA []byte) error

func (*UploadPubSubDeleteFileSegmentRequest) XXX_DiscardUnknown

func (m *UploadPubSubDeleteFileSegmentRequest) XXX_DiscardUnknown()

func (*UploadPubSubDeleteFileSegmentRequest) XXX_Marshal

func (m *UploadPubSubDeleteFileSegmentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UploadPubSubDeleteFileSegmentRequest) XXX_Merge

func (*UploadPubSubDeleteFileSegmentRequest) XXX_Size

func (*UploadPubSubDeleteFileSegmentRequest) XXX_Unmarshal

func (m *UploadPubSubDeleteFileSegmentRequest) XXX_Unmarshal(b []byte) error

type UploadSegmentRecord

type UploadSegmentRecord struct {
	// 当前片段的唯一标识,由file_id和segment_index生成
	// @gotags: badgerhold:"key"
	SegmentId string `protobuf:"bytes,1,opt,name=segment_id,json=segmentId,proto3" json:"segment_id,omitempty" badgerhold:"key"`
	// 当前片段在文件中的索引位置,从0开始
	// @gotags: badgerhold:"index"
	SegmentIndex int64 `protobuf:"varint,2,opt,name=segment_index,json=segmentIndex,proto3" json:"segment_index,omitempty" badgerhold:"index"`
	// 任务唯一标识
	// @gotags: badgerhold:"index"
	TaskId string `protobuf:"bytes,3,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty" badgerhold:"index"`
	// 当前片段大小,单位:字节
	Size_ int64 `protobuf:"varint,4,opt,name=size,proto3" json:"size,omitempty"`
	// 当前片段的CRC32校验和,用于验证片段完整性
	// @gotags: badgerhold:"index"
	Crc32Checksum uint32 `protobuf:"varint,5,opt,name=crc32_checksum,json=crc32Checksum,proto3" json:"crc32_checksum,omitempty" badgerhold:"index"`
	// 当前片段的加密后内容
	SegmentContent []byte `protobuf:"bytes,6,opt,name=segment_content,json=segmentContent,proto3" json:"segment_content,omitempty"`
	// 是否为纠删码冗余分片
	IsRsCodes bool `protobuf:"varint,7,opt,name=is_rs_codes,json=isRsCodes,proto3" json:"is_rs_codes,omitempty"`
	// 分片的上传状态
	// @gotags: badgerhold:"index"
	Status SegmentUploadStatus `protobuf:"varint,8,opt,name=status,proto3,enum=pb.SegmentUploadStatus" json:"status,omitempty" badgerhold:"index"`
	// 需要过滤的节点ID列表,存储不希望分配任务的节点
	FilteredPeerIds      []string `protobuf:"bytes,9,rep,name=filtered_peer_ids,json=filteredPeerIds,proto3" json:"filtered_peer_ids,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

UploadSegmentRecord 上传文件片段记录

func (*UploadSegmentRecord) Descriptor

func (*UploadSegmentRecord) Descriptor() ([]byte, []int)

func (*UploadSegmentRecord) GetCrc32Checksum

func (m *UploadSegmentRecord) GetCrc32Checksum() uint32

func (*UploadSegmentRecord) GetFilteredPeerIds

func (m *UploadSegmentRecord) GetFilteredPeerIds() []string

func (*UploadSegmentRecord) GetIsRsCodes

func (m *UploadSegmentRecord) GetIsRsCodes() bool

func (*UploadSegmentRecord) GetSegmentContent

func (m *UploadSegmentRecord) GetSegmentContent() []byte

func (*UploadSegmentRecord) GetSegmentId

func (m *UploadSegmentRecord) GetSegmentId() string

func (*UploadSegmentRecord) GetSegmentIndex

func (m *UploadSegmentRecord) GetSegmentIndex() int64

func (*UploadSegmentRecord) GetSize_

func (m *UploadSegmentRecord) GetSize_() int64

func (*UploadSegmentRecord) GetStatus

func (*UploadSegmentRecord) GetTaskId

func (m *UploadSegmentRecord) GetTaskId() string

func (*UploadSegmentRecord) Marshal

func (m *UploadSegmentRecord) Marshal() (dAtA []byte, err error)

func (*UploadSegmentRecord) MarshalTo

func (m *UploadSegmentRecord) MarshalTo(dAtA []byte) (int, error)

func (*UploadSegmentRecord) MarshalToSizedBuffer

func (m *UploadSegmentRecord) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*UploadSegmentRecord) ProtoMessage

func (*UploadSegmentRecord) ProtoMessage()

func (*UploadSegmentRecord) Reset

func (m *UploadSegmentRecord) Reset()

func (*UploadSegmentRecord) Size

func (m *UploadSegmentRecord) Size() (n int)

func (*UploadSegmentRecord) String

func (m *UploadSegmentRecord) String() string

func (*UploadSegmentRecord) Unmarshal

func (m *UploadSegmentRecord) Unmarshal(dAtA []byte) error

func (*UploadSegmentRecord) XXX_DiscardUnknown

func (m *UploadSegmentRecord) XXX_DiscardUnknown()

func (*UploadSegmentRecord) XXX_Marshal

func (m *UploadSegmentRecord) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*UploadSegmentRecord) XXX_Merge

func (m *UploadSegmentRecord) XXX_Merge(src proto.Message)

func (*UploadSegmentRecord) XXX_Size

func (m *UploadSegmentRecord) XXX_Size() int

func (*UploadSegmentRecord) XXX_Unmarshal

func (m *UploadSegmentRecord) XXX_Unmarshal(b []byte) error

type UploadStatus

type UploadStatus int32

UploadStatus 表示上传任务的状态

const (
	// 未指定状态,表示任务状态未初始化或未知
	UploadStatus_UPLOAD_STATUS_UNSPECIFIED UploadStatus = 0
	// 文件编码中,表示文件正在进行编码处理(如压缩、加密等)
	UploadStatus_UPLOAD_STATUS_ENCODING UploadStatus = 1
	// 待上传,任务已创建但尚未开始执行,等待系统调度
	UploadStatus_UPLOAD_STATUS_PENDING UploadStatus = 2
	// 上传中,任务正在执行文件上传操作,数据传输进行中
	UploadStatus_UPLOAD_STATUS_UPLOADING UploadStatus = 3
	// 已暂停,任务已被用户或系统暂停,可通过恢复操作继续执行
	UploadStatus_UPLOAD_STATUS_PAUSED UploadStatus = 4
	// 已完成,任务已成功完成所有上传操作,文件已全部传输到目标位置
	UploadStatus_UPLOAD_STATUS_COMPLETED UploadStatus = 5
	// 失败,任务由于以下原因未能成功完成:
	// - 网络连接超时或不稳定
	// - 编码过程发生错误(如加密失败、压缩失败)
	// - 存储设备空间不足
	// - 存储设备写入错误
	// - 文件系统权限问题
	UploadStatus_UPLOAD_STATUS_FAILED UploadStatus = 6
	// 已取消,任务被用户主动取消或系统因策略原因终止
	UploadStatus_UPLOAD_STATUS_CANCELED UploadStatus = 7
	// 文件异常,表示上传过程中检测到文件存在问题,如文件损坏、格式错误等
	UploadStatus_UPLOAD_STATUS_FILE_EXCEPTION UploadStatus = 8
)

func (UploadStatus) EnumDescriptor

func (UploadStatus) EnumDescriptor() ([]byte, []int)

func (UploadStatus) String

func (x UploadStatus) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL