Move Go module path to production Forgejo instance. Updates all imports, go.mod, go.sum, docs, and CI configs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
72 lines
2.1 KiB
Go
72 lines
2.1 KiB
Go
// Package framework provides the Core DI/service framework.
|
|
// Import this package for cleaner access to the framework types.
|
|
//
|
|
// Usage:
|
|
//
|
|
// import "forge.lthn.ai/core/cli/pkg/framework"
|
|
//
|
|
// app, _ := framework.New(
|
|
// framework.WithServiceLock(),
|
|
// )
|
|
package framework
|
|
|
|
import (
|
|
"forge.lthn.ai/core/cli/pkg/framework/core"
|
|
)
|
|
|
|
// Re-export core types for cleaner imports
|
|
type (
|
|
Core = core.Core
|
|
Option = core.Option
|
|
Message = core.Message
|
|
Query = core.Query
|
|
Task = core.Task
|
|
QueryHandler = core.QueryHandler
|
|
TaskHandler = core.TaskHandler
|
|
Startable = core.Startable
|
|
Stoppable = core.Stoppable
|
|
Config = core.Config
|
|
Display = core.Display
|
|
WindowOption = core.WindowOption
|
|
Features = core.Features
|
|
Contract = core.Contract
|
|
Error = core.Error
|
|
ServiceRuntime[T any] = core.ServiceRuntime[T]
|
|
Runtime = core.Runtime
|
|
ServiceFactory = core.ServiceFactory
|
|
)
|
|
|
|
// Re-export core functions
|
|
var (
|
|
New = core.New
|
|
WithService = core.WithService
|
|
WithName = core.WithName
|
|
WithApp = core.WithApp
|
|
WithAssets = core.WithAssets
|
|
WithServiceLock = core.WithServiceLock
|
|
App = core.App
|
|
E = core.E
|
|
NewRuntime = core.NewRuntime
|
|
NewWithFactories = core.NewWithFactories
|
|
)
|
|
|
|
// NewServiceRuntime creates a new ServiceRuntime for a service.
|
|
func NewServiceRuntime[T any](c *Core, opts T) *ServiceRuntime[T] {
|
|
return core.NewServiceRuntime(c, opts)
|
|
}
|
|
|
|
// ServiceFor retrieves a typed service from the core container by name.
|
|
func ServiceFor[T any](c *Core, name string) (T, error) {
|
|
return core.ServiceFor[T](c, name)
|
|
}
|
|
|
|
// MustServiceFor retrieves a typed service or returns an error if not found.
|
|
func MustServiceFor[T any](c *Core, name string) T {
|
|
return core.MustServiceFor[T](c, name)
|
|
}
|
|
|
|
// Action types
|
|
type (
|
|
ActionServiceStartup = core.ActionServiceStartup
|
|
ActionServiceShutdown = core.ActionServiceShutdown
|
|
)
|