/
etcd.go
71 lines (54 loc) · 1.54 KB
/
etcd.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package goo_etcd
import (
goo_utils "github.com/liqiongtao/googo.io/goo-utils"
clientv3 "go.etcd.io/etcd/client/v3"
)
var __client *Client
func Init(conf Config) {
__client, _ = New(conf)
goo_utils.AsyncFunc(func() {
select {
case <-__client.ctx.Done():
__client.Close()
}
})
}
func Default() *Client {
return __client
}
func Set(key, val string) (resp *clientv3.PutResponse, err error) {
return __client.Set(key, val)
}
func SetWithPrevKV(key, val string) (resp *clientv3.PutResponse, err error) {
return __client.SetWithPrevKV(key, val)
}
func SetTTL(key, val string, ttl int64) (resp *clientv3.PutResponse, err error) {
return __client.SetTTL(key, val, ttl)
}
func SetTTLWithPrevKV(key, val string, ttl int64) (resp *clientv3.PutResponse, err error) {
return __client.SetTTLWithPrevKV(key, val, ttl)
}
func Get(key string, opts ...clientv3.OpOption) (rsp *clientv3.GetResponse, err error) {
return __client.Get(key, opts...)
}
func GetString(key string) string {
return __client.GetString(key)
}
func GetArray(key string) (data []string) {
return __client.GetArray(key)
}
func GetMap(key string) (data map[string]string) {
return __client.GetMap(key)
}
func Del(key string) (resp *clientv3.DeleteResponse, err error) {
return __client.Del(key)
}
func DelWithPrefix(key string) (resp *clientv3.DeleteResponse, err error) {
return __client.DelWithPrefix(key)
}
func RegisterService(key, val string) (err error) {
return __client.RegisterService(key, val)
}
func Watch(key string) <-chan []string {
return __client.Watch(key)
}