return err
}
+func (u *User) DeleteToken(ctx context.Context, svc string) error {
+ key := datastore.NewKey(ctx, "Token", svc, 0, u.key)
+ return datastore.Delete(ctx, key)
+}
+
func (u *User) OAuthClient(ctx context.Context, svc string, cfg *oauth2.Config) (*http.Client, error) {
key := datastore.NewKey(ctx, "Token", svc, 0, u.key)
}), nil
}
+func (u *User) String() string {
+ return u.Email
+}
+
type persistingTokenSource struct {
ctx context.Context
t *oauth2.Token