keyvaluefx

package
v0.0.0-...-407d76c Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2024 License: MIT Imports: 7 Imported by: 0

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

type ServerResult struct {
	fx.Out

	Procedures []transport.Procedure `group:"yarpcfx"`
}

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.

Jump to

Keyboard shortcuts

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