pluginmanager_service

package
v2.1.0-rc.3 Latest Latest
Warning

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

Go to latest
Published: Jul 9, 2025 License: AGPL-3.0 Imports: 40 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RateLimiterFromProto

func RateLimiterFromProto(p *proto.RateLimiterDefinition, pluginImageRef, pluginInstance string) (*plugin.RateLimiter, error)

RateLimiterFromProto converts the proto format RateLimiterDefinition into a Defintion

Types

type PluginManager

type PluginManager struct {
	pb.UnimplementedPluginManagerServer
	// contains filtered or unexported fields
}

PluginManager is the implementation of grpc.PluginManager

func NewPluginManager

func NewPluginManager(ctx context.Context, connectionConfig map[string]*sdkproto.ConnectionConfig, pluginConfigs connection.PluginMap, logger hclog.Logger) (*PluginManager, error)

func (*PluginManager) Get

func (m *PluginManager) Get(req *pb.GetRequest) (_ *pb.GetResponse, err error)

func (*PluginManager) GetConnectionConfig

func (m *PluginManager) GetConnectionConfig() connection.ConnectionConfigMap

func (*PluginManager) HandlePluginLimiterChanges

func (m *PluginManager) HandlePluginLimiterChanges(newLimiters connection.PluginLimiterMap) error

HandlePluginLimiterChanges responds to changes in the plugin rate limiter definitions update the stored limiters, refrresh the rate limiter table and call `setRateLimiters` for all plugins with changed limiters

func (*PluginManager) LoadPluginRateLimiters

func (m *PluginManager) LoadPluginRateLimiters(pluginConnectionMap map[string]string) (connection.PluginLimiterMap, error)

func (*PluginManager) OnConnectionConfigChanged

func (m *PluginManager) OnConnectionConfigChanged(ctx context.Context, configMap connection.ConnectionConfigMap, plugins map[string]*plugin.Plugin)

OnConnectionConfigChanged is the callback function invoked by the connection watcher when the config changed

func (*PluginManager) Pool

func (m *PluginManager) Pool() *pgxpool.Pool

func (*PluginManager) RefreshConnections

func (*PluginManager) SendPostgresErrorsAndWarningsNotification

func (m *PluginManager) SendPostgresErrorsAndWarningsNotification(ctx context.Context, errorAndWarnings error_helpers.ErrorAndWarnings)

func (*PluginManager) SendPostgresSchemaNotification

func (m *PluginManager) SendPostgresSchemaNotification(ctx context.Context) error

func (*PluginManager) Serve

func (m *PluginManager) Serve()

func (*PluginManager) ShouldFetchRateLimiterDefs

func (m *PluginManager) ShouldFetchRateLimiterDefs() bool

func (*PluginManager) Shutdown

func (m *PluginManager) Shutdown(*pb.ShutdownRequest) (resp *pb.ShutdownResponse, err error)

func (*PluginManager) UpdatePluginColumnsTable

func (m *PluginManager) UpdatePluginColumnsTable(ctx context.Context, update map[string]*proto.Schema, delete []string) error

type PluginMessageServer

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

func NewPluginMessageServer

func NewPluginMessageServer(pluginManager *PluginManager) (*PluginMessageServer, error)

func (*PluginMessageServer) AddConnection

func (m *PluginMessageServer) AddConnection(pluginClient *sdkgrpc.PluginClient, pluginName string, connectionNames ...string) error

Directories

Path Synopsis
shared
Package shared contains shared data between the host and plugins.
Package shared contains shared data between the host and plugins.

Jump to

Keyboard shortcuts

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