httpserver

package
v0.0.0-...-01725a7 Latest Latest
Warning

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

Go to latest
Published: Jan 21, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const ModuleName = "httpserver"

Variables

Functions

func AsHandler

func AsHandler(method string, path string, constructor any) fx.Option

func ProvideServer

func ProvideServer(params ProvideServerParams) (*echo.Echo, error)

func RunServer

func RunServer() fx.Option

Types

type Handler

type Handler interface {
	Handle() (echo.HandlerFunc, error)
}

type HandlerDefinition

type HandlerDefinition struct {
	Method string
	Path   string
	Type   reflect.Type
}

type ProvideRegistryParams

type ProvideRegistryParams struct {
	fx.In
	Logger              *slog.Logger
	Handlers            []Handler           `group:"httpserver-handlers"`
	HandlersDefinitions []HandlerDefinition `group:"httpserver-handlers-definitions"`
}

type ProvideServerParams

type ProvideServerParams struct {
	fx.In
	Lifecycle      fx.Lifecycle
	Shutdown       fx.Shutdowner
	Config         *config.Config
	Logger         *slog.Logger
	Propagator     propagation.TextMapPropagator
	TracerProvider trace.TracerProvider
	MeterProvider  metric.MeterProvider
	Registry       *Registry
}

type Registry

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

func NewRegistry

func NewRegistry(logger *slog.Logger, handlers []Handler, handlersDefinitions []HandlerDefinition) *Registry

func ProvideRegistry

func ProvideRegistry(params ProvideRegistryParams) *Registry

func (*Registry) Register

func (r *Registry) Register(srv *echo.Echo) error

Jump to

Keyboard shortcuts

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