| OLD | NEW | 
|---|
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The LUCI Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed under the Apache License, Version 2.0 | 
| 3 // found in the LICENSE file. | 3 // that can be found in the LICENSE file. | 
| 4 | 4 | 
| 5 package featureBreaker | 5 package featureBreaker | 
| 6 | 6 | 
| 7 import ( | 7 import ( | 
| 8         "golang.org/x/net/context" | 8         "golang.org/x/net/context" | 
| 9 | 9 | 
| 10         tq "github.com/luci/gae/service/taskqueue" | 10         tq "github.com/luci/gae/service/taskqueue" | 
| 11 ) | 11 ) | 
| 12 | 12 | 
| 13 type tqState struct { | 13 type tqState struct { | 
| (...skipping 24 matching lines...) Expand all  Loading... | 
| 38         return t.tq.Testable() | 38         return t.tq.Testable() | 
| 39 } | 39 } | 
| 40 | 40 | 
| 41 // FilterTQ installs a featureBreaker TaskQueue filter in the context. | 41 // FilterTQ installs a featureBreaker TaskQueue filter in the context. | 
| 42 func FilterTQ(c context.Context, defaultError error) (context.Context, FeatureBr
    eaker) { | 42 func FilterTQ(c context.Context, defaultError error) (context.Context, FeatureBr
    eaker) { | 
| 43         state := newState(defaultError) | 43         state := newState(defaultError) | 
| 44         return tq.AddRawFilters(c, func(ic context.Context, tq tq.RawInterface) 
    tq.RawInterface { | 44         return tq.AddRawFilters(c, func(ic context.Context, tq tq.RawInterface) 
    tq.RawInterface { | 
| 45                 return &tqState{state, tq} | 45                 return &tqState{state, tq} | 
| 46         }), state | 46         }), state | 
| 47 } | 47 } | 
| OLD | NEW | 
|---|