connection

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Jan 18, 2024 License: BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func IsShared

func IsShared(manager Manager) bool

func ManagerFactories

func ManagerFactories() map[string]ManagerFactory

func Managers

func Managers() map[string]Manager

func ReconfigureConnections

func ReconfigureConnections(connections map[string]*Config) (err error)

func RegisterManager

func RegisterManager(connectionId string, manager Manager) error

func RegisterManagerFactory

func RegisterManagerFactory(factory ManagerFactory) error

func ReplaceManagerFactory

func ReplaceManagerFactory(ref string, factory ManagerFactory) error

func ResolveConfig

func ResolveConfig(config *Config) error

Types

type Config

type Config struct {
	Ref      string                 `json:"ref,omitempty"`
	Settings map[string]interface{} `json:"settings,omitempty"`
	// contains filtered or unexported fields
}

func ToConfig

func ToConfig(config map[string]interface{}) (*Config, error)

type Manager

type Manager interface {
	Type() string

	GetConnection() interface{}

	ReleaseConnection(connection interface{})
}

func GetManager

func GetManager(id string) Manager

func NewManager

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

func NewSharedManager

func NewSharedManager(id string, config *Config) (Manager, error)

type ManagerFactory

type ManagerFactory interface {
	Type() string

	NewManager(settings map[string]interface{}) (Manager, error)
}

func GetManagerFactory

func GetManagerFactory(ref string) ManagerFactory

type ReconfigurableConnection

type ReconfigurableConnection interface {
	Reconfigure(settings map[string]interface{}) error
}

ReconfigurableConnection allows dynamic update for existing connection instance

Jump to

Keyboard shortcuts

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