Documentation ¶
Index ¶
- Constants
- Variables
- func HandleClientRestart(r clientFacade)
- func ValidateClient(container clientFacade, opts ...Option) error
- type Client
- func (c *Client) CleanKV() error
- func (c *Client) Close()
- func (c *Client) Create(k string, v string) error
- func (c *Client) Delete(k string) error
- func (c *Client) Done() <-chan struct{}
- func (c *Client) Get(k string) (string, error)
- func (c *Client) GetChildrenKVList(k string) ([]string, []string, error)
- func (c *Client) RegisterTemp(k, v string) error
- func (c *Client) Update(k, v string) error
- func (c *Client) Valid() bool
- func (c *Client) Watch(k string) (clientv3.WatchChan, error)
- func (c *Client) WatchWithPrefix(prefix string) (clientv3.WatchChan, error)
- type EventListener
- func (l *EventListener) Close()
- func (l *EventListener) ListenServiceEvent(key string, listener remoting.DataListener)
- func (l *EventListener) ListenServiceNodeEvent(key string, listener ...remoting.DataListener) bool
- func (l *EventListener) ListenServiceNodeEventWithPrefix(prefix string, listener ...remoting.DataListener)
- type Option
- type Options
Constants ¶
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 ¶
var ( // Defines related errors ErrNilETCDV3Client = perrors.New("etcd raw client is nil") // full describe the ERR ErrKVPairNotFound = perrors.New("k/v pair not found") )
Functions ¶
func HandleClientRestart ¶
func HandleClientRestart(r clientFacade)
HandleClientRestart keeps the connection between client and server
func ValidateClient ¶
ValidateClient validates client and sets options
Types ¶
type Client ¶
Client represents etcd client Configuration
func NewClient ¶ added in v1.5.0
func NewClient(name string, endpoints []string, timeout time.Duration, heartbeat int) (*Client, error)
nolint
func NewServiceDiscoveryClient ¶ added in v1.5.0
nolint
func (*Client) GetChildrenKVList ¶
GetChildrenKVList gets children kv list by @k
func (*Client) RegisterTemp ¶
RegisterTemp registers a temporary node
type EventListener ¶
type EventListener struct {
// contains filtered or unexported fields
}
nolint
func NewEventListener ¶
func NewEventListener(client *Client) *EventListener
NewEventListener returns a EventListener instance
func (*EventListener) ListenServiceEvent ¶
func (l *EventListener) ListenServiceEvent(key string, listener remoting.DataListener)
ListenServiceEvent is invoked by etcdv3 ConsumerRegistry::Registe/ etcdv3 ConsumerRegistry::get/etcdv3 ConsumerRegistry::getListener registry.go:Listen -> listenServiceEvent -> listenDirEvent -> listenServiceNodeEvent
| --------> listenServiceNodeEvent
func (*EventListener) ListenServiceNodeEvent ¶
func (l *EventListener) ListenServiceNodeEvent(key string, listener ...remoting.DataListener) bool
listenServiceNodeEvent Listen on a spec key this method will return true when spec key deleted, this method will return false when deep layer connection lose
func (*EventListener) ListenServiceNodeEventWithPrefix ¶
func (l *EventListener) ListenServiceNodeEventWithPrefix(prefix string, listener ...remoting.DataListener)
ListenServiceNodeEventWithPrefix listens on a set of key with spec prefix
type Option ¶
type Option func(*Options)
Option will define a function of handling Options
func WithEndpoints ¶
WithEndpoints sets etcd client endpoints
func WithHeartbeat ¶
WithHeartbeat sets etcd client heartbeat
func WithTimeout ¶
WithTimeout sets etcd client timeout