Documentation ¶
Index ¶
- Variables
- func RegisterSchedulerServer(s grpc.ServiceRegistrar, srv SchedulerServer)
- type PeerHost
- func (*PeerHost) Descriptor() ([]byte, []int)deprecated
- func (x *PeerHost) GetDownPort() int32
- func (x *PeerHost) GetHostName() string
- func (x *PeerHost) GetIdc() string
- func (x *PeerHost) GetIp() string
- func (x *PeerHost) GetLocation() string
- func (x *PeerHost) GetNetTopology() string
- func (x *PeerHost) GetRpcPort() int32
- func (x *PeerHost) GetSecurityDomain() string
- func (x *PeerHost) GetUuid() string
- func (*PeerHost) ProtoMessage()
- func (x *PeerHost) ProtoReflect() protoreflect.Message
- func (x *PeerHost) Reset()
- func (x *PeerHost) String() string
- func (m *PeerHost) Validate() error
- type PeerHostValidationError
- type PeerPacket
- func (*PeerPacket) Descriptor() ([]byte, []int)deprecated
- func (x *PeerPacket) GetCode() base.Code
- func (x *PeerPacket) GetMainPeer() *PeerPacket_DestPeer
- func (x *PeerPacket) GetParallelCount() int32
- func (x *PeerPacket) GetSrcPid() string
- func (x *PeerPacket) GetStealPeers() []*PeerPacket_DestPeer
- func (x *PeerPacket) GetTaskId() string
- func (*PeerPacket) ProtoMessage()
- func (x *PeerPacket) ProtoReflect() protoreflect.Message
- func (x *PeerPacket) Reset()
- func (x *PeerPacket) String() string
- func (m *PeerPacket) Validate() error
- type PeerPacketValidationError
- type PeerPacket_DestPeer
- func (*PeerPacket_DestPeer) Descriptor() ([]byte, []int)deprecated
- func (x *PeerPacket_DestPeer) GetIp() string
- func (x *PeerPacket_DestPeer) GetPeerId() string
- func (x *PeerPacket_DestPeer) GetRpcPort() int32
- func (*PeerPacket_DestPeer) ProtoMessage()
- func (x *PeerPacket_DestPeer) ProtoReflect() protoreflect.Message
- func (x *PeerPacket_DestPeer) Reset()
- func (x *PeerPacket_DestPeer) String() string
- func (m *PeerPacket_DestPeer) Validate() error
- type PeerPacket_DestPeerValidationError
- func (e PeerPacket_DestPeerValidationError) Cause() error
- func (e PeerPacket_DestPeerValidationError) Error() string
- func (e PeerPacket_DestPeerValidationError) ErrorName() string
- func (e PeerPacket_DestPeerValidationError) Field() string
- func (e PeerPacket_DestPeerValidationError) Key() bool
- func (e PeerPacket_DestPeerValidationError) Reason() string
- type PeerResult
- func (*PeerResult) Descriptor() ([]byte, []int)deprecated
- func (x *PeerResult) GetCode() base.Code
- func (x *PeerResult) GetContentLength() int64
- func (x *PeerResult) GetCost() uint32
- func (x *PeerResult) GetIdc() string
- func (x *PeerResult) GetPeerId() string
- func (x *PeerResult) GetSecurityDomain() string
- func (x *PeerResult) GetSrcIp() string
- func (x *PeerResult) GetSuccess() bool
- func (x *PeerResult) GetTaskId() string
- func (x *PeerResult) GetTotalPieceCount() int32
- func (x *PeerResult) GetTraffic() uint64
- func (x *PeerResult) GetUrl() string
- func (*PeerResult) ProtoMessage()
- func (x *PeerResult) ProtoReflect() protoreflect.Message
- func (x *PeerResult) Reset()
- func (x *PeerResult) String() string
- func (m *PeerResult) Validate() error
- type PeerResultValidationError
- type PeerTarget
- func (*PeerTarget) Descriptor() ([]byte, []int)deprecated
- func (x *PeerTarget) GetPeerId() string
- func (x *PeerTarget) GetTaskId() string
- func (*PeerTarget) ProtoMessage()
- func (x *PeerTarget) ProtoReflect() protoreflect.Message
- func (x *PeerTarget) Reset()
- func (x *PeerTarget) String() string
- func (m *PeerTarget) Validate() error
- type PeerTargetValidationError
- type PeerTaskRequest
- func (*PeerTaskRequest) Descriptor() ([]byte, []int)deprecated
- func (x *PeerTaskRequest) GetHostLoad() *base.HostLoad
- func (x *PeerTaskRequest) GetIsMigrating() bool
- func (x *PeerTaskRequest) GetPeerHost() *PeerHost
- func (x *PeerTaskRequest) GetPeerId() string
- func (x *PeerTaskRequest) GetUrl() string
- func (x *PeerTaskRequest) GetUrlMeta() *base.UrlMeta
- func (*PeerTaskRequest) ProtoMessage()
- func (x *PeerTaskRequest) ProtoReflect() protoreflect.Message
- func (x *PeerTaskRequest) Reset()
- func (x *PeerTaskRequest) String() string
- func (m *PeerTaskRequest) Validate() error
- type PeerTaskRequestValidationError
- func (e PeerTaskRequestValidationError) Cause() error
- func (e PeerTaskRequestValidationError) Error() string
- func (e PeerTaskRequestValidationError) ErrorName() string
- func (e PeerTaskRequestValidationError) Field() string
- func (e PeerTaskRequestValidationError) Key() bool
- func (e PeerTaskRequestValidationError) Reason() string
- type PieceResult
- func (*PieceResult) Descriptor() ([]byte, []int)deprecated
- func (x *PieceResult) GetBeginTime() uint64
- func (x *PieceResult) GetCode() base.Code
- func (x *PieceResult) GetDstPid() string
- func (x *PieceResult) GetEndTime() uint64
- func (x *PieceResult) GetFinishedCount() int32
- func (x *PieceResult) GetHostLoad() *base.HostLoad
- func (x *PieceResult) GetPieceInfo() *base.PieceInfo
- func (x *PieceResult) GetSrcPid() string
- func (x *PieceResult) GetSuccess() bool
- func (x *PieceResult) GetTaskId() string
- func (*PieceResult) ProtoMessage()
- func (x *PieceResult) ProtoReflect() protoreflect.Message
- func (x *PieceResult) Reset()
- func (x *PieceResult) String() string
- func (m *PieceResult) Validate() error
- type PieceResultValidationError
- func (e PieceResultValidationError) Cause() error
- func (e PieceResultValidationError) Error() string
- func (e PieceResultValidationError) ErrorName() string
- func (e PieceResultValidationError) Field() string
- func (e PieceResultValidationError) Key() bool
- func (e PieceResultValidationError) Reason() string
- type RegisterResult
- func (*RegisterResult) Descriptor() ([]byte, []int)deprecated
- func (m *RegisterResult) GetDirectPiece() isRegisterResult_DirectPiece
- func (x *RegisterResult) GetPieceContent() []byte
- func (x *RegisterResult) GetSinglePiece() *SinglePiece
- func (x *RegisterResult) GetSizeScope() base.SizeScope
- func (x *RegisterResult) GetTaskId() string
- func (*RegisterResult) ProtoMessage()
- func (x *RegisterResult) ProtoReflect() protoreflect.Message
- func (x *RegisterResult) Reset()
- func (x *RegisterResult) String() string
- func (m *RegisterResult) Validate() error
- type RegisterResultValidationError
- func (e RegisterResultValidationError) Cause() error
- func (e RegisterResultValidationError) Error() string
- func (e RegisterResultValidationError) ErrorName() string
- func (e RegisterResultValidationError) Field() string
- func (e RegisterResultValidationError) Key() bool
- func (e RegisterResultValidationError) Reason() string
- type RegisterResult_PieceContent
- type RegisterResult_SinglePiece
- type SchedulerClient
- type SchedulerServer
- type Scheduler_ReportPieceResultClient
- type Scheduler_ReportPieceResultServer
- type SinglePiece
- func (*SinglePiece) Descriptor() ([]byte, []int)deprecated
- func (x *SinglePiece) GetDstAddr() string
- func (x *SinglePiece) GetDstPid() string
- func (x *SinglePiece) GetPieceInfo() *base.PieceInfo
- func (*SinglePiece) ProtoMessage()
- func (x *SinglePiece) ProtoReflect() protoreflect.Message
- func (x *SinglePiece) Reset()
- func (x *SinglePiece) String() string
- func (m *SinglePiece) Validate() error
- type SinglePieceValidationError
- func (e SinglePieceValidationError) Cause() error
- func (e SinglePieceValidationError) Error() string
- func (e SinglePieceValidationError) ErrorName() string
- func (e SinglePieceValidationError) Field() string
- func (e SinglePieceValidationError) Key() bool
- func (e SinglePieceValidationError) Reason() string
- type UnimplementedSchedulerServer
- func (UnimplementedSchedulerServer) LeaveTask(context.Context, *PeerTarget) (*emptypb.Empty, error)
- func (UnimplementedSchedulerServer) RegisterPeerTask(context.Context, *PeerTaskRequest) (*RegisterResult, error)
- func (UnimplementedSchedulerServer) ReportPeerResult(context.Context, *PeerResult) (*emptypb.Empty, error)
- func (UnimplementedSchedulerServer) ReportPieceResult(Scheduler_ReportPieceResultServer) error
- type UnsafeSchedulerServer
Constants ¶
This section is empty.
Variables ¶
var File_pkg_rpc_scheduler_scheduler_proto protoreflect.FileDescriptor
var Scheduler_ServiceDesc = grpc.ServiceDesc{ ServiceName: "scheduler.Scheduler", HandlerType: (*SchedulerServer)(nil), Methods: []grpc.MethodDesc{ { MethodName: "RegisterPeerTask", Handler: _Scheduler_RegisterPeerTask_Handler, }, { MethodName: "ReportPeerResult", Handler: _Scheduler_ReportPeerResult_Handler, }, { MethodName: "LeaveTask", Handler: _Scheduler_LeaveTask_Handler, }, }, Streams: []grpc.StreamDesc{ { StreamName: "ReportPieceResult", Handler: _Scheduler_ReportPieceResult_Handler, ServerStreams: true, ClientStreams: true, }, }, Metadata: "pkg/rpc/scheduler/scheduler.proto", }
Scheduler_ServiceDesc is the grpc.ServiceDesc for Scheduler service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)
Functions ¶
func RegisterSchedulerServer ¶
func RegisterSchedulerServer(s grpc.ServiceRegistrar, srv SchedulerServer)
Types ¶
type PeerHost ¶
type PeerHost struct { // each time the daemon starts, it will generate a different uuid Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid,omitempty"` // peer host ip Ip string `protobuf:"bytes,2,opt,name=ip,proto3" json:"ip,omitempty"` // rpc service port for peer RpcPort int32 `protobuf:"varint,3,opt,name=rpc_port,json=rpcPort,proto3" json:"rpc_port,omitempty"` // piece downloading port for peer DownPort int32 `protobuf:"varint,4,opt,name=down_port,json=downPort,proto3" json:"down_port,omitempty"` // peer host name HostName string `protobuf:"bytes,5,opt,name=host_name,json=hostName,proto3" json:"host_name,omitempty"` // security isolation domain for network SecurityDomain string `protobuf:"bytes,6,opt,name=security_domain,json=securityDomain,proto3" json:"security_domain,omitempty"` // location path: area|country|province|city|... Location string `protobuf:"bytes,7,opt,name=location,proto3" json:"location,omitempty"` // idc where the peer host is located Idc string `protobuf:"bytes,8,opt,name=idc,proto3" json:"idc,omitempty"` // network device path: switch|router|... NetTopology string `protobuf:"bytes,9,opt,name=net_topology,json=netTopology,proto3" json:"net_topology,omitempty"` // contains filtered or unexported fields }
func (*PeerHost) Descriptor
deprecated
func (*PeerHost) GetDownPort ¶
func (*PeerHost) GetHostName ¶
func (*PeerHost) GetLocation ¶
func (*PeerHost) GetNetTopology ¶
func (*PeerHost) GetRpcPort ¶
func (*PeerHost) GetSecurityDomain ¶
func (*PeerHost) ProtoMessage ¶
func (*PeerHost) ProtoMessage()
func (*PeerHost) ProtoReflect ¶
func (x *PeerHost) ProtoReflect() protoreflect.Message
type PeerHostValidationError ¶
type PeerHostValidationError struct {
// contains filtered or unexported fields
}
PeerHostValidationError is the validation error returned by PeerHost.Validate if the designated constraints aren't met.
func (PeerHostValidationError) Cause ¶
func (e PeerHostValidationError) Cause() error
Cause function returns cause value.
func (PeerHostValidationError) Error ¶
func (e PeerHostValidationError) Error() string
Error satisfies the builtin error interface
func (PeerHostValidationError) ErrorName ¶
func (e PeerHostValidationError) ErrorName() string
ErrorName returns error name.
func (PeerHostValidationError) Field ¶
func (e PeerHostValidationError) Field() string
Field function returns field value.
func (PeerHostValidationError) Key ¶
func (e PeerHostValidationError) Key() bool
Key function returns key value.
func (PeerHostValidationError) Reason ¶
func (e PeerHostValidationError) Reason() string
Reason function returns reason value.
type PeerPacket ¶
type PeerPacket struct { TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"` // source peer id SrcPid string `protobuf:"bytes,3,opt,name=src_pid,json=srcPid,proto3" json:"src_pid,omitempty"` // concurrent downloading count from main peer ParallelCount int32 `protobuf:"varint,4,opt,name=parallel_count,json=parallelCount,proto3" json:"parallel_count,omitempty"` MainPeer *PeerPacket_DestPeer `protobuf:"bytes,5,opt,name=main_peer,json=mainPeer,proto3" json:"main_peer,omitempty"` StealPeers []*PeerPacket_DestPeer `protobuf:"bytes,6,rep,name=steal_peers,json=stealPeers,proto3" json:"steal_peers,omitempty"` // result code Code base.Code `protobuf:"varint,7,opt,name=code,proto3,enum=base.Code" json:"code,omitempty"` // contains filtered or unexported fields }
func (*PeerPacket) Descriptor
deprecated
func (*PeerPacket) Descriptor() ([]byte, []int)
Deprecated: Use PeerPacket.ProtoReflect.Descriptor instead.
func (*PeerPacket) GetCode ¶
func (x *PeerPacket) GetCode() base.Code
func (*PeerPacket) GetMainPeer ¶
func (x *PeerPacket) GetMainPeer() *PeerPacket_DestPeer
func (*PeerPacket) GetParallelCount ¶
func (x *PeerPacket) GetParallelCount() int32
func (*PeerPacket) GetSrcPid ¶
func (x *PeerPacket) GetSrcPid() string
func (*PeerPacket) GetStealPeers ¶
func (x *PeerPacket) GetStealPeers() []*PeerPacket_DestPeer
func (*PeerPacket) GetTaskId ¶
func (x *PeerPacket) GetTaskId() string
func (*PeerPacket) ProtoMessage ¶
func (*PeerPacket) ProtoMessage()
func (*PeerPacket) ProtoReflect ¶
func (x *PeerPacket) ProtoReflect() protoreflect.Message
func (*PeerPacket) Reset ¶
func (x *PeerPacket) Reset()
func (*PeerPacket) String ¶
func (x *PeerPacket) String() string
func (*PeerPacket) Validate ¶
func (m *PeerPacket) Validate() error
Validate checks the field values on PeerPacket with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type PeerPacketValidationError ¶
type PeerPacketValidationError struct {
// contains filtered or unexported fields
}
PeerPacketValidationError is the validation error returned by PeerPacket.Validate if the designated constraints aren't met.
func (PeerPacketValidationError) Cause ¶
func (e PeerPacketValidationError) Cause() error
Cause function returns cause value.
func (PeerPacketValidationError) Error ¶
func (e PeerPacketValidationError) Error() string
Error satisfies the builtin error interface
func (PeerPacketValidationError) ErrorName ¶
func (e PeerPacketValidationError) ErrorName() string
ErrorName returns error name.
func (PeerPacketValidationError) Field ¶
func (e PeerPacketValidationError) Field() string
Field function returns field value.
func (PeerPacketValidationError) Key ¶
func (e PeerPacketValidationError) Key() bool
Key function returns key value.
func (PeerPacketValidationError) Reason ¶
func (e PeerPacketValidationError) Reason() string
Reason function returns reason value.
type PeerPacket_DestPeer ¶
type PeerPacket_DestPeer struct { // dest ip Ip string `protobuf:"bytes,1,opt,name=ip,proto3" json:"ip,omitempty"` // rpc service port for dest peer RpcPort int32 `protobuf:"varint,2,opt,name=rpc_port,json=rpcPort,proto3" json:"rpc_port,omitempty"` // dest peer id PeerId string `protobuf:"bytes,3,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` // contains filtered or unexported fields }
func (*PeerPacket_DestPeer) Descriptor
deprecated
func (*PeerPacket_DestPeer) Descriptor() ([]byte, []int)
Deprecated: Use PeerPacket_DestPeer.ProtoReflect.Descriptor instead.
func (*PeerPacket_DestPeer) GetIp ¶
func (x *PeerPacket_DestPeer) GetIp() string
func (*PeerPacket_DestPeer) GetPeerId ¶
func (x *PeerPacket_DestPeer) GetPeerId() string
func (*PeerPacket_DestPeer) GetRpcPort ¶
func (x *PeerPacket_DestPeer) GetRpcPort() int32
func (*PeerPacket_DestPeer) ProtoMessage ¶
func (*PeerPacket_DestPeer) ProtoMessage()
func (*PeerPacket_DestPeer) ProtoReflect ¶
func (x *PeerPacket_DestPeer) ProtoReflect() protoreflect.Message
func (*PeerPacket_DestPeer) Reset ¶
func (x *PeerPacket_DestPeer) Reset()
func (*PeerPacket_DestPeer) String ¶
func (x *PeerPacket_DestPeer) String() string
func (*PeerPacket_DestPeer) Validate ¶
func (m *PeerPacket_DestPeer) Validate() error
Validate checks the field values on PeerPacket_DestPeer with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type PeerPacket_DestPeerValidationError ¶
type PeerPacket_DestPeerValidationError struct {
// contains filtered or unexported fields
}
PeerPacket_DestPeerValidationError is the validation error returned by PeerPacket_DestPeer.Validate if the designated constraints aren't met.
func (PeerPacket_DestPeerValidationError) Cause ¶
func (e PeerPacket_DestPeerValidationError) Cause() error
Cause function returns cause value.
func (PeerPacket_DestPeerValidationError) Error ¶
func (e PeerPacket_DestPeerValidationError) Error() string
Error satisfies the builtin error interface
func (PeerPacket_DestPeerValidationError) ErrorName ¶
func (e PeerPacket_DestPeerValidationError) ErrorName() string
ErrorName returns error name.
func (PeerPacket_DestPeerValidationError) Field ¶
func (e PeerPacket_DestPeerValidationError) Field() string
Field function returns field value.
func (PeerPacket_DestPeerValidationError) Key ¶
func (e PeerPacket_DestPeerValidationError) Key() bool
Key function returns key value.
func (PeerPacket_DestPeerValidationError) Reason ¶
func (e PeerPacket_DestPeerValidationError) Reason() string
Reason function returns reason value.
type PeerResult ¶
type PeerResult struct { TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"` PeerId string `protobuf:"bytes,2,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` SrcIp string `protobuf:"bytes,3,opt,name=src_ip,json=srcIp,proto3" json:"src_ip,omitempty"` SecurityDomain string `protobuf:"bytes,4,opt,name=security_domain,json=securityDomain,proto3" json:"security_domain,omitempty"` Idc string `protobuf:"bytes,5,opt,name=idc,proto3" json:"idc,omitempty"` Url string `protobuf:"bytes,6,opt,name=url,proto3" json:"url,omitempty"` // total content length(byte) ContentLength int64 `protobuf:"varint,7,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"` // total network traffic(byte) Traffic uint64 `protobuf:"varint,8,opt,name=traffic,proto3" json:"traffic,omitempty"` // total time(millisecond) consumed Cost uint32 `protobuf:"varint,9,opt,name=cost,proto3" json:"cost,omitempty"` // whether peer downloading file is successfully Success bool `protobuf:"varint,10,opt,name=success,proto3" json:"success,omitempty"` // result code Code base.Code `protobuf:"varint,11,opt,name=code,proto3,enum=base.Code" json:"code,omitempty"` // -1 represent task is running or download failed TotalPieceCount int32 `protobuf:"varint,12,opt,name=total_piece_count,json=totalPieceCount,proto3" json:"total_piece_count,omitempty"` // contains filtered or unexported fields }
func (*PeerResult) Descriptor
deprecated
func (*PeerResult) Descriptor() ([]byte, []int)
Deprecated: Use PeerResult.ProtoReflect.Descriptor instead.
func (*PeerResult) GetCode ¶
func (x *PeerResult) GetCode() base.Code
func (*PeerResult) GetContentLength ¶
func (x *PeerResult) GetContentLength() int64
func (*PeerResult) GetCost ¶
func (x *PeerResult) GetCost() uint32
func (*PeerResult) GetIdc ¶
func (x *PeerResult) GetIdc() string
func (*PeerResult) GetPeerId ¶
func (x *PeerResult) GetPeerId() string
func (*PeerResult) GetSecurityDomain ¶
func (x *PeerResult) GetSecurityDomain() string
func (*PeerResult) GetSrcIp ¶
func (x *PeerResult) GetSrcIp() string
func (*PeerResult) GetSuccess ¶
func (x *PeerResult) GetSuccess() bool
func (*PeerResult) GetTaskId ¶
func (x *PeerResult) GetTaskId() string
func (*PeerResult) GetTotalPieceCount ¶
func (x *PeerResult) GetTotalPieceCount() int32
func (*PeerResult) GetTraffic ¶
func (x *PeerResult) GetTraffic() uint64
func (*PeerResult) GetUrl ¶
func (x *PeerResult) GetUrl() string
func (*PeerResult) ProtoMessage ¶
func (*PeerResult) ProtoMessage()
func (*PeerResult) ProtoReflect ¶
func (x *PeerResult) ProtoReflect() protoreflect.Message
func (*PeerResult) Reset ¶
func (x *PeerResult) Reset()
func (*PeerResult) String ¶
func (x *PeerResult) String() string
func (*PeerResult) Validate ¶
func (m *PeerResult) Validate() error
Validate checks the field values on PeerResult with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type PeerResultValidationError ¶
type PeerResultValidationError struct {
// contains filtered or unexported fields
}
PeerResultValidationError is the validation error returned by PeerResult.Validate if the designated constraints aren't met.
func (PeerResultValidationError) Cause ¶
func (e PeerResultValidationError) Cause() error
Cause function returns cause value.
func (PeerResultValidationError) Error ¶
func (e PeerResultValidationError) Error() string
Error satisfies the builtin error interface
func (PeerResultValidationError) ErrorName ¶
func (e PeerResultValidationError) ErrorName() string
ErrorName returns error name.
func (PeerResultValidationError) Field ¶
func (e PeerResultValidationError) Field() string
Field function returns field value.
func (PeerResultValidationError) Key ¶
func (e PeerResultValidationError) Key() bool
Key function returns key value.
func (PeerResultValidationError) Reason ¶
func (e PeerResultValidationError) Reason() string
Reason function returns reason value.
type PeerTarget ¶
type PeerTarget struct { TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"` PeerId string `protobuf:"bytes,2,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` // contains filtered or unexported fields }
func (*PeerTarget) Descriptor
deprecated
func (*PeerTarget) Descriptor() ([]byte, []int)
Deprecated: Use PeerTarget.ProtoReflect.Descriptor instead.
func (*PeerTarget) GetPeerId ¶
func (x *PeerTarget) GetPeerId() string
func (*PeerTarget) GetTaskId ¶
func (x *PeerTarget) GetTaskId() string
func (*PeerTarget) ProtoMessage ¶
func (*PeerTarget) ProtoMessage()
func (*PeerTarget) ProtoReflect ¶
func (x *PeerTarget) ProtoReflect() protoreflect.Message
func (*PeerTarget) Reset ¶
func (x *PeerTarget) Reset()
func (*PeerTarget) String ¶
func (x *PeerTarget) String() string
func (*PeerTarget) Validate ¶
func (m *PeerTarget) Validate() error
Validate checks the field values on PeerTarget with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type PeerTargetValidationError ¶
type PeerTargetValidationError struct {
// contains filtered or unexported fields
}
PeerTargetValidationError is the validation error returned by PeerTarget.Validate if the designated constraints aren't met.
func (PeerTargetValidationError) Cause ¶
func (e PeerTargetValidationError) Cause() error
Cause function returns cause value.
func (PeerTargetValidationError) Error ¶
func (e PeerTargetValidationError) Error() string
Error satisfies the builtin error interface
func (PeerTargetValidationError) ErrorName ¶
func (e PeerTargetValidationError) ErrorName() string
ErrorName returns error name.
func (PeerTargetValidationError) Field ¶
func (e PeerTargetValidationError) Field() string
Field function returns field value.
func (PeerTargetValidationError) Key ¶
func (e PeerTargetValidationError) Key() bool
Key function returns key value.
func (PeerTargetValidationError) Reason ¶
func (e PeerTargetValidationError) Reason() string
Reason function returns reason value.
type PeerTaskRequest ¶
type PeerTaskRequest struct { // universal resource locator for different kind of storage Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"` // url meta info UrlMeta *base.UrlMeta `protobuf:"bytes,2,opt,name=url_meta,json=urlMeta,proto3" json:"url_meta,omitempty"` // peer's id and must be global uniqueness PeerId string `protobuf:"bytes,3,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"` // peer host info PeerHost *PeerHost `protobuf:"bytes,4,opt,name=peer_host,json=peerHost,proto3" json:"peer_host,omitempty"` // current host load HostLoad *base.HostLoad `protobuf:"bytes,5,opt,name=host_load,json=hostLoad,proto3" json:"host_load,omitempty"` // whether this request is caused by migration IsMigrating bool `protobuf:"varint,6,opt,name=is_migrating,json=isMigrating,proto3" json:"is_migrating,omitempty"` // contains filtered or unexported fields }
func (*PeerTaskRequest) Descriptor
deprecated
func (*PeerTaskRequest) Descriptor() ([]byte, []int)
Deprecated: Use PeerTaskRequest.ProtoReflect.Descriptor instead.
func (*PeerTaskRequest) GetHostLoad ¶
func (x *PeerTaskRequest) GetHostLoad() *base.HostLoad
func (*PeerTaskRequest) GetIsMigrating ¶
func (x *PeerTaskRequest) GetIsMigrating() bool
func (*PeerTaskRequest) GetPeerHost ¶
func (x *PeerTaskRequest) GetPeerHost() *PeerHost
func (*PeerTaskRequest) GetPeerId ¶
func (x *PeerTaskRequest) GetPeerId() string
func (*PeerTaskRequest) GetUrl ¶
func (x *PeerTaskRequest) GetUrl() string
func (*PeerTaskRequest) GetUrlMeta ¶
func (x *PeerTaskRequest) GetUrlMeta() *base.UrlMeta
func (*PeerTaskRequest) ProtoMessage ¶
func (*PeerTaskRequest) ProtoMessage()
func (*PeerTaskRequest) ProtoReflect ¶
func (x *PeerTaskRequest) ProtoReflect() protoreflect.Message
func (*PeerTaskRequest) Reset ¶
func (x *PeerTaskRequest) Reset()
func (*PeerTaskRequest) String ¶
func (x *PeerTaskRequest) String() string
func (*PeerTaskRequest) Validate ¶
func (m *PeerTaskRequest) Validate() error
Validate checks the field values on PeerTaskRequest with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type PeerTaskRequestValidationError ¶
type PeerTaskRequestValidationError struct {
// contains filtered or unexported fields
}
PeerTaskRequestValidationError is the validation error returned by PeerTaskRequest.Validate if the designated constraints aren't met.
func (PeerTaskRequestValidationError) Cause ¶
func (e PeerTaskRequestValidationError) Cause() error
Cause function returns cause value.
func (PeerTaskRequestValidationError) Error ¶
func (e PeerTaskRequestValidationError) Error() string
Error satisfies the builtin error interface
func (PeerTaskRequestValidationError) ErrorName ¶
func (e PeerTaskRequestValidationError) ErrorName() string
ErrorName returns error name.
func (PeerTaskRequestValidationError) Field ¶
func (e PeerTaskRequestValidationError) Field() string
Field function returns field value.
func (PeerTaskRequestValidationError) Key ¶
func (e PeerTaskRequestValidationError) Key() bool
Key function returns key value.
func (PeerTaskRequestValidationError) Reason ¶
func (e PeerTaskRequestValidationError) Reason() string
Reason function returns reason value.
type PieceResult ¶
type PieceResult struct { // task id TaskId string `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"` // source peer id SrcPid string `protobuf:"bytes,2,opt,name=src_pid,json=srcPid,proto3" json:"src_pid,omitempty"` // dest peer id DstPid string `protobuf:"bytes,3,opt,name=dst_pid,json=dstPid,proto3" json:"dst_pid,omitempty"` // piece info PieceInfo *base.PieceInfo `protobuf:"bytes,4,opt,name=piece_info,json=pieceInfo,proto3" json:"piece_info,omitempty"` // begin time for the piece downloading BeginTime uint64 `protobuf:"varint,5,opt,name=begin_time,json=beginTime,proto3" json:"begin_time,omitempty"` // end time for the piece downloading EndTime uint64 `protobuf:"varint,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` // whether the piece downloading is successfully Success bool `protobuf:"varint,7,opt,name=success,proto3" json:"success,omitempty"` // result code Code base.Code `protobuf:"varint,8,opt,name=code,proto3,enum=base.Code" json:"code,omitempty"` // current host resource usage HostLoad *base.HostLoad `protobuf:"bytes,9,opt,name=host_load,json=hostLoad,proto3" json:"host_load,omitempty"` // currently completed piece count, -1 represent download failed FinishedCount int32 `protobuf:"varint,10,opt,name=finished_count,json=finishedCount,proto3" json:"finished_count,omitempty"` // contains filtered or unexported fields }
func NewEndPieceResult ¶
func NewEndPieceResult(taskID, peerID string, finishedCount int32) *PieceResult
func NewZeroPieceResult ¶
func NewZeroPieceResult(taskID, peerID string) *PieceResult
func (*PieceResult) Descriptor
deprecated
func (*PieceResult) Descriptor() ([]byte, []int)
Deprecated: Use PieceResult.ProtoReflect.Descriptor instead.
func (*PieceResult) GetBeginTime ¶
func (x *PieceResult) GetBeginTime() uint64
func (*PieceResult) GetCode ¶
func (x *PieceResult) GetCode() base.Code
func (*PieceResult) GetDstPid ¶
func (x *PieceResult) GetDstPid() string
func (*PieceResult) GetEndTime ¶
func (x *PieceResult) GetEndTime() uint64
func (*PieceResult) GetFinishedCount ¶
func (x *PieceResult) GetFinishedCount() int32
func (*PieceResult) GetHostLoad ¶
func (x *PieceResult) GetHostLoad() *base.HostLoad
func (*PieceResult) GetPieceInfo ¶
func (x *PieceResult) GetPieceInfo() *base.PieceInfo
func (*PieceResult) GetSrcPid ¶
func (x *PieceResult) GetSrcPid() string
func (*PieceResult) GetSuccess ¶
func (x *PieceResult) GetSuccess() bool
func (*PieceResult) GetTaskId ¶
func (x *PieceResult) GetTaskId() string
func (*PieceResult) ProtoMessage ¶
func (*PieceResult) ProtoMessage()
func (*PieceResult) ProtoReflect ¶
func (x *PieceResult) ProtoReflect() protoreflect.Message
func (*PieceResult) Reset ¶
func (x *PieceResult) Reset()
func (*PieceResult) String ¶
func (x *PieceResult) String() string
func (*PieceResult) Validate ¶
func (m *PieceResult) Validate() error
Validate checks the field values on PieceResult with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type PieceResultValidationError ¶
type PieceResultValidationError struct {
// contains filtered or unexported fields
}
PieceResultValidationError is the validation error returned by PieceResult.Validate if the designated constraints aren't met.
func (PieceResultValidationError) Cause ¶
func (e PieceResultValidationError) Cause() error
Cause function returns cause value.
func (PieceResultValidationError) Error ¶
func (e PieceResultValidationError) Error() string
Error satisfies the builtin error interface
func (PieceResultValidationError) ErrorName ¶
func (e PieceResultValidationError) ErrorName() string
ErrorName returns error name.
func (PieceResultValidationError) Field ¶
func (e PieceResultValidationError) Field() string
Field function returns field value.
func (PieceResultValidationError) Key ¶
func (e PieceResultValidationError) Key() bool
Key function returns key value.
func (PieceResultValidationError) Reason ¶
func (e PieceResultValidationError) Reason() string
Reason function returns reason value.
type RegisterResult ¶
type RegisterResult struct { // task id TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"` // file content length scope for the url SizeScope base.SizeScope `protobuf:"varint,3,opt,name=size_scope,json=sizeScope,proto3,enum=base.SizeScope" json:"size_scope,omitempty"` // download the only piece directly for small or tiny file // // Types that are assignable to DirectPiece: // *RegisterResult_SinglePiece // *RegisterResult_PieceContent DirectPiece isRegisterResult_DirectPiece `protobuf_oneof:"direct_piece"` // contains filtered or unexported fields }
func (*RegisterResult) Descriptor
deprecated
func (*RegisterResult) Descriptor() ([]byte, []int)
Deprecated: Use RegisterResult.ProtoReflect.Descriptor instead.
func (*RegisterResult) GetDirectPiece ¶
func (m *RegisterResult) GetDirectPiece() isRegisterResult_DirectPiece
func (*RegisterResult) GetPieceContent ¶
func (x *RegisterResult) GetPieceContent() []byte
func (*RegisterResult) GetSinglePiece ¶
func (x *RegisterResult) GetSinglePiece() *SinglePiece
func (*RegisterResult) GetSizeScope ¶
func (x *RegisterResult) GetSizeScope() base.SizeScope
func (*RegisterResult) GetTaskId ¶
func (x *RegisterResult) GetTaskId() string
func (*RegisterResult) ProtoMessage ¶
func (*RegisterResult) ProtoMessage()
func (*RegisterResult) ProtoReflect ¶
func (x *RegisterResult) ProtoReflect() protoreflect.Message
func (*RegisterResult) Reset ¶
func (x *RegisterResult) Reset()
func (*RegisterResult) String ¶
func (x *RegisterResult) String() string
func (*RegisterResult) Validate ¶
func (m *RegisterResult) Validate() error
Validate checks the field values on RegisterResult with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type RegisterResultValidationError ¶
type RegisterResultValidationError struct {
// contains filtered or unexported fields
}
RegisterResultValidationError is the validation error returned by RegisterResult.Validate if the designated constraints aren't met.
func (RegisterResultValidationError) Cause ¶
func (e RegisterResultValidationError) Cause() error
Cause function returns cause value.
func (RegisterResultValidationError) Error ¶
func (e RegisterResultValidationError) Error() string
Error satisfies the builtin error interface
func (RegisterResultValidationError) ErrorName ¶
func (e RegisterResultValidationError) ErrorName() string
ErrorName returns error name.
func (RegisterResultValidationError) Field ¶
func (e RegisterResultValidationError) Field() string
Field function returns field value.
func (RegisterResultValidationError) Key ¶
func (e RegisterResultValidationError) Key() bool
Key function returns key value.
func (RegisterResultValidationError) Reason ¶
func (e RegisterResultValidationError) Reason() string
Reason function returns reason value.
type RegisterResult_PieceContent ¶
type RegisterResult_PieceContent struct { // for tiny file PieceContent []byte `protobuf:"bytes,5,opt,name=piece_content,json=pieceContent,proto3,oneof"` }
type RegisterResult_SinglePiece ¶
type RegisterResult_SinglePiece struct { // for small file SinglePiece *SinglePiece `protobuf:"bytes,4,opt,name=single_piece,json=singlePiece,proto3,oneof"` }
type SchedulerClient ¶
type SchedulerClient interface { // RegisterPeerTask registers a peer into one task. RegisterPeerTask(ctx context.Context, in *PeerTaskRequest, opts ...grpc.CallOption) (*RegisterResult, error) // ReportPieceResult reports piece results and receives peer packets. // when migrating to another scheduler, // it will send the last piece result to the new scheduler. ReportPieceResult(ctx context.Context, opts ...grpc.CallOption) (Scheduler_ReportPieceResultClient, error) // ReportPeerResult reports downloading result for the peer task. ReportPeerResult(ctx context.Context, in *PeerResult, opts ...grpc.CallOption) (*emptypb.Empty, error) // LeaveTask makes the peer leaving from scheduling overlay for the task. LeaveTask(ctx context.Context, in *PeerTarget, opts ...grpc.CallOption) (*emptypb.Empty, error) }
SchedulerClient is the client API for Scheduler service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
func NewSchedulerClient ¶
func NewSchedulerClient(cc grpc.ClientConnInterface) SchedulerClient
type SchedulerServer ¶
type SchedulerServer interface { // RegisterPeerTask registers a peer into one task. RegisterPeerTask(context.Context, *PeerTaskRequest) (*RegisterResult, error) // ReportPieceResult reports piece results and receives peer packets. // when migrating to another scheduler, // it will send the last piece result to the new scheduler. ReportPieceResult(Scheduler_ReportPieceResultServer) error // ReportPeerResult reports downloading result for the peer task. ReportPeerResult(context.Context, *PeerResult) (*emptypb.Empty, error) // LeaveTask makes the peer leaving from scheduling overlay for the task. LeaveTask(context.Context, *PeerTarget) (*emptypb.Empty, error) // contains filtered or unexported methods }
SchedulerServer is the server API for Scheduler service. All implementations must embed UnimplementedSchedulerServer for forward compatibility
type Scheduler_ReportPieceResultClient ¶
type Scheduler_ReportPieceResultClient interface { Send(*PieceResult) error Recv() (*PeerPacket, error) grpc.ClientStream }
type Scheduler_ReportPieceResultServer ¶
type Scheduler_ReportPieceResultServer interface { Send(*PeerPacket) error Recv() (*PieceResult, error) grpc.ServerStream }
type SinglePiece ¶
type SinglePiece struct { // destination peer id DstPid string `protobuf:"bytes,1,opt,name=dst_pid,json=dstPid,proto3" json:"dst_pid,omitempty"` // download address(ip:port) DstAddr string `protobuf:"bytes,2,opt,name=dst_addr,json=dstAddr,proto3" json:"dst_addr,omitempty"` // one piece info PieceInfo *base.PieceInfo `protobuf:"bytes,3,opt,name=piece_info,json=pieceInfo,proto3" json:"piece_info,omitempty"` // contains filtered or unexported fields }
func (*SinglePiece) Descriptor
deprecated
func (*SinglePiece) Descriptor() ([]byte, []int)
Deprecated: Use SinglePiece.ProtoReflect.Descriptor instead.
func (*SinglePiece) GetDstAddr ¶
func (x *SinglePiece) GetDstAddr() string
func (*SinglePiece) GetDstPid ¶
func (x *SinglePiece) GetDstPid() string
func (*SinglePiece) GetPieceInfo ¶
func (x *SinglePiece) GetPieceInfo() *base.PieceInfo
func (*SinglePiece) ProtoMessage ¶
func (*SinglePiece) ProtoMessage()
func (*SinglePiece) ProtoReflect ¶
func (x *SinglePiece) ProtoReflect() protoreflect.Message
func (*SinglePiece) Reset ¶
func (x *SinglePiece) Reset()
func (*SinglePiece) String ¶
func (x *SinglePiece) String() string
func (*SinglePiece) Validate ¶
func (m *SinglePiece) Validate() error
Validate checks the field values on SinglePiece with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
type SinglePieceValidationError ¶
type SinglePieceValidationError struct {
// contains filtered or unexported fields
}
SinglePieceValidationError is the validation error returned by SinglePiece.Validate if the designated constraints aren't met.
func (SinglePieceValidationError) Cause ¶
func (e SinglePieceValidationError) Cause() error
Cause function returns cause value.
func (SinglePieceValidationError) Error ¶
func (e SinglePieceValidationError) Error() string
Error satisfies the builtin error interface
func (SinglePieceValidationError) ErrorName ¶
func (e SinglePieceValidationError) ErrorName() string
ErrorName returns error name.
func (SinglePieceValidationError) Field ¶
func (e SinglePieceValidationError) Field() string
Field function returns field value.
func (SinglePieceValidationError) Key ¶
func (e SinglePieceValidationError) Key() bool
Key function returns key value.
func (SinglePieceValidationError) Reason ¶
func (e SinglePieceValidationError) Reason() string
Reason function returns reason value.
type UnimplementedSchedulerServer ¶
type UnimplementedSchedulerServer struct { }
UnimplementedSchedulerServer must be embedded to have forward compatible implementations.
func (UnimplementedSchedulerServer) LeaveTask ¶
func (UnimplementedSchedulerServer) LeaveTask(context.Context, *PeerTarget) (*emptypb.Empty, error)
func (UnimplementedSchedulerServer) RegisterPeerTask ¶
func (UnimplementedSchedulerServer) RegisterPeerTask(context.Context, *PeerTaskRequest) (*RegisterResult, error)
func (UnimplementedSchedulerServer) ReportPeerResult ¶
func (UnimplementedSchedulerServer) ReportPeerResult(context.Context, *PeerResult) (*emptypb.Empty, error)
func (UnimplementedSchedulerServer) ReportPieceResult ¶
func (UnimplementedSchedulerServer) ReportPieceResult(Scheduler_ReportPieceResultServer) error
type UnsafeSchedulerServer ¶
type UnsafeSchedulerServer interface {
// contains filtered or unexported methods
}
UnsafeSchedulerServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to SchedulerServer will result in compilation errors.