Documentation
¶
Index ¶
- func RegisterModule(desc ModuleDescriptor)
- type AnModule
- type AnWare
- func (m *AnWare) AutoLoadModules(staticData aninterface.StaticData, appConfig any, logger aninterface.AnLogger)
- func (m *AnWare) Broadcast(msg AnWareEvent)
- func (m *AnWare) LoopOfAnWare(msg AnWareEvent)
- func (m *AnWare) Run()
- func (m *AnWare) Send(msg AnWareEvent)
- func (m *AnWare) SendSync(source string, target string, msgType string, data any) (any, error)
- func (m *AnWare) Shutdown()
- type AnWareEvent
- type AnWareReply
- type ConfigValidator
- type GenericModuleConstructor
- type ModuleDescriptor
- type ModuleFactory
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterModule ¶
func RegisterModule(desc ModuleDescriptor)
Types ¶
type AnWare ¶
type AnWare struct {
Logger aninterface.AnLogger
// contains filtered or unexported fields
}
func NewAnWare ¶
func NewAnWare(context context.Context, cancel context.CancelFunc, logger aninterface.AnLogger) *AnWare
func (*AnWare) AutoLoadModules ¶
func (m *AnWare) AutoLoadModules( staticData aninterface.StaticData, appConfig any, logger aninterface.AnLogger, )
func (*AnWare) Broadcast ¶
func (m *AnWare) Broadcast(msg AnWareEvent)
func (*AnWare) LoopOfAnWare ¶
func (m *AnWare) LoopOfAnWare(msg AnWareEvent)
func (*AnWare) Send ¶
func (m *AnWare) Send(msg AnWareEvent)
type AnWareEvent ¶
type AnWareEvent struct {
Source string
Target string
Type string
Data any
ReplyTo chan AnWareReply
}
type AnWareReply ¶ added in v1.0.4
type ConfigValidator ¶ added in v1.1.0
type ConfigValidator interface {
Validate() error
}
type GenericModuleConstructor ¶
func (GenericModuleConstructor[F, C]) Build ¶
func (g GenericModuleConstructor[F, C]) Build(local aninterface.StaticData, config any, flags any, logger aninterface.AnLogger) AnModule
type ModuleDescriptor ¶ added in v1.1.0
type ModuleDescriptor struct {
Name string
New func(
local aninterface.StaticData,
cfg any,
logger aninterface.AnLogger,
) AnModule
ConfigType any
}
type ModuleFactory ¶
type ModuleFactory interface {
Build(local aninterface.StaticData, config any, flags any, logger aninterface.AnLogger) AnModule
}
Click to show internal directories.
Click to hide internal directories.