diff --git a/queue.go b/queue.go index 3a8511a..8885c5d 100644 --- a/queue.go +++ b/queue.go @@ -68,6 +68,12 @@ func (q *Queue) Poll() ([]*Pair, error) { return resp, err } +func (q *Queue) Len() (int, error) { + prefix := fmt.Sprintf("%s/", q.prefix) + resp, err := q.cli.GetPrefix(prefix, WithCountOnly()) + return resp, err +} + func (q *Queue) Watch(fn func(q *Queue, pair *Pair)) error { prefix := fmt.Sprintf("%s/", q.prefix) pairs, err := q.cli.GetPrefix(prefix, etcd.WithLimit(1), sort())