cdnsystem

package
v2.0.2-rc.19 Latest Latest
Warning

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

Go to latest
Published: Mar 4, 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
View Source
var Seeder_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "cdnsystem.Seeder",
	HandlerType: (*SeederServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetPieceTasks",
			Handler:    _Seeder_GetPieceTasks_Handler,
		},
	},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "ObtainSeeds",
			Handler:       _Seeder_ObtainSeeds_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "pkg/rpc/cdnsystem/cdnsystem.proto",
}

Seeder_ServiceDesc is the grpc.ServiceDesc for Seeder service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterSeederServer

func RegisterSeederServer(s grpc.ServiceRegistrar, 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 node host uuid
	HostUuid  string          `protobuf:"bytes,3,opt,name=host_uuid,json=hostUuid,proto3" json:"host_uuid,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"`
	// 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) GetHostUuid

func (x *PieceSeed) GetHostUuid() 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)
}

SeederClient is the client API for Seeder 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 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)
	// contains filtered or unexported methods
}

SeederServer is the server API for Seeder service. All implementations must embed UnimplementedSeederServer for forward compatibility

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 UnimplementedSeederServer

type UnimplementedSeederServer struct {
}

UnimplementedSeederServer must be embedded to have forward compatible implementations.

func (UnimplementedSeederServer) GetPieceTasks

func (UnimplementedSeederServer) ObtainSeeds

type UnsafeSeederServer

type UnsafeSeederServer interface {
	// contains filtered or unexported methods
}

UnsafeSeederServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to SeederServer will result in compilation errors.

Directories

Path Synopsis
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
mocks
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