Add Pipeline to Cmdable.

This commit is contained in:
Vladimir Mihailenco 2016-09-27 09:24:14 +00:00
parent 1c402b7989
commit 0b706418d9
4 changed files with 9 additions and 2 deletions

View File

@ -39,6 +39,8 @@ type ClusterClient struct {
reloading uint32
}
var _ Cmdable = (*ClusterClient)(nil)
// NewClusterClient returns a Redis Cluster client as described in
// http://redis.io/topics/cluster-spec.
func NewClusterClient(opt *ClusterOptions) *ClusterClient {

View File

@ -41,6 +41,9 @@ func formatSec(dur time.Duration) string {
}
type Cmdable interface {
Pipeline() *Pipeline
Pipelined(fn func(*Pipeline) error) ([]Cmder, error)
Echo(message interface{}) *StringCmd
Ping() *StatusCmd
Quit() *StatusCmd
@ -247,8 +250,6 @@ func (c *cmdable) WrapProcess(createWrapper func(oldProcess func(cmd Cmder) erro
c.process = createWrapper(c.process)
}
var _ Cmdable = (*cmdable)(nil)
type statefulCmdable struct {
process func(cmd Cmder) error
}

View File

@ -150,6 +150,8 @@ type Client struct {
cmdable
}
var _ Cmdable = (*Client)(nil)
func newClient(opt *Options, pool pool.Pooler) *Client {
base := baseClient{opt: opt, connPool: pool}
client := &Client{

View File

@ -133,6 +133,8 @@ type Ring struct {
closed bool
}
var _ Cmdable = (*Ring)(nil)
func NewRing(opt *RingOptions) *Ring {
const nreplicas = 100
opt.init()