Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type ClientBuildInput ¶
type ClientBuildInput struct {
Data *conf.Data
Trace *conf.Trace
Discovery registry.Discovery
Logger log.Logger
ExtraValues map[string]any
}
ClientBuildInput 为 client 插件提供标准输入。
type ClientFactory ¶
type ClientFactory interface {
CreateConn(ctx context.Context, serviceName string) (Connection, error)
}
ClientFactory 定义按服务名构建连接的运行时工厂。
type ClientNode ¶
type ClientNode struct {
Type string
Input ClientBuildInput
}
ClientNode 描述一个待构建的 client 节点。
type ClientPlugin ¶
type ClientPlugin interface {
Type() string
Build(ctx context.Context, in ClientBuildInput) (ClientFactory, error)
}
ClientPlugin 定义 client 协议插件构建接口。
type Connection ¶
Connection 定义 transport client 连接的最小运行时契约。
type Graph ¶
type Graph struct {
// contains filtered or unexported fields
}
Graph 基于 registry 进行 transport 运行时编排。
func (*Graph) Build ¶
func (g *Graph) Build(ctx context.Context, in GraphInput) (GraphOutput, error)
type GraphInput ¶
type GraphInput struct {
Servers []ServerNode
Clients []ClientNode
}
GraphInput 为 runtime graph 的统一输入。
type GraphOutput ¶
type GraphOutput struct {
Servers map[string]Server
Clients map[string]ClientFactory
}
GraphOutput 为 runtime graph 的统一输出。
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
Registry 维护 client/server 插件注册表。
func NewRegistry ¶
func NewRegistry() *Registry
func (*Registry) RegisterClient ¶
func (r *Registry) RegisterClient(p ClientPlugin) error
func (*Registry) RegisterServer ¶
func (r *Registry) RegisterServer(p ServerPlugin) error
type Server ¶
type Server interface {
Start(ctx context.Context) error
Stop(ctx context.Context) error
Endpoint() (*url.URL, error)
}
Server 定义 transport server 的最小运行时契约。
type ServerBuildInput ¶
type ServerBuildInput struct {
Config any
Logger log.Logger
Middleware []middleware.Middleware
Registrars []any
ExtraValues map[string]any
}
ServerBuildInput 为 server 插件提供标准输入。
type ServerNode ¶
type ServerNode struct {
Type string
Input ServerBuildInput
}
ServerNode 描述一个待构建的 server 节点。
type ServerPlugin ¶
type ServerPlugin interface {
Type() string
Build(ctx context.Context, in ServerBuildInput) (Server, error)
}
ServerPlugin 定义 server 协议插件构建接口。
Click to show internal directories.
Click to hide internal directories.