etcd

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Apr 29, 2024 License: LGPL-3.0 Imports: 26 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ETCDResolverScheme = "watermelonetcdv3"
)

Functions

func DefaultAllowFunc

func DefaultAllowFunc(query url.Values, attr etcd.NodeMeta, addr *resolver.Address) bool

func GetMetaAttributes

func GetMetaAttributes[T any](addr resolver.Address) (T, bool)

func MustSetupEtcdResolver

func MustSetupEtcdResolver() wresolver.Resolver

func NewEtcdResolver

func NewEtcdResolver[T gRPCAttributeComparable](client *clientv3.Client, af AllowFuncType[T]) wresolver.Resolver

func NewEtcdTarget

func NewEtcdTarget(org, ns, service string) resolver.Target

Types

type AllowFuncType

type AllowFuncType[T gRPCAttributeComparable] func(query url.Values, attr T, addr *resolver.Address) bool

type AsyncFinder

type AsyncFinder interface {
	GetCurrentResults() []resolver.Address
	ResolveNow(_ resolver.ResolveNowOptions)
	Close()
}

func MustSetupEtcdAsyncFinder

func MustSetupEtcdAsyncFinder(target resolver.Target, allowFunc AllowFuncType[etcd.NodeMeta]) AsyncFinder

func NewAsyncFinder

func NewAsyncFinder[T gRPCAttributeComparable](client *clientv3.Client, target resolver.Target, allowFunc AllowFuncType[T]) AsyncFinder

type Finder

type Finder[T gRPCAttributeComparable] struct {
	// contains filtered or unexported fields
}

func MustSetupEtcdFinder

func MustSetupEtcdFinder() *Finder[etcd.NodeMeta]

func NewFinder

func NewFinder[T gRPCAttributeComparable](client *clientv3.Client) *Finder[T]

func (*Finder[T]) FindAll

func (f *Finder[T]) FindAll(ctx context.Context, prefix string) (address []resolver.Address, config *wresolver.CustomizeServiceConfig, err error)

type ResolveMeta

type ResolveMeta struct {
	OrgID     string
	Region    string
	Namespace string
}

func DefaultResolveMeta

func DefaultResolveMeta() ResolveMeta

func (ResolveMeta) FullServiceName

func (r ResolveMeta) FullServiceName(srvName string) string

func (ResolveMeta) ProxyMetadata

func (r ResolveMeta) ProxyMetadata() metadata.MD

Jump to

Keyboard shortcuts

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