gxetcd

package
v1.11.5 Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2021 License: Apache-2.0 Imports: 8 Imported by: 23

Documentation

Index

Constants

View Source
const (
	// ConnDelay connection delay
	ConnDelay = 3
	// MaxFailTimes max failure times
	MaxFailTimes = 15
	// RegistryETCDV3Client client Name
	RegistryETCDV3Client = "etcd registry"
	// MetadataETCDV3Client client Name
	MetadataETCDV3Client = "etcd metadata"
)

Variables

View Source
var (
	// ErrNilETCDV3Client raw client nil
	ErrNilETCDV3Client = perrors.New("etcd raw client is nil") // full describe the ERR
	// ErrKVPairNotFound not found key
	ErrKVPairNotFound = perrors.New("k/v pair not found")
)

Functions

This section is empty.

Types

type Client

type Client struct {
	Wait sync.WaitGroup
	// contains filtered or unexported fields
}

Client represents etcd client Configuration

func NewClient

func NewClient(name string, endpoints []string, timeout time.Duration, heartbeat int) (*Client, error)

NewClient create a client instance with name, endpoints etc.

func NewConfigClient

func NewConfigClient(opts ...Option) *Client

NewConfigClient create new Client

func (*Client) CleanKV

func (c *Client) CleanKV() error

CleanKV delete all key and value

func (*Client) Close

func (c *Client) Close()

Close close client

func (*Client) Create

func (c *Client) Create(k string, v string) error

Create key value ...

func (*Client) Delete

func (c *Client) Delete(k string) error

Delete key

func (*Client) Done

func (c *Client) Done() <-chan struct{}

Done return exit chan

func (*Client) Get

func (c *Client) Get(k string) (string, error)

Get gets value by @k

func (*Client) GetChildren added in v1.11.3

func (c *Client) GetChildren(k string) ([]string, []string, error)

GetChildren return node children

func (*Client) GetChildrenKVList

func (c *Client) GetChildrenKVList(k string) ([]string, []string, error)

GetChildrenKVList gets children kv list by @k

func (*Client) GetCtx added in v1.11.3

func (c *Client) GetCtx() context.Context

GetCtx return client context

func (*Client) GetEndPoints added in v1.11.3

func (c *Client) GetEndPoints() []string

GetEndPoints return etcd endpoints

func (*Client) GetRawClient added in v1.11.3

func (c *Client) GetRawClient() *clientv3.Client

GetRawClient return etcd raw client

func (*Client) RegisterTemp

func (c *Client) RegisterTemp(k, v string) error

RegisterTemp registers a temporary node

func (*Client) Update

func (c *Client) Update(k, v string) error

Update key value ...

func (*Client) Valid

func (c *Client) Valid() bool

Valid check client

func (*Client) Watch

func (c *Client) Watch(k string) (clientv3.WatchChan, error)

Watch watches on spec key

func (*Client) WatchWithPrefix

func (c *Client) WatchWithPrefix(prefix string) (clientv3.WatchChan, error)

WatchWithPrefix watches on spec prefix

type Option

type Option func(*Options)

Option will define a function of handling Options

func WithEndpoints

func WithEndpoints(endpoints ...string) Option

WithEndpoints sets etcd client endpoints

func WithHeartbeat

func WithHeartbeat(heartbeat int) Option

WithHeartbeat sets etcd client heartbeat

func WithName

func WithName(name string) Option

WithName sets etcd client name

func WithTimeout

func WithTimeout(timeout time.Duration) Option

WithTimeout sets etcd client timeout

type Options

type Options struct {
	// Name etcd server name
	Name string
	// Endpoints etcd endpoints
	Endpoints []string
	// Client etcd client
	Client *Client
	// Timeout timeout
	Timeout time.Duration
	// Heartbeat second
	Heartbeat int
}

Options client configuration

Jump to

Keyboard shortcuts

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