Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(189)

Side by Side Diff: filter/featureBreaker/user.go

Issue 2302743002: Interface update, per-method Contexts. (Closed)
Patch Set: Lightning talk licenses. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « filter/featureBreaker/tq.go ('k') | filter/txnBuf/context.go » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The LUCI Authors. All rights reserved. 1 // Copyright 2015 The LUCI Authors. All rights reserved.
2 // Use of this source code is governed under the Apache License, Version 2.0 2 // Use of this source code is governed under the Apache License, Version 2.0
3 // that can be 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 "github.com/luci/gae/service/user" 8 "github.com/luci/gae/service/user"
9 "golang.org/x/net/context" 9 "golang.org/x/net/context"
10 ) 10 )
11 11
12 type userState struct { 12 type userState struct {
13 *state 13 *state
14 14
15 » user.Interface 15 » user.RawInterface
16 } 16 }
17 17
18 var _ user.Interface = (*userState)(nil) 18 var _ user.RawInterface = (*userState)(nil)
19 19
20 func (u *userState) CurrentOAuth(scopes ...string) (ret *user.User, err error) { 20 func (u *userState) CurrentOAuth(scopes ...string) (ret *user.User, err error) {
21 err = u.run(func() (err error) { 21 err = u.run(func() (err error) {
22 » » ret, err = u.Interface.CurrentOAuth(scopes...) 22 » » ret, err = u.RawInterface.CurrentOAuth(scopes...)
23 return 23 return
24 }) 24 })
25 return 25 return
26 } 26 }
27 27
28 func (u *userState) LoginURL(dest string) (ret string, err error) { 28 func (u *userState) LoginURL(dest string) (ret string, err error) {
29 err = u.run(func() (err error) { 29 err = u.run(func() (err error) {
30 » » ret, err = u.Interface.LoginURL(dest) 30 » » ret, err = u.RawInterface.LoginURL(dest)
31 return 31 return
32 }) 32 })
33 return 33 return
34 } 34 }
35 35
36 func (u *userState) LoginURLFederated(dest, identity string) (ret string, err er ror) { 36 func (u *userState) LoginURLFederated(dest, identity string) (ret string, err er ror) {
37 err = u.run(func() (err error) { 37 err = u.run(func() (err error) {
38 » » ret, err = u.Interface.LoginURLFederated(dest, identity) 38 » » ret, err = u.RawInterface.LoginURLFederated(dest, identity)
39 return 39 return
40 }) 40 })
41 return 41 return
42 } 42 }
43 43
44 func (u *userState) LogoutURL(dest string) (ret string, err error) { 44 func (u *userState) LogoutURL(dest string) (ret string, err error) {
45 err = u.run(func() (err error) { 45 err = u.run(func() (err error) {
46 » » ret, err = u.Interface.LogoutURL(dest) 46 » » ret, err = u.RawInterface.LogoutURL(dest)
47 return 47 return
48 }) 48 })
49 return 49 return
50 } 50 }
51 51
52 func (u *userState) OAuthConsumerKey() (ret string, err error) { 52 func (u *userState) OAuthConsumerKey() (ret string, err error) {
53 err = u.run(func() (err error) { 53 err = u.run(func() (err error) {
54 » » ret, err = u.Interface.OAuthConsumerKey() 54 » » ret, err = u.RawInterface.OAuthConsumerKey()
55 return 55 return
56 }) 56 })
57 return 57 return
58 } 58 }
59 59
60 // FilterUser installs a featureBreaker user filter in the context. 60 // FilterUser installs a featureBreaker user filter in the context.
61 func FilterUser(c context.Context, defaultError error) (context.Context, Feature Breaker) { 61 func FilterUser(c context.Context, defaultError error) (context.Context, Feature Breaker) {
62 state := newState(defaultError) 62 state := newState(defaultError)
63 » return user.AddFilters(c, func(ic context.Context, i user.Interface) use r.Interface { 63 » return user.AddFilters(c, func(ic context.Context, i user.RawInterface) user.RawInterface {
64 return &userState{state, i} 64 return &userState{state, i}
65 }), state 65 }), state
66 } 66 }
OLDNEW
« no previous file with comments | « filter/featureBreaker/tq.go ('k') | filter/txnBuf/context.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698