registry
API
registry
packageAPI reference for the registry
package.
F
function
Global
Returns
pkg/registry/registry.go:9-9
func Global() *Registry
{ return global }
S
struct
Registry
pkg/registry/registry.go:11-19
type Registry struct
Fields
| Name | Type | Description |
|---|---|---|
| ServiceInit | map[string]ServiceInit | |
| RepoInit | map[string]RepoInit | |
| HandlerInit | map[string]HandlerInit | |
| MiddlewareInit | map[string]MiddlewareInit | |
| ModelProviders | []ModelProvider | |
| RouteProviders | []RouteProvider | |
| mu | sync.RWMutex |
F
function
New
Returns
pkg/registry/registry.go:21-28
func New() *Registry
{
return &Registry{
ServiceInit: map[string]ServiceInit{},
RepoInit: map[string]RepoInit{},
HandlerInit: map[string]HandlerInit{},
MiddlewareInit: map[string]MiddlewareInit{},
}
}
F
function
RegisterService
Parameters
name
string
fn
pkg/registry/registry.go:30-34
func RegisterService(name string, fn ServiceInit)
{
global.mu.Lock()
defer global.mu.Unlock()
global.ServiceInit[name] = fn
}
F
function
RegisterRepository
Parameters
name
string
fn
pkg/registry/registry.go:36-40
func RegisterRepository(name string, fn RepoInit)
{
global.mu.Lock()
defer global.mu.Unlock()
global.RepoInit[name] = fn
}
Uses
F
function
RegisterHandler
Parameters
name
string
fn
pkg/registry/registry.go:42-46
func RegisterHandler(name string, fn HandlerInit)
{
global.mu.Lock()
defer global.mu.Unlock()
global.HandlerInit[name] = fn
}
F
function
RegisterMiddleware
Parameters
name
string
pkg/registry/registry.go:48-52
func RegisterMiddleware(name string, fn MiddlewareInit)
{
global.mu.Lock()
defer global.mu.Unlock()
global.MiddlewareInit[name] = fn
}
F
function
RegisterModels
Parameters
pkg/registry/registry.go:54-58
func RegisterModels(fn ModelProvider)
{
global.mu.Lock()
defer global.mu.Unlock()
global.ModelProviders = append(global.ModelProviders, fn)
}
F
function
RegisterRoutes
Parameters
pkg/registry/registry.go:60-64
func RegisterRoutes(fn RouteProvider)
{
global.mu.Lock()
defer global.mu.Unlock()
global.RouteProviders = append(global.RouteProviders, fn)
}
T
type
ServiceInit
pkg/registry/types.go:5-5
type ServiceInit func(repos map[string]any) any
T
type
RepoInit
pkg/registry/types.go:6-6
type RepoInit func(deps map[string]any) any
T
type
HandlerInit
pkg/registry/types.go:7-7
type HandlerInit func(services map[string]any) any
T
type
MiddlewareInit
pkg/registry/types.go:8-8
type MiddlewareInit func(services map[string]any, sessionDur time.Duration) any
T
type
ModelProvider
pkg/registry/types.go:9-9
type ModelProvider func() []any
T
type
RouteProvider
pkg/registry/types.go:10-10
type RouteProvider func() []Route
S
struct
Route
pkg/registry/types.go:12-19
type Route struct
Fields
| Name | Type | Description |
|---|---|---|
| Method | string | |
| Path | string | |
| HandlerName | string | |
| Middleware | []string | |
| Permissions | []string | |
| Meta | map[string]any |