Skip to content

Commit 0fa29c2

Browse files
authored
Merge pull request #1 from Dainismo/feature/add_token_refresh_handler
Added token refresh callback
2 parents 4c91c17 + 3639b6c commit 0fa29c2

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

oauth2.go

+4
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,11 @@ func (s *reuseTokenSource) Token() (*Token, error) {
318318
return nil, err
319319
}
320320
t.expiryDelta = s.expiryDelta
321+
t.OnTokenRefresh = s.t.OnTokenRefresh
321322
s.t = t
323+
if t.OnTokenRefresh != nil {
324+
t.OnTokenRefresh(*t)
325+
}
322326
return t, nil
323327
}
324328

token.go

+4
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,10 @@ type Token struct {
4949
// mechanisms for that TokenSource will not be used.
5050
Expiry time.Time `json:"expiry,omitempty"`
5151

52+
// OnTokenRefresh is a function that's getting called whenever
53+
// the TokenSource refreshed the Token.
54+
OnTokenRefresh func(t Token)
55+
5256
// raw optionally contains extra metadata from the server
5357
// when updating a token.
5458
raw interface{}

0 commit comments

Comments
 (0)