middleware

package
v0.2.14 Latest Latest
Warning

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

Go to latest
Published: Dec 3, 2025 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Provider

type Provider struct {
	// contains filtered or unexported fields
}

Provider manages the lifecycle of client and server middleware instances. It uses lazy-loading with sync.Once to ensure instances are created only when needed and in a concurrency-safe manner.

func NewProvider

func NewProvider(logger runtimelog.Logger) *Provider

NewProvider creates a new, uninitialized Provider instance.

func (*Provider) ClientMiddleware

func (p *Provider) ClientMiddleware(name string) (kratosMiddleware.Middleware, error)

ClientMiddleware returns a single client middleware instance by name.

func (*Provider) ClientMiddlewares

func (p *Provider) ClientMiddlewares() (map[string]kratosMiddleware.Middleware, error)

ClientMiddlewares returns a map of all available client middleware instances. On the first call, it lazily creates and caches instances based on the configuration.

func (*Provider) Initialize

func (p *Provider) Initialize(cfg *middlewarev1.Middlewares, opts ...options.Option)

Initialize configures the provider with the necessary configuration and options.

func (*Provider) Names

func (p *Provider) Names() []string

Names returns the ordered list of middleware names.

func (*Provider) RegisterClientMiddleware

func (p *Provider) RegisterClientMiddleware(name string, mw kratosMiddleware.Middleware)

RegisterClientMiddleware allows for manual registration of a client middleware instance.

func (*Provider) RegisterServerMiddleware

func (p *Provider) RegisterServerMiddleware(name string, mw kratosMiddleware.Middleware)

RegisterServerMiddleware allows for manual registration of a server middleware instance.

func (*Provider) ServerMiddleware

func (p *Provider) ServerMiddleware(name string) (kratosMiddleware.Middleware, error)

ServerMiddleware returns a single server middleware instance by name.

func (*Provider) ServerMiddlewares

func (p *Provider) ServerMiddlewares() (map[string]kratosMiddleware.Middleware, error)

ServerMiddlewares returns a map of all available server middleware instances. It follows the same lazy-loading and caching logic as ClientMiddlewares.

Jump to

Keyboard shortcuts

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