Index: filter/featureBreaker/tq.go |
diff --git a/filter/featureBreaker/tq.go b/filter/featureBreaker/tq.go |
index c5c84482c67e91159d8ae844530c8c16c2004df1..31d58d7f6f4add0ae9d9b63e87a7c4c5e3faf8e3 100644 |
--- a/filter/featureBreaker/tq.go |
+++ b/filter/featureBreaker/tq.go |
@@ -5,6 +5,8 @@ |
package featureBreaker |
import ( |
+ "time" |
+ |
"golang.org/x/net/context" |
tq "github.com/luci/gae/service/taskqueue" |
@@ -26,6 +28,32 @@ func (t *tqState) DeleteMulti(tasks []*tq.Task, queueName string, cb tq.RawCB) e |
return t.run(func() error { return t.tq.DeleteMulti(tasks, queueName, cb) }) |
} |
+func (t *tqState) Lease(maxTasks int, queueName string, leaseTime time.Duration) (tasks []*tq.Task, err error) { |
+ err = t.run(func() (err error) { |
+ tasks, err = t.tq.Lease(maxTasks, queueName, leaseTime) |
+ return |
+ }) |
+ if err != nil { |
+ tasks = nil |
+ } |
+ return |
+} |
+ |
+func (t *tqState) LeaseByTag(maxTasks int, queueName string, leaseTime time.Duration, tag string) (tasks []*tq.Task, err error) { |
+ err = t.run(func() (err error) { |
+ tasks, err = t.tq.LeaseByTag(maxTasks, queueName, leaseTime, tag) |
+ return |
+ }) |
+ if err != nil { |
+ tasks = nil |
+ } |
+ return |
+} |
+ |
+func (t *tqState) ModifyLease(task *tq.Task, queueName string, leaseTime time.Duration) error { |
+ return t.run(func() error { return t.tq.ModifyLease(task, queueName, leaseTime) }) |
+} |
+ |
func (t *tqState) Purge(queueName string) error { |
return t.run(func() error { return t.tq.Purge(queueName) }) |
} |