cdnsystem

package
v2.0.5-alpha.3 Latest Latest
Warning

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

Go to latest
Published: Jul 12, 2022 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_pkg_rpc_cdnsystem_cdnsystem_proto protoreflect.FileDescriptor

Functions

func RegisterSeederServer

func RegisterSeederServer(s *grpc.Server, srv SeederServer)

Types

type PieceSeed

type PieceSeed struct {

	// peer id for cdn node, need suffix with _CDN
	PeerId string `protobuf:"bytes,2,opt,name=peer_id,json=peerId,proto3" json:"peer_id,omitempty"`
	// cdn host id
	HostId    string          `protobuf:"bytes,3,opt,name=host_id,json=hostId,proto3" json:"host_id,omitempty"`
	PieceInfo *base.PieceInfo `protobuf:"bytes,4,opt,name=piece_info,json=pieceInfo,proto3" json:"piece_info,omitempty"`
	// whether or not all seeds are downloaded
	Done bool `protobuf:"varint,5,opt,name=done,proto3" json:"done,omitempty"`
	// content total length for the url, content_length < 0 represent content length is unknown
	ContentLength int64 `protobuf:"varint,6,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
	// total piece count, -1 represents task is downloading or failed
	TotalPieceCount int32 `protobuf:"varint,7,opt,name=total_piece_count,json=totalPieceCount,proto3" json:"total_piece_count,omitempty"`
	// begin time for the piece downloading
	BeginTime uint64 `protobuf:"varint,8,opt,name=begin_time,json=beginTime,proto3" json:"begin_time,omitempty"`
	// end time for the piece downloading
	EndTime uint64 `protobuf:"varint,9,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// task extend attribute
	ExtendAttribute *base.ExtendAttribute `protobuf:"bytes,10,opt,name=extend_attribute,json=extendAttribute,proto3" json:"extend_attribute,omitempty"`
	// contains filtered or unexported fields
}

keep piece meta and data separately check piece md5, md5s sign and total content length

func (*PieceSeed) Descriptor deprecated

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

Deprecated: Use PieceSeed.ProtoReflect.Descriptor instead.

func (*PieceSeed) GetBeginTime added in v2.0.2

func (x *PieceSeed) GetBeginTime() uint64

func (*PieceSeed) GetContentLength

func (x *PieceSeed) GetContentLength() int64

func (*PieceSeed) GetDone

func (x *PieceSeed) GetDone() bool

func (*PieceSeed) GetEndTime added in v2.0.2

func (x *PieceSeed) GetEndTime() uint64

func (*PieceSeed) GetExtendAttribute added in v2.0.3

func (x *PieceSeed) GetExtendAttribute() *base.ExtendAttribute

func (*PieceSeed) GetHostId added in v2.0.3

func (x *PieceSeed) GetHostId() string

func (*PieceSeed) GetPeerId

func (x *PieceSeed) GetPeerId() string

func (*PieceSeed) GetPieceInfo

func (x *PieceSeed) GetPieceInfo() *base.PieceInfo

func (*PieceSeed) GetTotalPieceCount

func (x *PieceSeed) GetTotalPieceCount() int32

func (*PieceSeed) ProtoMessage

func (*PieceSeed) ProtoMessage()

func (*PieceSeed) ProtoReflect

func (x *PieceSeed) ProtoReflect() protoreflect.Message

func (*PieceSeed) Reset

func (x *PieceSeed) Reset()

func (*PieceSeed) String

func (x *PieceSeed) String() string

func (*PieceSeed) Validate

func (m *PieceSeed) Validate() error

Validate checks the field values on PieceSeed with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type PieceSeedValidationError

type PieceSeedValidationError struct {
	// contains filtered or unexported fields
}

PieceSeedValidationError is the validation error returned by PieceSeed.Validate if the designated constraints aren't met.

func (PieceSeedValidationError) Cause

func (e PieceSeedValidationError) Cause() error

Cause function returns cause value.

func (PieceSeedValidationError) Error

func (e PieceSeedValidationError) Error() string

Error satisfies the builtin error interface

func (PieceSeedValidationError) ErrorName

func (e PieceSeedValidationError) ErrorName() string

ErrorName returns error name.

func (PieceSeedValidationError) Field

func (e PieceSeedValidationError) Field() string

Field function returns field value.

func (PieceSeedValidationError) Key

Key function returns key value.

func (PieceSeedValidationError) Reason

func (e PieceSeedValidationError) Reason() string

Reason function returns reason value.

type SeedRequest

type SeedRequest struct {
	TaskId  string        `protobuf:"bytes,1,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	Url     string        `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
	UrlMeta *base.UrlMeta `protobuf:"bytes,3,opt,name=url_meta,json=urlMeta,proto3" json:"url_meta,omitempty"`
	// contains filtered or unexported fields
}

func (*SeedRequest) Descriptor deprecated

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

Deprecated: Use SeedRequest.ProtoReflect.Descriptor instead.

func (*SeedRequest) GetTaskId

func (x *SeedRequest) GetTaskId() string

func (*SeedRequest) GetUrl

func (x *SeedRequest) GetUrl() string

func (*SeedRequest) GetUrlMeta

func (x *SeedRequest) GetUrlMeta() *base.UrlMeta

func (*SeedRequest) ProtoMessage

func (*SeedRequest) ProtoMessage()

func (*SeedRequest) ProtoReflect

func (x *SeedRequest) ProtoReflect() protoreflect.Message

func (*SeedRequest) Reset

func (x *SeedRequest) Reset()

func (*SeedRequest) String

func (x *SeedRequest) String() string

func (*SeedRequest) Validate

func (m *SeedRequest) Validate() error

Validate checks the field values on SeedRequest with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.

type SeedRequestValidationError

type SeedRequestValidationError struct {
	// contains filtered or unexported fields
}

SeedRequestValidationError is the validation error returned by SeedRequest.Validate if the designated constraints aren't met.

func (SeedRequestValidationError) Cause

Cause function returns cause value.

func (SeedRequestValidationError) Error

Error satisfies the builtin error interface

func (SeedRequestValidationError) ErrorName

func (e SeedRequestValidationError) ErrorName() string

ErrorName returns error name.

func (SeedRequestValidationError) Field

Field function returns field value.

func (SeedRequestValidationError) Key

Key function returns key value.

func (SeedRequestValidationError) Reason

Reason function returns reason value.

type SeederClient

type SeederClient interface {
	// Generate seeds and return to scheduler
	ObtainSeeds(ctx context.Context, in *SeedRequest, opts ...grpc.CallOption) (Seeder_ObtainSeedsClient, error)
	// Get piece tasks from cdn
	GetPieceTasks(ctx context.Context, in *base.PieceTaskRequest, opts ...grpc.CallOption) (*base.PiecePacket, error)
	// Sync piece tasks with other peers
	SyncPieceTasks(ctx context.Context, opts ...grpc.CallOption) (Seeder_SyncPieceTasksClient, error)
}

SeederClient is the client API for Seeder service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewSeederClient

func NewSeederClient(cc grpc.ClientConnInterface) SeederClient

type SeederServer

type SeederServer interface {
	// Generate seeds and return to scheduler
	ObtainSeeds(*SeedRequest, Seeder_ObtainSeedsServer) error
	// Get piece tasks from cdn
	GetPieceTasks(context.Context, *base.PieceTaskRequest) (*base.PiecePacket, error)
	// Sync piece tasks with other peers
	SyncPieceTasks(Seeder_SyncPieceTasksServer) error
}

SeederServer is the server API for Seeder service.

type Seeder_ObtainSeedsClient

type Seeder_ObtainSeedsClient interface {
	Recv() (*PieceSeed, error)
	grpc.ClientStream
}

type Seeder_ObtainSeedsServer

type Seeder_ObtainSeedsServer interface {
	Send(*PieceSeed) error
	grpc.ServerStream
}

type Seeder_SyncPieceTasksClient added in v2.0.2

type Seeder_SyncPieceTasksClient interface {
	Send(*base.PieceTaskRequest) error
	Recv() (*base.PiecePacket, error)
	grpc.ClientStream
}

type Seeder_SyncPieceTasksServer added in v2.0.2

type Seeder_SyncPieceTasksServer interface {
	Send(*base.PiecePacket) error
	Recv() (*base.PieceTaskRequest, error)
	grpc.ServerStream
}

type UnimplementedSeederServer

type UnimplementedSeederServer struct {
}

UnimplementedSeederServer can be embedded to have forward compatible implementations.

func (*UnimplementedSeederServer) GetPieceTasks

func (*UnimplementedSeederServer) ObtainSeeds

func (*UnimplementedSeederServer) SyncPieceTasks added in v2.0.2

Directories

Path Synopsis
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

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