Documentation
¶
Index ¶
- func BuildGrpcSubscriptions(cfg *conf.Subscriptions, discovery registry.Discovery, ...) (map[string]*ggrpc.ClientConn, error)
- func BuildGrpcSubscriptionsLegacy(cfg *conf.Subscriptions, discovery registry.Discovery, ...) (map[string]*ggrpc.ClientConn, error)
- func BuildGrpcSubscriptionsWithPlugin(cfg *conf.Subscriptions, discovery registry.Discovery, ...) (map[string]*ggrpc.ClientConn, error)
- func CloseGrpcConnection(serviceName string, pluginManager interface{}) error
- func CreateGrpcConnectionWithConfig(config interface{}, pluginManager interface{}) (*ggrpc.ClientConn, error)
- func GetGrpcClientPlugin(pluginManager interface{}) (interface{}, error)
- func GetGrpcConnection(serviceName string, pluginManager interface{}) (*ggrpc.ClientConn, error)
- func GetGrpcConnectionCount(pluginManager interface{}) (int, error)
- func GetGrpcConnectionStatus(pluginManager interface{}) (map[string]string, error)
- func GetGrpcMetrics(pluginManager interface{}) (*interface{}, error)
- func HealthCheckGrpcConnections(pluginManager interface{}) error
- func InitializeGrpcClientIntegration(pluginManager interface{}) error
- type GrpcSubscribe
- type Option
- func EnableTls() Option
- func Required() Option
- func WithConfigProvider(f func(name, group string) (config.Source, error)) Option
- func WithDefaultRootCA(f func() []byte) Option
- func WithDiscovery(discovery registry.Discovery) Option
- func WithNodeRouterFactory(f func(string) selector.NodeFilter) Option
- func WithRootCAFileGroup(caGroup string) Option
- func WithRootCAFileName(caName string) Option
- func WithServiceName(svcName string) Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildGrpcSubscriptions ¶
func BuildGrpcSubscriptions(cfg *conf.Subscriptions, discovery registry.Discovery, routerFactory func(string) selector.NodeFilter) (map[string]*ggrpc.ClientConn, error)
BuildGrpcSubscriptions builds gRPC subscription connections based on configuration Returns map where key is service name, value is reusable gRPC ClientConn
func BuildGrpcSubscriptionsLegacy ¶
func BuildGrpcSubscriptionsLegacy(cfg *conf.Subscriptions, discovery registry.Discovery, routerFactory func(string) selector.NodeFilter) (map[string]*ggrpc.ClientConn, error)
BuildGrpcSubscriptionsLegacy builds gRPC subscription connections using the legacy method This is kept for backward compatibility
func BuildGrpcSubscriptionsWithPlugin ¶
func BuildGrpcSubscriptionsWithPlugin(cfg *conf.Subscriptions, discovery registry.Discovery, routerFactory func(string) selector.NodeFilter, pluginManager interface{}) (map[string]*ggrpc.ClientConn, error)
BuildGrpcSubscriptionsWithPlugin builds gRPC subscription connections using the gRPC client plugin This is the new integrated version that uses the gRPC client plugin
func CloseGrpcConnection ¶
CloseGrpcConnection closes a gRPC connection for a specific service
func CreateGrpcConnectionWithConfig ¶
func CreateGrpcConnectionWithConfig(config interface{}, pluginManager interface{}) (*ggrpc.ClientConn, error)
CreateGrpcConnectionWithConfig creates a gRPC connection with custom configuration
func GetGrpcClientPlugin ¶
func GetGrpcClientPlugin(pluginManager interface{}) (interface{}, error)
GetGrpcClientPlugin returns the gRPC client plugin instance
func GetGrpcConnection ¶
func GetGrpcConnection(serviceName string, pluginManager interface{}) (*ggrpc.ClientConn, error)
GetGrpcConnection gets a gRPC connection for a specific service using the plugin
func GetGrpcConnectionCount ¶
GetGrpcConnectionCount returns the number of active gRPC connections
func GetGrpcConnectionStatus ¶
GetGrpcConnectionStatus returns the status of all gRPC connections
func GetGrpcMetrics ¶
func GetGrpcMetrics(pluginManager interface{}) (*interface{}, error)
GetGrpcMetrics returns gRPC client metrics
func HealthCheckGrpcConnections ¶
func HealthCheckGrpcConnections(pluginManager interface{}) error
HealthCheckGrpcConnections performs health check on all gRPC connections
func InitializeGrpcClientIntegration ¶
func InitializeGrpcClientIntegration(pluginManager interface{}) error
InitializeGrpcClientIntegration initializes the gRPC client integration This should be called during application startup
Types ¶
type GrpcSubscribe ¶
type GrpcSubscribe struct {
// contains filtered or unexported fields
}
GrpcSubscribe represents a struct for subscribing to GRPC services. Contains service name, service discovery instance, TLS enablement, root CA filename and file group information.
func NewGrpcSubscribe ¶
func NewGrpcSubscribe(opts ...Option) *GrpcSubscribe
NewGrpcSubscribe creates a new GrpcSubscribe instance using the provided options. If no options are provided, default configuration will be used.
func (*GrpcSubscribe) Subscribe ¶
func (g *GrpcSubscribe) Subscribe() *gGrpc.ClientConn
Subscribe subscribes to the specified GRPC service and returns a gGrpc.ClientConn connection instance. Returns nil if service name is empty.
type Option ¶
type Option func(o *GrpcSubscribe)
Option defines a function type for configuring GrpcSubscribe instances.
func EnableTls ¶
func EnableTls() Option
EnableTls returns an Option function for enabling TLS encryption.
func Required ¶
func Required() Option
Required returns an Option function for setting the service as a strongly dependent upstream service.
func WithConfigProvider ¶
WithConfigProvider injects configuration source provider (name, group) -> config.Source
func WithDefaultRootCA ¶
WithDefaultRootCA injects default RootCA provider
func WithDiscovery ¶
WithDiscovery returns an Option function for setting the service discovery instance.
func WithNodeRouterFactory ¶
func WithNodeRouterFactory(f func(string) selector.NodeFilter) Option
WithNodeRouterFactory injects node router factory (optional)
func WithRootCAFileGroup ¶
WithRootCAFileGroup returns an Option function for setting the group that the root CA certificate file belongs to.
func WithRootCAFileName ¶
WithRootCAFileName returns an Option function for setting the root CA certificate filename.
func WithServiceName ¶
WithServiceName returns an Option function for setting the name of the GRPC service to subscribe to.