Documentation
¶
Index ¶
- type Manager
- func (m *Manager) CheckServiceHealth(name string) string
- func (m *Manager) Cleanup()
- func (m *Manager) DeregisterConsulService(name string) error
- func (m *Manager) ExecuteWithCircuitBreaker(extensionName string, fn func() (any, error)) (any, error)
- func (m *Manager) GetConfig() *config.Config
- func (m *Manager) GetConsulService(name string) (*api.AgentService, error)
- func (m *Manager) GetEventBusMetrics() map[string]any
- func (m *Manager) GetExtension(name string) (types.Interface, error)
- func (m *Manager) GetExtensions() map[string]*types.Wrapper
- func (m *Manager) GetHandler(f string) (types.Handler, error)
- func (m *Manager) GetHandlers() map[string]types.Handler
- func (m *Manager) GetHealthyServices(name string) ([]*api.ServiceEntry, error)
- func (m *Manager) GetMetadata() map[string]types.Metadata
- func (m *Manager) GetService(extensionName string) (types.Service, error)
- func (m *Manager) GetServiceCacheStats() map[string]any
- func (m *Manager) GetServices() map[string]types.Service
- func (m *Manager) GetStatus() map[string]string
- func (m *Manager) InitExtensions() error
- func (m *Manager) LoadPlugin(path string) error
- func (m *Manager) LoadPlugins() error
- func (m *Manager) ManageRoutes(r *gin.RouterGroup)
- func (m *Manager) PublishEvent(eventName string, data any, target ...types.EventTarget)
- func (m *Manager) PublishEventWithRetry(eventName string, data any, maxRetries int, target ...types.EventTarget)
- func (m *Manager) PublishMessage(exchange, routingKey string, body []byte) error
- func (m *Manager) Register(f types.Interface) error
- func (m *Manager) RegisterConsulService(name string, info *types.ServiceInfo) error
- func (m *Manager) RegisterRoutes(router *gin.Engine)
- func (m *Manager) ReloadPlugin(name string) error
- func (m *Manager) ReloadPlugins() error
- func (m *Manager) SubscribeEvent(eventName string, handler func(any), source ...types.EventTarget)
- func (m *Manager) SubscribeToMessages(queue string, handler func([]byte) error) error
- func (m *Manager) UnloadPlugin(name string) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Manager ¶
type Manager struct {
// contains filtered or unexported fields
}
Manager represents an extension / plugin manager
func NewManager ¶
NewManager creates a new extension / plugin manager
func (*Manager) CheckServiceHealth ¶
CheckServiceHealth checks service health
func (*Manager) DeregisterConsulService ¶
DeregisterConsulService deregisters a service from Consul
func (*Manager) ExecuteWithCircuitBreaker ¶
func (m *Manager) ExecuteWithCircuitBreaker(extensionName string, fn func() (any, error)) (any, error)
ExecuteWithCircuitBreaker executes a function with circuit breaker protection
func (*Manager) GetConsulService ¶
func (m *Manager) GetConsulService(name string) (*api.AgentService, error)
GetConsulService gets a service from Consul
func (*Manager) GetEventBusMetrics ¶
GetEventBusMetrics returns event bus metrics
func (*Manager) GetExtension ¶
GetExtension returns a specific extension
func (*Manager) GetExtensions ¶
GetExtensions returns the loaded extensions
func (*Manager) GetHandler ¶
GetHandler returns a specific handler from an extension
func (*Manager) GetHandlers ¶
GetHandlers returns all registered extension handlers
func (*Manager) GetHealthyServices ¶
func (m *Manager) GetHealthyServices(name string) ([]*api.ServiceEntry, error)
GetHealthyServices gets healthy services
func (*Manager) GetMetadata ¶
GetMetadata returns the metadata of all registered extensions
func (*Manager) GetService ¶
GetService returns a specific service from an extension
func (*Manager) GetServiceCacheStats ¶
GetServiceCacheStats returns the service cache stats
func (*Manager) GetServices ¶
GetServices returns all registered extension services
func (*Manager) InitExtensions ¶
InitExtensions initializes all registered extensions
func (*Manager) LoadPlugin ¶
LoadPlugin loads a single plugin
func (*Manager) LoadPlugins ¶
LoadPlugins loads all plugins based on the current configuration
func (*Manager) ManageRoutes ¶
func (m *Manager) ManageRoutes(r *gin.RouterGroup)
ManageRoutes manages routes for all extensions / plugins
func (*Manager) PublishEvent ¶
func (m *Manager) PublishEvent(eventName string, data any, target ...types.EventTarget)
PublishEvent publishes an event to specified targets
func (*Manager) PublishEventWithRetry ¶ added in v0.1.2
func (m *Manager) PublishEventWithRetry(eventName string, data any, maxRetries int, target ...types.EventTarget)
PublishEventWithRetry publishes an event with retry logic
func (*Manager) PublishMessage ¶
PublishMessage publishes a message to RabbitMQ or Kafka
func (*Manager) RegisterConsulService ¶
func (m *Manager) RegisterConsulService(name string, info *types.ServiceInfo) error
RegisterConsulService registers a service with Consul
func (*Manager) RegisterRoutes ¶
RegisterRoutes registers all extension routes with the provided router
func (*Manager) ReloadPlugin ¶
ReloadPlugin reloads a single extension / plugin
func (*Manager) ReloadPlugins ¶
ReloadPlugins reloads all extensions / plugins
func (*Manager) SubscribeEvent ¶
func (m *Manager) SubscribeEvent(eventName string, handler func(any), source ...types.EventTarget)
SubscribeEvent registers a handler for events from in-memory bus and/or message queue
func (*Manager) SubscribeToMessages ¶
SubscribeToMessages subscribes to messages from RabbitMQ or Kafka
func (*Manager) UnloadPlugin ¶
UnloadPlugin unloads a single extension