MCPcopy Create free account
hub / github.com/bytebase/bytebase / CreateOAuth2RefreshToken

Method CreateOAuth2RefreshToken

backend/store/oauth2_refresh_token.go:25–45  ·  view source on GitHub ↗
(ctx context.Context, create *OAuth2RefreshTokenMessage)

Source from the content-addressed store, hash-verified

23}
24
25func (s *Store) CreateOAuth2RefreshToken(ctx context.Context, create *OAuth2RefreshTokenMessage) (*OAuth2RefreshTokenMessage, error) {
26 var workspaceArg any
27 if create.Workspace != "" {
28 workspaceArg = create.Workspace
29 }
30
31 q := qb.Q().Space(`
32 INSERT INTO oauth2_refresh_token (token_hash, client_id, user_email, workspace, expires_at)
33 VALUES (?, ?, ?, ?, ?)
34 `, create.TokenHash, create.ClientID, create.UserEmail, workspaceArg, create.ExpiresAt)
35
36 query, args, err := q.ToSQL()
37 if err != nil {
38 return nil, err
39 }
40
41 if _, err := s.GetDB().ExecContext(ctx, query, args...); err != nil {
42 return nil, errors.Wrap(err, "failed to create OAuth2 refresh token")
43 }
44 return create, nil
45}
46
47func (s *Store) GetOAuth2RefreshToken(ctx context.Context, clientID, tokenHash string) (*OAuth2RefreshTokenMessage, error) {
48 q := qb.Q().Space(`

Callers 2

issueTokensMethod · 0.80

Calls 4

GetDBMethod · 0.95
QFunction · 0.92
SpaceMethod · 0.80
ToSQLMethod · 0.80

Tested by 1