share

package
v1.8.8 Latest Latest
Warning

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

Go to latest
Published: May 11, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultRPCPath is used by ServeHTTP.
	DefaultRPCPath = "/_rpcx_"

	// AuthKey is used in metadata.
	AuthKey = "__AUTH"

	// ServerAddress is used to get address of the server by client
	ServerAddress = "__ServerAddress"

	// ServerTimeout timeout value passed from client to control timeout of server
	ServerTimeout = "__ServerTimeout"

	// SendFileServiceName is name of the file transfer service.
	SendFileServiceName = "_filetransfer"

	// StreamServiceName is name of the stream service.
	StreamServiceName = "_streamservice"

	// ContextTagsLock is name of the Context TagsLock.
	ContextTagsLock = "_tagsLock"
)

Variables

Codecs are codecs supported by rpcx. You can add customized codecs in Codecs.

View Source
var ReqMetaDataKey = ContextKey("__req_metadata")

ReqMetaDataKey is used to set metadata in context of requests.

View Source
var ResMetaDataKey = ContextKey("__res_metadata")

ResMetaDataKey is used to set metadata in context of responses.

View Source
var Trace bool

Trace is a flag to write a trace log or not. You should not enable this flag for product environment and enable it only for test. It writes trace log with logger Debug level.

Functions

func IsShareContext

func IsShareContext(ctx context.Context) bool

IsShareContext checks whether a context is share.Context.

func RegisterCodec

func RegisterCodec(t protocol.SerializeType, c codec.Codec)

RegisterCodec register customized codec.

Types

type Context

type Context struct {
	context.Context
	// contains filtered or unexported fields
}

Context is a rpcx customized Context that can contains multiple values.

func NewContext

func NewContext(ctx context.Context) *Context

func WithLocalValue

func WithLocalValue(ctx *Context, key, val interface{}) *Context

func WithValue

func WithValue(parent context.Context, key, val interface{}) *Context

func (*Context) DeleteKey

func (c *Context) DeleteKey(key interface{})

DeleteKey delete the kv pair by key.

func (*Context) Lock

func (c *Context) Lock()

func (*Context) SetValue

func (c *Context) SetValue(key, val interface{})

func (*Context) String

func (c *Context) String() string

func (*Context) Unlock

func (c *Context) Unlock()

func (*Context) Value

func (c *Context) Value(key interface{}) interface{}

type ContextKey

type ContextKey string

ContextKey defines key type in context.

type DownloadFileArgs

type DownloadFileArgs struct {
	FileName string            `json:"file_name,omitempty"`
	Meta     map[string]string `json:"meta,omitempty"`
}

DownloadFileArgs args from clients.

func (DownloadFileArgs) Clone

func (args DownloadFileArgs) Clone() *DownloadFileArgs

Clone clones this DownloadFileArgs.

type FileTransferArgs

type FileTransferArgs struct {
	FileName string            `json:"file_name,omitempty"`
	FileSize int64             `json:"file_size,omitempty"`
	Meta     map[string]string `json:"meta,omitempty"`
}

FileTransferArgs args from clients.

func (FileTransferArgs) Clone

func (args FileTransferArgs) Clone() *FileTransferArgs

Clone clones this DownloadFileArgs.

type FileTransferReply

type FileTransferReply struct {
	Token []byte `json:"token,omitempty"`
	Addr  string `json:"addr,omitempty"`
}

FileTransferReply response to token and addr to clients.

type StreamServiceArgs

type StreamServiceArgs struct {
	Meta map[string]string `json:"meta,omitempty"`
}

StreamServiceArgs is the request type for stream service.

type StreamServiceReply

type StreamServiceReply struct {
	Token []byte `json:"token,omitempty"`
	Addr  string `json:"addr,omitempty"`
}

StreamServiceReply is the reply type for stream service.

Jump to

Keyboard shortcuts

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