Documentation ¶
Overview ¶
Package keyvaluefx provides better integration for Fx for services implementing or calling KeyValue.
Clients ¶
If you are making requests to KeyValue, use the Client function to inject a KeyValue client into your container.
fx.Provide(keyvaluefx.Client("..."))
Servers ¶
If you are implementing KeyValue, provide a keyvalueserver.Interface into the container and use the Server function.
Given,
func NewKeyValueHandler() keyvalueserver.Interface
You can do the following to have the procedures of KeyValue made available to an Fx application.
fx.Provide( NewKeyValueHandler, keyvaluefx.Server(), )
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Client ¶
func Client(name string, opts ...thrift.ClientOption) interface{}
Client provides a KeyValue client to an Fx application using the given name for routing.
fx.Provide( keyvaluefx.Client("..."), newHandler, )
func Server ¶
func Server(opts ...thrift.RegisterOption) interface{}
Server provides procedures for KeyValue to an Fx application. It expects a keyvaluefx.Interface to be present in the container.
fx.Provide( func(h *MyKeyValueHandler) keyvalueserver.Interface { return h }, keyvaluefx.Server(), )
Types ¶
type Params ¶
type Params struct { fx.In Provider yarpc.ClientConfig Restriction restriction.Checker `optional:"true"` }
Params defines the dependencies for the KeyValue client.
type Result ¶
type Result struct { fx.Out Client keyvalueclient.Interface }
Result defines the output of the KeyValue client module. It provides a KeyValue client to an Fx application.
type ServerParams ¶
type ServerParams struct { fx.In Handler keyvalueserver.Interface }
ServerParams defines the dependencies for the KeyValue server.
type ServerResult ¶
ServerResult defines the output of KeyValue server module. It provides the procedures of a KeyValue handler to an Fx application.
The procedures are provided to the "yarpcfx" value group. Dig 1.2 or newer must be used for this feature to work.