FindUserWithRefreshToken finds a user from the provided refresh token.
(tx *storage.Connection, token string)
| 276 | |
| 277 | // FindUserWithRefreshToken finds a user from the provided refresh token. |
| 278 | func FindUserWithRefreshToken(tx *storage.Connection, token string) (*User, *RefreshToken, error) { |
| 279 | refreshToken := &RefreshToken{} |
| 280 | if err := tx.Where("token = ?", token).First(refreshToken); err != nil { |
| 281 | if errors.Cause(err) == sql.ErrNoRows { |
| 282 | return nil, nil, RefreshTokenNotFoundError{} |
| 283 | } |
| 284 | return nil, nil, errors.Wrap(err, "error finding refresh token") |
| 285 | } |
| 286 | |
| 287 | user, err := findUser(tx, "id = ?", refreshToken.UserID) |
| 288 | if err != nil { |
| 289 | return nil, nil, err |
| 290 | } |
| 291 | |
| 292 | return user, refreshToken, nil |
| 293 | } |
| 294 | |
| 295 | // FindUsersInAudience finds users with the matching audience. |
| 296 | func FindUsersInAudience(tx *storage.Connection, instanceID uuid.UUID, aud string, pageParams *Pagination, sortParams *SortParams, filter string) ([]*User, error) { |
searching dependent graphs…