Documentation
¶
Overview ¶
Package router contains API routing logic
Package router contains API routing logic
Index ¶
- func MetricTelemetryMiddleware(metrics *telemetry.Metrics, options ...MiddlewareOption) func(huma.Context, func(huma.Context))
- func NewHumaAPI(cfg *config.Config, registry service.RegistryService, mux *http.ServeMux, ...) huma.API
- func RegisterRoutes(api huma.API, cfg *config.Config, registry service.RegistryService, ...)
- type MiddlewareOption
- type RouteOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewHumaAPI ¶
func NewHumaAPI(cfg *config.Config, registry service.RegistryService, mux *http.ServeMux, metrics *telemetry.Metrics, versionInfo *v0.VersionBody, uiHandler http.Handler, authnProvider auth.AuthnProvider, routeOpts *RouteOptions) huma.API
NewHumaAPI creates a new Huma API with all routes registered Note: authz is handled at the DB/service layer, not at the API layer.
func RegisterRoutes ¶
func RegisterRoutes( api huma.API, cfg *config.Config, registry service.RegistryService, metrics *telemetry.Metrics, versionInfo *v0.VersionBody, opts *RouteOptions, )
RegisterRoutes registers all API routes under /v0.
Types ¶
type MiddlewareOption ¶
type MiddlewareOption func(*middlewareConfig)
func WithSkipPaths ¶
func WithSkipPaths(paths ...string) MiddlewareOption
WithSkipPaths allows skipping instrumentation for specific paths
type RouteOptions ¶ added in v0.1.21
type RouteOptions struct {
Indexer service.Indexer
JobManager *jobs.Manager
Mux *http.ServeMux
// Optional deployment adapters keyed by provider platform type.
ProviderPlatforms map[string]registrytypes.ProviderPlatformAdapter
DeploymentPlatforms map[string]registrytypes.DeploymentPlatformAdapter
// Optional callback for integration-owned route registration.
ExtraRoutes func(api huma.API, pathPrefix string)
}
RouteOptions contains optional services for route registration.
Click to show internal directories.
Click to hide internal directories.