cdnsystem

package
v2.0.0-alpha-2 Latest Latest
Warning

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

Go to latest
Published: Sep 6, 2021 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.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
	ContentLength int64 `protobuf:"varint,6,opt,name=content_length,json=contentLength,proto3" json:"content_length,omitempty"`
	// total piece count
	TotalPieceCount int32 `protobuf:"varint,7,opt,name=total_piece_count,json=totalPieceCount,proto3" json:"total_piece_count,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) GetContentLength

func (x *PieceSeed) GetContentLength() int64

func (*PieceSeed) GetDone

func (x *PieceSeed) GetDone() bool

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, the first error encountered is returned, or nil if there are no violations.

func (*PieceSeed) ValidateAll added in v2.0.1

func (m *PieceSeed) ValidateAll() error

ValidateAll checks the field values on PieceSeed with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in PieceSeedMultiError, or nil if none found.

type PieceSeedMultiError added in v2.0.1

type PieceSeedMultiError []error

PieceSeedMultiError is an error wrapping multiple validation errors returned by PieceSeed.ValidateAll() if the designated constraints aren't met.

func (PieceSeedMultiError) AllErrors added in v2.0.1

func (m PieceSeedMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (PieceSeedMultiError) Error added in v2.0.1

func (m PieceSeedMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

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, the first error encountered is returned, or nil if there are no violations.

func (*SeedRequest) ValidateAll added in v2.0.1

func (m *SeedRequest) ValidateAll() error

ValidateAll checks the field values on SeedRequest with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in SeedRequestMultiError, or nil if none found.

type SeedRequestMultiError added in v2.0.1

type SeedRequestMultiError []error

SeedRequestMultiError is an error wrapping multiple validation errors returned by SeedRequest.ValidateAll() if the designated constraints aren't met.

func (SeedRequestMultiError) AllErrors added in v2.0.1

func (m SeedRequestMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (SeedRequestMultiError) Error added in v2.0.1

func (m SeedRequestMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

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

Jump to

Keyboard shortcuts

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