initial import
This commit is contained in:
21
core/discov/internal/etcdclient.go
Normal file
21
core/discov/internal/etcdclient.go
Normal file
@@ -0,0 +1,21 @@
|
||||
//go:generate mockgen -package internal -destination etcdclient_mock.go -source etcdclient.go EtcdClient
|
||||
package internal
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"go.etcd.io/etcd/clientv3"
|
||||
"google.golang.org/grpc"
|
||||
)
|
||||
|
||||
type EtcdClient interface {
|
||||
ActiveConnection() *grpc.ClientConn
|
||||
Close() error
|
||||
Ctx() context.Context
|
||||
Get(ctx context.Context, key string, opts ...clientv3.OpOption) (*clientv3.GetResponse, error)
|
||||
Grant(ctx context.Context, ttl int64) (*clientv3.LeaseGrantResponse, error)
|
||||
KeepAlive(ctx context.Context, id clientv3.LeaseID) (<-chan *clientv3.LeaseKeepAliveResponse, error)
|
||||
Put(ctx context.Context, key, val string, opts ...clientv3.OpOption) (*clientv3.PutResponse, error)
|
||||
Revoke(ctx context.Context, id clientv3.LeaseID) (*clientv3.LeaseRevokeResponse, error)
|
||||
Watch(ctx context.Context, key string, opts ...clientv3.OpOption) clientv3.WatchChan
|
||||
}
|
||||
Reference in New Issue
Block a user