manager

package
v0.1.22 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 19, 2025 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DefaultCallOptions

func DefaultCallOptions() *types.CallOptions

DefaultCallOptions returns default call options

Types

type GRPCExtension

type GRPCExtension interface {
	RegisterGRPCServices(server *exgrpc.Server)
}

GRPCExtension defines interface for extensions that provide gRPC services

type Manager

type Manager struct {
	// contains filtered or unexported fields
}

Manager manages extensions and provides unified service access

func NewManager

func NewManager(conf *config.Config) (*Manager, error)

NewManager creates a new extension manager

func (*Manager) CallService

func (m *Manager) CallService(ctx context.Context, serviceName, methodName string, req any) (*types.CallResult, error)

CallService provides unified service calling interface

func (*Manager) CallServiceWithOptions

func (m *Manager) CallServiceWithOptions(ctx context.Context, serviceName, methodName string, req any, opts *types.CallOptions) (*types.CallResult, error)

CallServiceWithOptions calls service

func (*Manager) CheckServiceHealth

func (m *Manager) CheckServiceHealth(name string) string

CheckServiceHealth checks service health

func (*Manager) Cleanup

func (m *Manager) Cleanup()

Cleanup cleans up all loaded extensions and subsystems

func (*Manager) CleanupOldMetrics

func (m *Manager) CleanupOldMetrics(maxAge time.Duration) error

CleanupOldMetrics removes old metrics

func (*Manager) DeregisterConsulService

func (m *Manager) DeregisterConsulService(name string) error

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

func (*Manager) GetComprehensiveMetrics

func (m *Manager) GetComprehensiveMetrics() map[string]any

GetComprehensiveMetrics returns all metrics in a structured format

func (*Manager) GetConfig

func (m *Manager) GetConfig() *config.Config

GetConfig returns the manager's config

func (*Manager) GetConsulService

func (m *Manager) GetConsulService(name string) (*api.AgentService, error)

GetConsulService gets a service from Consul

func (*Manager) GetCrossService

func (m *Manager) GetCrossService(extensionName, servicePath string) (any, error)

GetCrossService gets service by extension name and service path

func (*Manager) GetData

func (m *Manager) GetData() *data.Data

GetData returns the data layer instance

func (*Manager) GetDataMetrics

func (m *Manager) GetDataMetrics() map[string]any

GetDataMetrics returns data layer metrics

func (*Manager) GetEventsMetrics

func (m *Manager) GetEventsMetrics() map[string]any

GetEventsMetrics returns event metrics

func (*Manager) GetExtension

func (m *Manager) GetExtension(name string) (types.Interface, error)

GetExtension is deprecated, use GetExtensionByName instead

func (*Manager) GetExtensionByName

func (m *Manager) GetExtensionByName(name string) (types.Interface, error)

GetExtensionByName returns a specific extension by name

func (*Manager) GetExtensionMetrics

func (m *Manager) GetExtensionMetrics(name string) *metrics.ExtensionMetrics

GetExtensionMetrics returns metrics for specific extension

func (*Manager) GetExtensionPublisher

func (m *Manager) GetExtensionPublisher(name string, publisherType reflect.Type) (any, error)

GetExtensionPublisher returns a specific extension publisher

func (*Manager) GetExtensionSubscriber

func (m *Manager) GetExtensionSubscriber(name string, subscriberType reflect.Type) (any, error)

GetExtensionSubscriber returns a specific extension subscriber

func (*Manager) GetExtensions

func (m *Manager) GetExtensions() map[string]*types.Wrapper

GetExtensions is deprecated, use ListExtensions instead

func (*Manager) GetHandler

func (m *Manager) GetHandler(name string) (types.Handler, error)

GetHandler is deprecated, use GetHandlerByName instead

func (*Manager) GetHandlerByName

func (m *Manager) GetHandlerByName(name string) (types.Handler, error)

GetHandlerByName returns a specific handler from an extension

func (*Manager) GetHandlers

func (m *Manager) GetHandlers() map[string]types.Handler

GetHandlers is deprecated, use ListHandlers instead

func (*Manager) GetHealthyServices

func (m *Manager) GetHealthyServices(name string) ([]*api.ServiceEntry, error)

GetHealthyServices gets healthy services

func (*Manager) GetLatestMetrics

func (m *Manager) GetLatestMetrics(extensionName string, limit int) ([]*metrics.Snapshot, error)

GetLatestMetrics gets latest metrics for an extension

func (*Manager) GetMetadata

func (m *Manager) GetMetadata() map[string]types.Metadata

GetMetadata returns the metadata of all registered extensions

func (*Manager) GetMetrics

func (m *Manager) GetMetrics() map[string]any

GetMetrics returns comprehensive metrics

func (*Manager) GetMetricsStorageStats

func (m *Manager) GetMetricsStorageStats() map[string]any

GetMetricsStorageStats returns storage statistics

func (*Manager) GetService

func (m *Manager) GetService(extensionName string) (types.Service, error)

GetService is deprecated, use GetServiceByName instead

func (*Manager) GetServiceByName

func (m *Manager) GetServiceByName(extensionName string) (types.Service, error)

GetServiceByName returns a specific service from an extension

func (*Manager) GetServiceCacheStats

func (m *Manager) GetServiceCacheStats() map[string]any

GetServiceCacheStats returns service cache statistics

func (*Manager) GetServices

func (m *Manager) GetServices() map[string]types.Service

GetServices is deprecated, use ListServices instead

func (*Manager) GetStatus

func (m *Manager) GetStatus() map[string]string

GetStatus returns the status of all registered extensions

func (*Manager) GetSystemMetrics

func (m *Manager) GetSystemMetrics() map[string]any

GetSystemMetrics returns system metrics from all layers

func (*Manager) InitExtensions

func (m *Manager) InitExtensions() error

InitExtensions initializes all registered extensions

func (*Manager) IsFullyInitialized

func (m *Manager) IsFullyInitialized() bool

IsFullyInitialized checks if all extensions are ready

func (*Manager) IsMetricsEnabled

func (m *Manager) IsMetricsEnabled() bool

IsMetricsEnabled returns whether metrics collection is enabled

func (*Manager) ListExtensions

func (m *Manager) ListExtensions() map[string]*types.Wrapper

ListExtensions returns all loaded extensions

func (*Manager) ListHandlers

func (m *Manager) ListHandlers() map[string]types.Handler

ListHandlers returns all registered extension handlers

func (*Manager) ListServices

func (m *Manager) ListServices() map[string]types.Service

ListServices returns all registered extension services

func (*Manager) LoadPlugin

func (m *Manager) LoadPlugin(path string) error

LoadPlugin loads a single plugin from file with security checks and metrics

func (*Manager) LoadPlugins

func (m *Manager) LoadPlugins() error

LoadPlugins loads all plugins based on configuration

func (*Manager) ManageRoutes

func (m *Manager) ManageRoutes(r *gin.RouterGroup)

ManageRoutes manages routes for all extensions

func (*Manager) PublishEvent

func (m *Manager) PublishEvent(eventName string, data any, target ...types.EventTarget)

PublishEvent publishes event

func (*Manager) PublishEventWithRetry

func (m *Manager) PublishEventWithRetry(eventName string, data any, maxRetries int, target ...types.EventTarget)

PublishEventWithRetry publishes event with retry

func (*Manager) PublishMessage

func (m *Manager) PublishMessage(exchange, routingKey string, body []byte) error

PublishMessage publishes message to available queue system

func (*Manager) QueryHistoricalMetrics

func (m *Manager) QueryHistoricalMetrics(opts *metrics.QueryOptions) ([]*metrics.AggregatedMetrics, error)

QueryHistoricalMetrics queries historical metrics

func (*Manager) RefreshCrossServices

func (m *Manager) RefreshCrossServices()

RefreshCrossServices is deprecated, automatic refresh

func (*Manager) Register

func (m *Manager) Register(ext types.Interface) error

Register is deprecated, use RegisterExtension instead

func (*Manager) RegisterConsulService

func (m *Manager) RegisterConsulService(name string, info *types.ServiceInfo) error

RegisterConsulService registers a service

func (*Manager) RegisterCrossService

func (m *Manager) RegisterCrossService(key string, service any)

RegisterCrossService manually registers a cross service

func (*Manager) RegisterExtension

func (m *Manager) RegisterExtension(ext types.Interface) error

RegisterExtension registers an extension

func (*Manager) RegisterRoutes

func (m *Manager) RegisterRoutes(router *gin.Engine)

RegisterRoutes registers all extension routes

func (*Manager) ReloadPlugin

func (m *Manager) ReloadPlugin(name string) error

ReloadPlugin reloads a single plugin

func (*Manager) SubscribeEvent

func (m *Manager) SubscribeEvent(eventName string, handler func(any), source ...types.EventTarget)

SubscribeEvent subscribes to events

func (*Manager) SubscribeToMessages

func (m *Manager) SubscribeToMessages(queue string, handler func([]byte) error) error

SubscribeToMessages subscribes to messages from available queue system

func (*Manager) UnloadPlugin

func (m *Manager) UnloadPlugin(name string) error

UnloadPlugin unloads a single plugin

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL